在定义挂钩的函数中使用IF条件

时间:2019-07-30 09:11:59

标签: php wordpress function

我是PHP新手。我正在尝试在函数内使用IF条件。该函数最初包含一个钩子,该钩子在没有IF条件的情况下也能很好地工作,但是我需要IF条件才能将此钩子仅显示给未登录的站点访问者。

请问我的代码有什么问题?

我已经能够在模板中显示该功能,而没有任何问题。但是应该只向注销的用户显示该功能,而我尝试添加IF条件来实现此目的,但无济于事。

function add_signup_notice_after_excerpt_two() 
{
    if ( !is_user_logged_in() ) {
        echo '//Some HTML'
    }; 
    else{
    };

    add_action( 'signup_notice_after_excerpt_two', 'add_signup_notice_after_excerpt_two', 5 );
}

我希望该钩子在模板中使用时以IF条件显示HTML代码,但不会显示。但是,该钩子可以在没有条件的情况下在模板中工作。

1 个答案:

答案 0 :(得分:0)

尝试以下代码:

function add_signup_notice_after_excerpt_two() 
{
    if ( !is_user_logged_in() ) {
        echo 'Some HTML'; } 
    else{

    }
}

add_action('wp','add_signup_notice_after_excerpt_two', 5 );

错误是,您已经创建了一个函数,但是没有将add_signup_notice_after_excerpt_two()绑定到特定的action上,并且在您的情况下add_action()必须在该函数之外。 而且您的代码中存在一些语法错误。

浏览以下链接。

如何添加actoin:https://developer.wordpress.org/reference/functions/add_action/

各种动作挂钩:https://codex.wordpress.org/Plugin_API/Action_Reference