解决WordPress文章密码保护不起作用

11
505

好久没动博客了,只是看下留言,然后回复。其实我这几天在间接性的在重写当前的主题,主要是修复一些bugs和增加一些功能。

前天晚上在重写的时候,发现主题的文章密码保护有些问题,一是在首页、分类目录和归类下面的密码保护不起作用;而是在single页面虽然起作用,可是css表现极为不佳,很不好看。

于是查了查codex,发现在WordPress的loop里面,the_content从get_the_contet获取文章内容,而get_the_content则判断是否文章为密码保护。但是同样是直接通过数据库获取文章内容,同样是loop,但是只有single页面密码保护才作用,所以找了半天原因。

主要的函数是 <?php post_password_required( $post ); ?>,所以只有手动在loop里面加入判断,才解决了上述问题。来看code,只是将默认的 <?php the_content(); ?>替换为如下:

密码框的样式也显示正常了。

11 条留言

  1. 密码保护的文章发现能被Google搜索到内容,是哪里出问题了吗。要怎么才能防止被搜索引擎收录呢。

    • 不知道你使用的是WordPress自带主题还是第三方主题。多半应该是第三方主题,考虑下面几点:1.feed是否输出了有密码的文章;2.自己直接调用数据库输出文章,少了判断条件。应该加上post_password条件。

      3.之前没有加密码导致google收录,这种可以提交申请删除。

  2. 我碰到了类似的问题,就是加密码后,文章是可以保护,但输入密码后,页面提示“互联提醒您无法找到该页”,我是菜鸟,请高手指教。

    • 互联提醒您无法找到该页? 你用的是哪里的空间?你换为wordpress默认的主题试试,不行的话,就把loop的代码贴出来。

留言

留言不能为空
怎么称呼您?

验证码 *