امتداد:HideCategorizedOrphans

This page is a translated version of the page Extension:HideCategorizedOrphans and the translation is 100% complete.
الدليل المرجعي لامتدادات ميدياويكي
HideCategorizedOrphans
حالة الإصدار دون صيانة
تنفيذ MyWiki
بيان يجعل برمجيات ميدياويكي تعتبر الصفحات التي تنتمي إلى تصنيف ما ليست صفحات يتيمة
المؤلف/المؤلفون Steven Orvis (Sorvisنقاش)
آخر إصدار 0.2.0 (2014-06-09)
MediaWiki 1.23+
PHP 5.3+
تغييرات قاعدة البيانات لا
ترخيص رخصة جنو العمومية 2.0 أو ما بعدها
التنزيل طالع قسم الكود

يجعل امتداد HideCategorizedOrphans برمجيات ميدياويكي تعتبر الصفحات التي تنتمي إلى تصنيف ما ليست صفحات يتيمة. يكون هذا الأمر مفيدًا لو كنت ترغب في الوصل إلى تصنيف بعيدًا عن صفحة، إلا أن الوصلات إلى تلك الصفحة الوحيدة لا تظهر في أي مكان آخر.

التثبيت

  • نسخ الكود البرمجي إلى ملفات وضع الملف/الملفات في دليل يحمل اسم ‎HideCategorizedOrphans في مجلد ‎extensions/‎ لديك.
  • أضف الكود التالي في الجزء الأسفل من ملف LocalSettings.php :
    require_once "$IP/extensions/HideCategorizedOrphans/HideCategorizedOrphans.php";
    
  •   تم التنفيذ – اذهب إلى Special:Version على موقع الويكي لديك كي تتحقق من أن الامتداد قد ثبت بنجاح.

الكود

HideCategorizedOrphans.php
<?php
/**
 * HideCategoizedOrphans extension
 *
 * For more info see https://mediawiki.org/wiki/Extension:HideCategorizedOrphans
 *
 * @file
 * @ingroup Extensions
 * @author Steven Orvis, 2014
 * @license GNU General Public Licence 2.0 or later
 */

$wgExtensionCredits['other'][] = array(
        'path' => __FILE__,
        'name' => 'HideCategorizedOrphans',
        'author' => array(
                'Steven Orvis',
        ),
        'version'  => '0.2.0',
        'url' => 'https://www.mediawiki.org/wiki/Extension:HideCategorizedOrphans',
        'descriptionmsg' => 'Hides orphaned pages that belong to a category',
);

/* Setup */

// Register files
$wgAutoloadClasses['HideCategorizedOrphansHooks'] = __DIR__ . '/HideCategorizedOrphans.hooks.php';

// Register hooks
$wgHooks['LonelyPagesQuery'][] = 'HideCategorizedOrphansHooks::onLonelyPagesQuery';


HideCategorizedOrphans.hooks.php
<?php
/**
 * Hooks for HideCategorizedOrphans extension
 *
 * @file
 * @ingroup Extensions
 */

class HideCategorizedOrphansHooks {

        /**
         * Add condition to LonelyPagesQuery to hide pages in categories
         */
        public static function onLonelyPagesQuery( &$tables, &$conds, &$joinConds) {
                $joinConds['categorylinks'] = array(
                        'LEFT JOIN', array(
                                'cl_from = page_id'
                        )
                );

                $tables[] = 'categorylinks';

                $conds[] = 'cl_from is null';
                return true;
        }
}