我认为改变以下条件:
if( !current_user_can( \'manage_options\' ) )
对于这个:
if( !current_user_can( \'manage_options\' ) && \'product\' === $query->get( \'post_type\' ) )
会的。
简要说明:我添加了第二个条件,用于检查查询是否针对帖子类型为的WooCommerce产品product
.
更新
如果要确保代码仅在产品页面(WooCommerce→products)上运行,则可以(删除
global $pagenow;
和)更改此选项:
if( \'edit.php\' != $pagenow || !$query->is_admin )
对于这个:
if( !$query->is_admin || \'edit-product\' !== get_current_screen()->id )
而不是依赖全球
$user_ID
, 您可能应该使用
get_current_user_id()
:
$query->set( \'author\', get_current_user_id() );
:)