扩展:HideCategorizedOrphans

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page Extension:HideCategorizedOrphans and the translation is 50% complete.
Other languages:
English • ‎Türkçe • ‎polski • ‎العربية • ‎中文 • ‎日本語
MediaWiki擴充功能手冊
OOjs UI icon advanced.svg
HideCategorizedOrphans
发布状态: 未维护
实现 我的Wiki
描述 Makes MediaWiki consider pages that belong to a category not be orphans
作者 Steven Orvis (Sorvis讨论)
最新版本 0.2.0 (2014-06-09)
MediaWiki 1.23+
PHP 5.3+
MediaWiki 1.36 Not formally tested
MediaWiki 1.34 Not formally tested
MediaWiki 1.32 Not formally tested
数据庫更改
许可协议 GNU通用公眾授權條款2.0或更新版本
下载 请查阅代码部分

检查使用和版本矩阵。

The HideCategorizedOrphans extension makes MediaWiki consider pages that belong to a category not be orphans.

This is useful if you want to link to a category off of a page, but the links to that individual page show up nowhere else.

安装

  • Copy the code into files文件,并将其放置在您extensions/文件夹中的HideCategorizedOrphans目录内。
  • 将下列代码放置在您的LocalSettings.php的底部:
    require_once "$IP/extensions/HideCategorizedOrphans/HideCategorizedOrphans.php";
    
  • Yes 完成 – 在您的wiki上导航至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;
        }
}