ازالة صناديق لوحة التحكم dashboard widgets

تجد امامك في رئيسية لوحة التحكم الخاصة بك عدة صناديق dashboard widgets كل صندوق به محتوى خاص به مثل صندوق “احصائيات” الذي تجد به احصائيات سريعة لموقعك مثل عدد المقالات وكذلك عن التعليقات وقالبك المستخدم ونسخة ووردبريس الخاصة بك، جيد.. ربما هذا الصندوق مفيد لك لكن بعض الصناديق الاخرى قد تبدو لك غير مفيدة او تفضل ازالتها لسبب ما وهذا ما نتعرف عليه في هذا التلميح السريع.

remove_dashboard_widgets_01

الطريقة الأولى

نستخدم دالة unset لازالة عنصر او عناصر من المصفوفة $wp_meta_boxes

مثال: ازالة صندوقي “الروابط المتلقاة” و “اضافات”:

الصندوقان في المصفوفة يكونان على الشكل التالي:

$wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links'] //صندوق الروابط المتلقاة
$wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins'] //صندوق اضافات

ولازالة الصندوقين نضع هذا الكود في ملف functions.php الخاص بالقالب الذي نستخدمه:

function arwp_remove_dashboard_widgets() {

	global $wp_meta_boxes;
	
	unset( $wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links'] );
	unset( $wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins'] );
	
} 

add_action( 'wp_dashboard_setup', 'arwp_remove_dashboard_widgets' );

قائمة بصناديق لوحة التحكم في المصفوفة:

// Main column:
$wp_meta_boxes['dashboard']['normal']['high']['dashboard_browser_nag'] //صندوق يظهر اذا كان المتصفح المستخدم قديما
$wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now'] // صندوق احصائيات
$wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments'] // صندوق احدث التعليقات
$wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links'] // صندوق الروابط المتلقاة
$wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']// صندوق اضافات

// Side Column:
$wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press'] // صندوق نشر سريع
$wp_meta_boxes['dashboard']['side']['core']['dashboard_recent_drafts'] // صندوق آخر المسودات
$wp_meta_boxes['dashboard']['side']['core']['dashboard_primary'] // صندوق خلاصات RSS الاول
$wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary'] // صندوق خلاصات RSS الثاني

الطريقة الثانية

نستخدم دالة remove_meta_box() هذه الدالة تأخذ ثلاثة بارمترات وكلهم مطلوبين:

  • البارمتر الاول: الـ HTML id الخاص بالصندوق مثل “dashboard_plugins”
  • البارمتر الثاني: نوع الصفحة الموجود بها هذا الصندوق وفي حالتنا هذه سيكون “dashboard”
  • البارمتر الثالث: وهو موضع هذا الصندوق في الصفحة وقد يكون ‘normal’ او ‘side’ او ‘advanced’.

اذا لنقوم بازالة صندوقي “الروابط المتلقاة” و “اضافات” نضع هذا الكود في ملف functions.php الخاص بالقالب الذي نستخدمه:

function arwp_remove_dashboard_widgets() {

	$metaboxes = array(
	
	'dashboard_incoming_links' => 'normal',
	'dashboard_plugins'        => 'normal', 
	
	);
	
	foreach ( $metaboxes as $metabox => $context ) {
	
		remove_meta_box( $metabox, 'dashboard', $context );
		
	}
	
	
} 

add_action( 'wp_dashboard_setup', 'arwp_remove_dashboard_widgets' );

ولنزيل كل الصناديق نستخدم هذا الكود:

function arwp_remove_dashboard_widgets() {

	$metaboxes = array(
	
	'dashboard_browser_nag'     => 'normal',
	'dashboard_right_now'       => 'normal',
	'dashboard_recent_comments' => 'normal',
	'dashboard_incoming_links'  => 'normal',
	'dashboard_plugins'         => 'normal',
	'dashboard_quick_press'     => 'side',
	'dashboard_recent_drafts'   => 'side',
	'dashboard_primary'         => 'side',
	'dashboard_secondary'       => 'side',
	
	);
	
	foreach ( $metaboxes as $metabox => $context ) {
	
		remove_meta_box( $metabox, 'dashboard', $context );
		
	}
	
	
} 

add_action( 'wp_dashboard_setup', 'arwp_remove_dashboard_widgets' );

الآن صفحة لوحة التحكم الرئيسية خالية من كل الصناديق:

remove_dashboard_widgets_02

7 تعليق

  1. ممتاز أخي أبو العباس
    كنت أتمنى أن تشرح لنا كيف يتم تخصيص صناديق أخرى بحسب ما نريد
    أتمنى أن تخصص تدوينة اخرى لذلك أو تقم بتحديث التدوينة الحالية
    مشكور على المجهود الطيب … لك تقديري 🙂

  2. بسم الله ماشاء الله عليك .همتك نار الله يجزاك الخير

    ولو امكن عمل درس مفصل ومتقدم عن ال custom post type غير الذي قام الاخ رشيد بعمله

    وعن عمل لوحة تحكم قالب فالمحتوى العربي خالي من هذه المواضيع

    وشكرا اخوي مقدما

  3. شكرا لكم لى إستفسار بخصوص لوحه التحكم اريد ان تظهر لوحه التحكم للعضو فى القالب وليس لوحه التحكم الخاصه بالاسكربت
    اريد تخصيص لوحه التحكم الموجوده فى القالب خاصه بالاعضاء
    اما لوحه تحكم الاسكربت تكون للمشرفين والادمن
    شكرا لكم

  4. شرح رائع اخي وننتظر شرح لعمل صناديق جديده والتحكم فى اماكنها بحيث تظهر فى الهيدر او الفوتر بخلاف السيد بار

  5. هو انا عاوز اتعلم وورد بريس ابتدى منين ؟؟؟ مع العلم انا اعرف html و css ومعايا قوالب لورود بريس جميله جدا بس انجليزيه وعاوز استخدمها ممكن حد يقدر يساعدنى

اترك رداً على محمد عصام حسن إلغاء الرد

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *