对于WordPress多作者博客,如何让每个作者在后台只能浏览自己的文章?只需要将下面的代码添加到你主题的 functions.php 即可:
|
|
<span style="color: #000000; font-weight: bold;">function</span> mypo_parse_query_useronly<span style="color: #009900;">(</span> <span style="color: #000088;">$wp_query</span> <span style="color: #009900;">)</span> <span style="color: #009900;">{</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">(</span> <span style="color: #990000;">strpos</span><span style="color: #009900;">(</span> <span style="color: #000088;">$_SERVER</span><span style="color: #009900;">[</span> <span style="color: #0000ff;">'REQUEST_URI'</span> <span style="color: #009900;">]</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'/wp-admin/edit.php'</span> <span style="color: #009900;">)</span> <span style="color: #339933;">!==</span> <span style="color: #009900; font-weight: bold;">false</span> <span style="color: #009900;">)</span> <span style="color: #009900;">{</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">(</span> <span style="color: #339933;">!</span>current_user_can<span style="color: #009900;">(</span> <span style="color: #0000ff;">'manage_options'</span> <span style="color: #009900;">)</span> <span style="color: #009900;">)</span> <span style="color: #009900;">{</span> <span style="color: #000000; font-weight: bold;">global</span> <span style="color: #000088;">$current_user</span><span style="color: #339933;">;</span> <span style="color: #000088;">$wp_query</span><span style="color: #339933;">-></span><span style="color: #004000;">set</span><span style="color: #009900;">(</span> <span style="color: #0000ff;">'author'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$current_user</span><span style="color: #339933;">-></span><span style="color: #004000;">id</span> <span style="color: #009900;">)</span><span style="color: #339933;">;</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span> add_filter<span style="color: #009900;">(</span><span style="color: #0000ff;">'parse_query'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'mypo_parse_query_useronly'</span> <span style="color: #009900;">)</span><span style="color: #339933;">;</span> |
|
function mypo_parse_query_useronly( $wp_query ) {
if ( strpos( $_SERVER[ ‘REQUEST_URI’ ], ‘/wp-admin/edit.php’ ) !== false ) {
if ( !current_user_can( ‘manage_options’ ) ) {
global $current_user;
$wp_query->set( ‘author’, $current_user->id );
}
}
} add_filter(‘parse_query’, ‘mypo_parse_query_useronly’ );
以上代码排除了对管理员的限制,也就是管理员是可以看到所有人的文章的。
赏 如果本文对你有帮助,请打赏作者,鼓励我们继续写作!
请先
!