首页 / WordPress建站 / 基础教程 / WordPress 更改文章密码保护后显示的提示内容
Loading收藏2

WordPress 有一个密码保护功能,你可以在文章和页面的编辑界面看到设置选项:

password-protected-1_wpdaxue_com

设置了密码后,你就可以在前台看到如下提示内容:

password-protected_wpdaxue_com

本文的目的就是要修改这个提示内容,核心函数如下(添加到当前主题的 functions.php 即可):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/**
 * WordPress 更改文章密码保护后显示的提示内容
 * https://www.wpdaxue.com/change-password-protected-text.html
 */
function password_protected_change( $content ) {
    global $post;
    if ( ! empty( $post->post_password ) && stripslashes( $_COOKIE['wp-postpass_'.COOKIEHASH] ) != $post->post_password ) {
        $output = '
 
        <form action="' . get_option( 'siteurl' ) . '/wp-pass.php" method="post">
            '.__( "这是一篇受密码保护的文章,您需要提供访问密码:" ).'
 
            <label for="post_password">密码:</label>
            <input name="post_password" class="input" type="password" size="20" />
            <input type="submit" name="Submit" class="button" value="' . __( "提交" ) . '" />
 
        </form>
 
        ';
        return $output;
    } else {
        return $content;
    }
}
add_filter( 'the_content','password_protected_change' );

代码先判断文章是否有密码保护,并且当前访问者的浏览器是否有输入过正确密码的 cookie 记录,如果有密码保护并且没有cookie 记录,就显示密码保护提示内容,否则显示文章内容。

所以,如果你要修改提示内容,只需要修改 $output 部分的内容即可,比如修改“这是一篇受密码保护的文章,您需要提供访问密码:”等等。

代码参考:http://code.tutsplus.com/tutorials/quick-tip-changing-the-password-protected-text-in-wordpress–cms-21042

你可能还喜欢

12 条评论

    1. 会了哈,给form添加一个id,然后对这个id进行css就好了,

      可以吧整段from内容复制到新建网页,然后修改添加样式等等就方便容易了。

      文章内的代码,要修改两处,在留言里面看到的。总结一下。

      add_filter( ‘the_content’,’password_protected_change’ );

      这里不要添加到the_content,要添加到the_password_form

      将wp-pass.php更改为wp-login.php?action=postpass

      送给后来看到并需要的人

  1. add_filter( ‘the_content’,’password_protected_change’ );

    这里不要添加到the_content,要添加到the_password_form

  2. 博主你好,现在的WordPress里面没有wp-pass.php这个文件了,如果还使用这个代码,在输入密码后会提示404,所以请问怎么修改这个代码。谢谢

    1. 将wp-pass.php更改为wp-login.php?action=postpass就可以了。如果你更改过后台,那么你更改为你的后台的这个文件。据我发现,只要你使用加密服务,那你的后台地址是暴露无疑,不管你的后台地址隐藏的多少深。这样只有两者取一了。我不懂WP所以不知道怎么解决,还希望高人指点。

发表评论

我们是靠谱的WordPress建站团队!

专业承接WordPress网站建设及运维、WordPress主题和插件开发、汉化、安装等服务

联系电话:189-3334-7774

查看所有服务项目

视频教程: 点击联系我们
建站咨询: 点击联系我们
售后支持: 点击联系我们
广告合作: 点击联系我们

建站咨询:189-3334-7774

固定电话:0773-8282-430

售后支持:133-0773-9152

微信扫一扫,联系我们