这段代码定义了一个 WordPress Shortcode “vip”,用于实现部分内容登录可见的功能。如果用户已登录,将显示对应的内容,否则将显示一条提示消息,提示用户需要登录后才能查看内容,并提供一个登录链接。样式方面,提示消息使用带有居中文本和虚线边框的 <div> 元素,而登录链接使用带有下划线的蓝色文本。
代码
1.在主题的functions.php文件添加以下代码:
// 部分文章内容登录可见——开始
function login_to_read($atts, $content=null) {
extract(shortcode_atts(array(
"notice" => '<div style="text-align: center; border: 1px dashed #ccc; padding: 10px; margin-bottom: 10px;">温馨提示:此处内容需要<a style="color: blue; text-decoration: underline;" title="登录后可见" href="#respond">登录</a>后才能查看!</div>',
"login_url" => wp_login_url()
), $atts));
if (is_user_logged_in() && !is_null($content) && !is_feed()) {
return '<div style="background-color: #f8f8f8; padding: 10px;">' . $content . '</div>';
}
$notice_with_custom_login = str_replace('#respond', $login_url, $notice);
return '<div style="background-color: #f8f8f8; padding: 10px;">' . $notice_with_custom_login . '</div>';
}
add_shortcode('vip', 'login_to_read');
使用方法:
在你想要限制访问的内容前后使用短代码包围。效果如本文所见!
如:
[vip]
我是隐藏的部分文章内容!
[/vip]