هل ترغب في عرض منتجات المستخدمين المسجلين فقط في لوحة تحكم ووردبريس؟ إذا كان الأمر كذلك، يمكنك استخدام الشيفرة التالية:
add_action( 'pre_get_posts', 'restrict_products_to_logged_in_users' );
function restrict_products_to_logged_in_users( $query ) {
global $pagenow;
// عرض جميع المنتجات للمسؤولين
if( current_user_can( 'administrator' ) ) return;
// استهداف قائمة المنتجات في لوحة التحكم
if( is_admin() && 'edit.php' == $pagenow && isset($_GET['post_type']) && 'product' === $_GET['post_type'] ) {
$query->set( 'author', get_current_user_id() ); // عرض المنتجات التي تم إنشاؤها بواسطة المستخدم الحالي فقط
}
}
هذا الشيفرة يستخدم الفلتر pre_get_posts
لتعديل استعلام قاعدة البيانات الخاص بالمنتجات في ووردبريس. يتم استهداف قائمة المنتجات في لوحة التحكم، ويتم ضبط الاستعلام لعرض المنتجات التي تم إنشاؤها فقط بواسطة المستخدم الحالي. إذا كان المستخدم هو مسؤول، فسيتم عرض جميع المنتجات.