zoukankan      html  css  js  c++  java
  • 让WordPress的作者在后台只能看到自己的文章

    今天需要对WordPress后台进行调整,目的是为了只能让当前用户看见自己所发表的文章,而WordPress默认是登陆用户可以看到所有用户发表的文章。

    WordPress中的用户角色分的比较详细,作者这个角色刚好是能够发布文档并且能上传图片的角色,所以我们很多人都是让默认注册的用户角色为作者,可以这样一来,登录WordPress网站管理后台,能看到所有的文章,虽然不能评论,但是却可以浏览等操作,对于普通的登录用户,我们不能给他们看到太多的东西。

    我们需要做到的功能就是他们在WordPress后台,只能看到自己发布的文章和评论,其他人发布的他们就看不到。

    使用admin用户登录,

    第一种方法:(不推荐)

    将下面的代码复制到您的主题的functions.php中即可。

    function wpjam_parse_query_useronly( $wp_query ) {
        if ( strpos( $_SERVER[ 'REQUEST_URI' ], '/wp-admin/edit.php' ) !== false ) {
            if ( !current_user_can( 'add_user' ) ) {
                global $current_user;
                $wp_query->set( 'author', $current_user->id );
            }
        }
    }
    add_filter('parse_query', 'wpjam_parse_query_useronly' );

     注意:如果复制以上代码到function.php中,那么admin用户登录上以后,也只能看到admin发表的文章,并不能看到所有的文章。

    第二种方法:(推荐)

    这种方式可以保证admin用户登录后看到所有用户的文章,因为level_10代表的是admin用户

    function mypo_parse_query_useronly( $wp_query ) {
      if ( strpos( $_SERVER[ 'REQUEST_URI' ], '/wp-admin/edit.php' ) !== false ) {
        if ( !current_user_can( 'level_10' ) ) {
          global $current_user;
          $wp_query->set( 'author', $current_user->id );
        }
      }
    }
    add_filter('parse_query', 'mypo_parse_query_useronly' );

    第三种:(没试过)

      WP插件:Restrict Author Posting

  • 相关阅读:
    案例:推进GTID解决MySQL主主不同步问题
    idea 每次新建项目都需要重新配置maven的解决方案
    eclipse 配置maven
    maven 配置本地仓库、中央仓库、私库
    eclipse 安装lombok插件(详解)
    plsql 将表结构导出到excel中的两种方式
    ThreadPoolExecutor的用法
    MySQL 5.7 的SSL加密方法
    spring @Async 异步执行
    maven setting 文件配置
  • 原文地址:https://www.cnblogs.com/0xcafedaddy/p/5886021.html
Copyright © 2011-2022 走看看