我是wordpress开发的初学者。。。
我有一个用户角色“所有者”。那些拥有“机器”(自定义帖子类型)我希望管理员后端的所有者只看到自己的机器(所有者是作者的那些机器)和同一公司拥有的机器(机器的分类)。公司是用户的元字段,它应该与帖子的分类相匹配。
对于条件“相同的公司”,我将查询更改为仅过滤具有给定公司分类法的帖子(请参见“abc”)。
我如何扩展查询,以便用户即使没有填写公司字段,也能看到自己的帖子?
目标:查询(同一公司)或查询(同一作者)
function only_own_company( $query ) {
global $typenow;
$current_user = wp_get_current_user();
$post_type = \'machine\'; // change to your post type
$role = \'owner\';
if ( $typenow == $post_type && current_user_can( $role ) ) {
$query->set( \'tax_query\', array(
array(
\'taxonomy\' => \'company\',
\'field\' => \'slug\',
\'terms\' => \'abc\',
),
) );
}
}
add_action( \'pre_get_posts\', \'only_own_company\' );
我试图将其与第二个新查询结合起来,但这似乎不是正确的方式。。。$query2 = new WP_Query( array( \'author\', $current_user->ID ) );
$query->posts = array_merge( $query->posts, $query2->posts );