首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[函数]WordPress如何非插件实现用户需登录后才能查看网站文章内容?

发布于 2024-11-05 14:34:09
0
150

要在WordPress中实现用户需要登录后才能查看网站文章内容,您可以通过自定义代码来实现,而不依赖于插件。以下是一种可以实现这一功能的方法:1.在主题的functions.php文件中添加以下代码/...

要在WordPress中实现用户需要登录后才能查看网站文章内容,您可以通过自定义代码来实现,而不依赖于插件。以下是一种可以实现这一功能的方法:

1.在主题的functions.php文件中添加以下代码

// 检查用户是否登录,如果未登录则重定向到登录页面
function check_user_login() {
    if ( ! is_user_logged_in() ) {
        wp_redirect( wp_login_url() );
        exit;
    }
}
add_action( 'template_redirect', 'check_user_login' );

// 在文章内容前添加登录检查
function restrict_content_to_logged_in_users( $content ) {
    if ( ! is_user_logged_in() ) {
        $content = '请登录后查看文章内容';
    }
    return $content;
}
add_filter( 'the_content', 'restrict_content_to_logged_in_users' );

2.如何使用:

第一个函数check_user_login()用于检查用户是否登录,如果用户未登录,则重定向到登录页面。
第二个函数restrict_content_to_logged_in_users()用于在文章内容前添加登录检查,如果用户未登录,则显示提示信息而不是文章内容。
通过以上代码,您可以实现用户需要登录后才能查看网站文章内容,而不依赖插件。

请确保在修改主题文件之前备份您的主题文件,以防出现意外情况。

如果您需要进一步的帮助或有其他问题,请随时告诉我。

评论
一个月内的热帖推荐
鸟云
Lv.1普通用户

275

帖子

20

小组

225

积分

赞助商广告
站长交流