2015-05-21 42 views
2

我正在使用名为“UserPro”的插件。我也在我的菜单中使用一个功能来显示“登录”或登录“注销”。WordPress登录并使用菜单中的UserPro注销

function autov_add_loginout_navitem($items) { 
    $login_item = '<li class="login">'.wp_loginout($_SERVER['REQUEST_URI'], false).'</li>'; 
    $items .= $login_item; 
    return $items; 
} 
add_filter('wp_nav_menu_account_items', 'autov_add_loginout_navitem'); 

插件有一个很短的代码

<?php echo do_shortcode('[userpro template=login]'); ?> 

我怎样才能在第一代码实现这一点?

(这放在里面的functions.php在我的孩子主题)

回答

0

这简码需要在一个页面。创建一个页面并添加短代码。从那里你可以链接到登录页面。注销链接将保持不变。

function autov_add_loginout_navitem($items) { 
    $format = '<a href="%s">%s</a>'; 
    $link = is_user_logged_in() 
     ? sprintf($format, wp_logout_url(), 'Logout') 
     : sprintf($format, home_url('login'), 'Login'); 
    $login_item = '<li class="login">'.$link.'</li>'; 
    $items .= $login_item; 
    return $items; 
} 
add_filter('wp_nav_menu_account_items', 'autov_add_loginout_navitem'); 

上面的例子假设你已经创建了一个页面与塞login并添加您的简码出现。请注意,wp_logout_url函数可以将重定向链接作为参数,如果要在注销后将某个用户发送到某个位置,则应该指定该参数。

+0

工作完美非常感谢你! – Strings

0

我搜索了一个解决这个长一段时间,但我不能让上面的代码为我工作,所以我会分享我的人解决谁需要一个快速解决方案,如果你不能得到的代码工作:

创建“登录”和“注销”页面,并添加简码[userpro模板=登录]两个网页。

安装的WordPress插件 “nav menu roles”。一旦它被激活,去外观>菜单。将页面'登录'和'注销'添加到菜单中。

在'登录'菜单项上,将“显示模式”设置为“注销用户”。 使'注销'菜单项“显示模式”设置为“登录用户”。

当您的访问者点击导航登录,他们将被引导到一个页面输入用户名和密码。当他们点击注销时,他们会自动注销并返回到您的主页。