将代码添加到unctions.php以根据登录状态有选择地显示样式有什么问题

时间:2019-09-13 作者:Vanessa Harris

当我尝试向函数添加以下代码时。php我不断收到错误(网站宕机,似乎表明有php错误)。我一直盯着这段代码看,似乎不明白为什么它在添加到函数时会出现错误。php。

对我应该改变什么有什么建议吗?谢谢

function hide_prompt() {
   if(is_user_logged_in()) {
    echo \'
    <style> .app { display: none!important; } </style>   
    \';  
   }
}
add_action(\'wp_footer\', \'hide_prompt\');

1 个回复
SO网友:user3135691

你用错了钩子,你用错了方法。很抱歉澄清。

在页脚中添加样式表根本不是好的样式,而是初学者的错误。Have a look at loading scripts correctly.

您需要将该样式规则添加到登录页面/挂钩的html头部。

由于要编辑登录表单,因此需要使用的正确挂钩是login_head

参见法典:Login Hooks

另请参见:Login Head

类似以下内容(functions.php):

function se_css_output_hide_promt() { ?>
    <style type="text/css" id="se-answer-customized-css">
        <?php
        //switch to php to check the login status, add css when true
        if(is_user_logged_in()): ?>

        .app { display: none!important; }

        <?php endif; ?>
    </style>
<?php }
add_action(\'login_head\', \'se_css_output_hide_promt\');
我敢打赌!如果你这样做,就不再需要“重要”。此css将在结尾之前添加html-head, 非常接近您的html。意思是你的!可能不再需要“重要”。

相关推荐

初学者问题:通过管理Web界面访问Functions.php以导入自定义帖子类型?

是否可以访问这些功能。php文件仅仅使用管理web界面?我正在尝试访问以前创建的(手动编码的)自定义帖子类型,我不得不跳过很多障碍,因为我无法访问函数中的代码。php文件。我已经浏览了很多帮助页面,但建议的步骤似乎总是涉及到函数。php文件(我无法访问)或使用插件中的导入/导出工具,该插件首先创建了自定义帖子类型(据我所知,没有使用任何插件)。这似乎是一个非常基本的问题,但我一辈子都想不出来。任何帮助都将不胜感激!