过去两天我一直在努力学习如何在我网站的顶部菜单栏中添加一个不错的登录/注销/注册字段。我刚刚开始熟悉编辑。我在stackoverflow中挖出了这段代码。我喜欢它看起来的样子,我希望稍微调整一下。
/* Custom Login Menu Field */
add_filter('wp_nav_menu_items', 'add_login_logout_link', 10, 2);
function add_login_logout_link($items, $args) {
// start buffering
ob_start();
// this is the actual form function
wp_login_form($args); // $args optional see below ..
// get buffering
$loginoutform = ob_get_contents();
// clean buffering
ob_end_clean();
$items .= $loginoutform ; // concatenate buffering with items ...
return $items;
}
我想要做的是在顶部/主菜单栏的中间水平居中的登录字段区域。正如你所看到的那样,它目前一路向右,并延伸到整个事物。当我使用它时 - 它会登录,但在登录时不会切换到“注销”选项。
如果有人知道如何添加或修改我的初学者代码,我将非常感激。最好的问候 - Cypher。
网站:cypherbeats.com 主题:贾维斯(最新) 代码已添加到functions.php
中答案 0 :(得分:0)
在撰写本文时,我看不到您说的这个登录栏。所以不能说你的代码是否有效。
在您的代码中,您可以使用函数Exercises
作为条件来检查访问者是否已登录。因此,您可以使用它来决定是否输出登录或注销代码。 Exercises
功能似乎显示注销按钮。所以像这样的东西可以工作:
is_user_logged_in()
警告我还没有对此进行测试,这只是一个让你开始的建议。
这是一种可能方便的替代方法。首先安装这个插件: https://wordpress.org/plugins/nav-menu-roles/然后创建一个登录链接,该链接仅对已注销的用户可见,并且只有登录用户可以看到注销链接。然后你可以写一些javascript,当你按下登录按钮时,登录表单会在灯箱中弹出。我在https://ptofchoice.com.au/
使用这种方法