如果用户已登录,则显示/隐藏某些内容

时间:2015-07-27 作者:theHubi

我想在页面加载时检查用户是否登录,并隐藏我相应编程的登录掩码。我使用上述登录掩码而不是重定向到WordPress标准登录是有原因的。

想法是使用函数。php:

if ( is_user_logged_in() ) {
    echo \'<li id="text-2" style="display:none;">\';
} else {
    echo \'<li id="text-2">\'; }
这段代码可以工作,但我的页面在那之后会停止加载。如果我将整个内容打包到一个函数中,我会得到一个错误-Parse error has been resolved by Answer01 by Brad Dalton.

长话短说:How do I show/hide certain elements depending on whether a user is logged in or not?

edit01: 以下是我在上面发布的代码之前的部分:

<?php

function modify_user_contact_methods($user_contact) {
    // Add new fields
    $user_contact[\'uidnumber\'] = \'UID-Nummer\';
    return $user_contact;
}

add_filter(\'user_contactmethods\', \'modify_user_contact_methods\');

?>
<?php
if ( is_user_logged_in() ) {
    echo \'<li id="text-2" style="display:none;">\';
} else {
    echo \'<li id="text-2">\';
 }
?>
edit02: 我已尝试将下面提供的代码与action\\u挂钩一起使用:

add_action( \'loop_start\', \'loginCheck\' );
function loginCheck() {
if ( is_user_logged_in() ) {
    echo \'<li id="text-2" class="hidden">\';
} else {
    echo \'<li id="text-2">\';
 }
}
但现在页面看起来是这样的:-solved in edit03

edit03: 我使用了一种临时变通方法,将loop\\u start切换为loop\\u end。然而,正如我前面所说的,我要隐藏的部分仍在显示中。

edit04: WP\\U调试。。让我想想no relevant finding related to the problem

edit05: So here\'s the summary of the current situation:

页面正在加载,显示所有元素,请检查

以下是该网站的链接:easy2work.at

我想要的是在用户登录后隐藏“Firmen Login | Anmelden”,并在上面显示其他准备实现的内容。

1 个回复
最合适的回答,由SO网友:Brad Dalton 整理而成

除非包含挂钩,否则您的代码无法在主题函数文件中工作。

尝试以下操作:

add_action( \'loop_start\', \'your_function\' );
function your_function() {

if ( is_user_logged_in() ) {
    echo \'<li id="text-2" class="hide">\';
} else {
    echo \'<li id="text-2">\'; 
}}

结束

相关推荐

Modify a plugin's content

我正在使用Mooberry Book Manager 它的网格上有一个钩子mbdb_book_grid_after_link 我创建了一个插件,以便在网格中显示其他内容,这是非常基本的<?php /* Plugin Name: jw-book-enchance */ defined( \'ABSPATH\' ) or die( \'No script kiddies please!\' ); function addOptions($post_id)