如何在Wordpress中显示某位用户发布的媒体? 说我有循环...... 并且我使用get_the_author_meta()来检索用户inf 现在我想显示某个用户上传的所有图像。 不知道从哪里开始。 只想显示一个用户上传的图片列表。
答案 0 :(得分:1)
您可以使用pre_get_posts过滤器并过滤查询..
答案 1 :(得分:1)
允许用户在上传页面中仅查看自己的附件的一个非常常见的代码是:
add_action('pre_get_posts','users_attachments');
function users_attachments( $wp_query_obj ) {
global $current_user, $pagenow;
if( !is_a( $current_user, 'WP_User') )
return;
if( 'upload.php' != $pagenow )
return;
if( !current_user_can('delete_pages') )
$wp_query_obj->set('author', $current_user->id );
return;
}
基于此,并删除您不需要的条件 - 您可以尝试:
add_action('pre_get_posts','users_attachments');
function users_attachments( $wp_query_obj ) {
$wp_query_obj->set('author', '30' ); // ID of user , or any other meta..
return;
}
或过滤查询例如:
function user_files_only( $wp_query ) {
global $current_user;
$wp_query->set( 'author', '30' ); // ID of user , or any other meta..
}
add_filter('parse_query', 'user_files_only' );
这两个示例实际上都以某种方式更改了主查询,因此您可能希望在应用它之后删除该操作。不知道这将如何在循环中起作用。
答案 2 :(得分:0)
为某个在不同类别中发布媒体的用户提供用户x的标签,现在很容易如果有人按下该标签,那么特定用户上传的所有媒体都会逐一显示。(我的意思是你必须为user-x的所有帖子使用标签,为所有上传的媒体提供相同的标签)