由于WordPress已经允许按字母顺序(升序或降序)对页面标题进行排序,因此实际上只需要添加一个作者过滤器。
这可以通过将以下内容添加到functions.php
活动主题的文件:
function rudr_filter_by_the_author() {
$params = array(
\'name\' => \'author\', // this is the "name" attribute for filter <select>
\'show_option_all\' => \'All authors\' // label for all authors (display posts without filter)
);
if ( isset($_GET[\'user\']) )
$params[\'selected\'] = $_GET[\'user\']; // choose selected user by $_GET variable
wp_dropdown_users( $params ); // print the ready author list
}
add_action(\'restrict_manage_posts\', \'rudr_filter_by_the_author\');
我在找到上面的代码片段
Misha Rudrastyh\'s website 并在我自己的WordPress管理区进行了测试,没有出现任何问题。
它所做的只是在管理区的帖子和页面部分添加一个作者过滤器。然后,您可以按作者筛选帖子/页面,然后按标题(或日期)按升序/降序进行排序。
但请记住functions.php
您的主题的属性表示此功能仅在该主题保持活动状态时可用。如果这对您来说是个问题,只需将此代码片段制作成您自己的插件,以便在需要时激活/停用。
因此,要将其转换为可用于任何主题的插件,请将以下内容保存到名为admin-area-author-filter.php
然后上传到你的WordPressplugin 目录:
<?php
/*
Plugin Name: Admin Area Author Filter
Description: Adds an author filter to the posts and pages sections of the admin area. Snippet taken from: https://rudrastyh.com/wordpress/filter-posts-by-author.html
*/
function rudr_filter_by_the_author() {
$params = array(
\'name\' => \'author\', // this is the "name" attribute for filter <select>
\'show_option_all\' => \'All authors\' // label for all authors (display posts without filter)
);
if ( isset($_GET[\'user\']) )
$params[\'selected\'] = $_GET[\'user\']; // choose selected user by $_GET variable
wp_dropdown_users( $params ); // print the ready author list
}
add_action(\'restrict_manage_posts\', \'rudr_filter_by_the_author\');
?>
然后激活它,你就可以开始了。
顺便说一下,谢谢你提出这个问题。这让我好奇,现在我在我的管理区也有了一个方便的作者过滤器。我很惊讶这并不像帖子区域中的类别过滤器那样是一个核心功能。这非常有用,再次感谢您提醒我注意这个问题。