在您的问题中,您显示的图像是网格视图,而codex属于列表视图。所以我不知道你在说哪一部分。
Grid View : 除非您更改核心,否则这是不可能的,因为它们不提供任何挂钩,而整个媒体部分是由jquery、主干网和unserscore创建的。请查看媒体网格。min.js或媒体网格。js表示代码。
List View : 在此视图中,您可以轻松添加下拉列表。下面是执行此操作的脚本。如果需要,请添加parse_query
或pre_get_posts
筛选以更改下拉列表的查询。当我设置时author
对于url,wordpress本身为我设置了它,所以需要这些过滤器。
function media_add_author_dropdown()
{
$scr = get_current_screen();
if ( $scr->base !== \'upload\' ) return;
$author = filter_input(INPUT_GET, \'author\', FILTER_SANITIZE_STRING );
$selected = (int)$author > 0 ? $author : \'-1\';
$args = array(
\'show_option_none\' => \'All Authors\',
\'name\' => \'author\',
\'selected\' => $selected
);
wp_dropdown_users( $args );
}
add_action(\'restrict_manage_posts\', \'media_add_author_dropdown\');
以下是参考资料
- restrict_manage_posts
- pre_get_posts
- parse_query
Edit #1: Added author filter after this comment function author_filter($query) {
if ( is_admin() && $query->is_main_query() ) {
if (isset($_GET[\'author\']) && $_GET[\'author\'] == -1) {
$query->set(\'author\', \'\');
}
}
}
add_action(\'pre_get_posts\',\'author_filter\');