كيفية إخفاء إضافات معيّنة من لائحة الإضافات المثبتة

كيفية إخفاء بعض الإضافات من لوحة تحكم ووردبريس

عند إنشاء موقع لأحد العملاء بواسطة ووردبريس، أكيد أننا نحتاج لتنصيب بعض الإضافات الضرورية وفي حالة تعطيلها يمكن للموقع ان يظهر بشكل غير ملائم أو يفقد بعض مميزاته، خصوصا إن لم يكن للعميل دراية جيدة بطريقة عمل نظام الإضافات في ووردبريس.

على سبيل المثال إضافات كنظام التعليقات Disqus، إضافة Seo Yoast، إضافة Woocommerce، إضافة Contact Form 7، إضافة Google XML Sitemaps … هي إضافات جد أساسية وتعطيلها قد يغير كثيرا في شكل الموقع وأداؤه وفي بعض الحالات يمكن للموقع ان يتوقف عن العمل كليا.

حسنا، يمكنك إعطاء صاحب الموقع دور أقل من مدير لكن هذا ليس بالحل الجيد والاحترافي ويمكن لصاحب الموقع ألاّ يتفهم ذلك، ما قد يولد شعور بعدم الراحة وقلة الثقة … الحل البديل هو إخفاء الإضافات الحساسة من لوحة تحكم ووردبريس (بإذن من صاحب الموقع طبعاً) لكيلا يتم تعطيلها عن طريق الخطأ، الإضافات المخفية لن يستطيع أحد الوصول إليها من لوحة التحكم ولا حتى لغرض تحديثها.

اقرأ أيضا: جديد ووردبريس 4.3 “Billie”

فقط عليك إضافة هذا الكود إلى إضافتك الخاصة أو إلى ملف functions.php للقالب المفعَّل.

/**
 * How to Hide Specific plugin from installed plugin list.
 */
function sb_hide_plugins() {

	global $wp_list_table;

	$plugins_to_hide = array(
		'contact-form-7/wp-contact-form-7.php',
		'disqus-comment-system/disqus.php',
		'google-sitemap-generator/sitemap.php',
		'wordpress-seo/wp-seo.php',
		'woocommerce/woocommerce.php',
	);

	$plugins_installed = $wp_list_table->items;

	foreach ( $plugins_installed as $key => $val ) {

		if ( in_array( $key, $plugins_to_hide ) ) {
			unset(
				$wp_list_table->items[ $key ]
			);
		}
	}
}
add_action( 'pre_current_active_plugins', 'sb_hide_plugins' );

كما هو واضح في الكود، فقط عليك وضع مسار الملف الرئيسي للإضافة التي تريد إخفائها كعنصر للمصفوفة $plugins_to_hide، في هذا المثال قمنا بإخفاء إضافة Contact Form 7, إضافة Google XML Sitemaps, إضافة Wordpress Seo، إضافة Disqus وإضافة Woocommerce، يمكنك التعديل على هذا الكود لإخفاء أي إضافة من اختيارك.

بعد حفظ التغييرات، الإضافات المخفية ستبقى خياراتها على نفس الحالة التي كانت عليها قبل إضافة الكود لكن ستختفي من على لائحة الإضافات.

اقرأ أيضا: إضافة هاشتاك تلقائيا للمواضيع المنشورة بواسطة Jetpack

طيب، رغم كل ما قمنا به حتى الآن مازال بوسع عميلنا الكريم تحرير ملفات الإضافات المخفية عن طريق المحرر المدمج في ووردبريس، بل أيضا يمكنه تنصيب إضافات جديدة وتعطيل وحذف الإضافات الغير مخفية … يمكننا أن نكون أكثر حزما في الموضوع ونمنع العميل من عمل أي شيء يمكن أن يسبب له المشاكل ولنا ألم الرأس 😅

لمنع تحرير ملفات الإضافات والقوالب من لوحة تحكم ووردبريس فقط علينا تعريف الثابت DISALLOW_FILE_EDIT وإعطائه القيمة true، هكذا على سبيل المثال:

define( 'DISALLOW_FILE_EDIT', true );

لمنع تنصيب وتحديث وحذف الإضافات والقوالب من لوحة التحكم فقط علينا تعريب المتغير DISALLOW_FILE_MODS وإعطاءه القيمة true، هكذا على سبيل المثال:

اقرأ أيضا: طريقة تعطيل WP Rest API

define( 'DISALLOW_FILE_MODS', true );

كلا الثابتين يجب تعريفهما داخل ملف إعدادات ووردبريس wp-config.php.

أتمنا أن أكون قد أوصلت الفكرة بشكل جيد وأن يتم استعمال هذا الشرح لمصلحة العميل وليس العكس.

close

قم بالتسجيل على قائمتي البريدية لكي تكون من الأوائل في الحصول على تدوينات وشروحات حصرية

أنا لا أرسل أبدا البريد المزعج! اقرأ سياسة الخصوصية لمزيد من المعلومات.

3 تعليقات

  1. جزاك الله خيرا عندي استفسار و طلب
    – ولكن بعض الإضافات يكون لها رابط جانبي أيضا فهل تختفي أيضا
    – فضلا نرجو إرفاق الكود بحيث يمكن نسخه

اترك تعليقًا

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