specialwantedcategories.php

来自「php 开发的内容管理系统」· PHP 代码 · 共 86 行

PHP
86
字号
<?php/** * A querypage to list the most wanted categories * * @package MediaWiki * @subpackage SpecialPage * * @author 脝var Arnfj枚r冒 Bjarmason <avarab@gmail.com> * @copyright Copyright 漏 2005, 脝var Arnfj枚r冒 Bjarmason * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later *//** * @package MediaWiki * @subpackage SpecialPage */class WantedCategoriesPage extends QueryPage {	function getName() { return 'Wantedcategories'; }	function isExpensive() { return true; }	function isSyndicated() { return false; }	function getSQL() {		$dbr =& wfGetDB( DB_SLAVE );		extract( $dbr->tableNames( 'categorylinks', 'page' ) );		$name = $dbr->addQuotes( $this->getName() );		return			"			SELECT				$name as type,				" . NS_CATEGORY . " as namespace,				cl_to as title,				COUNT(*) as value			FROM $categorylinks			LEFT JOIN $page ON cl_to = page_title AND page_namespace = ". NS_CATEGORY ."			WHERE page_title IS NULL			GROUP BY cl_to			";	}	function sortDescending() { return true; }	/**	 * Fetch user page links and cache their existence	 */	function preprocessResults( &$db, &$res ) {		$batch = new LinkBatch;		while ( $row = $db->fetchObject( $res ) )			$batch->addObj( Title::makeTitleSafe( $row->namespace, $row->title ) );		$batch->execute();		// Back to start for display		if ( $db->numRows( $res ) > 0 )			// If there are no rows we get an error seeking.			$db->dataSeek( $res, 0 );	}	function formatResult( $skin, $result ) {		global $wgLang, $wgContLang;		$nt = Title::makeTitle( $result->namespace, $result->title );		$text = $wgContLang->convert( $nt->getText() );		$plink = $this->isCached() ?			$skin->makeLinkObj( $nt, htmlspecialchars( $text ) ) :			$skin->makeBrokenLinkObj( $nt, htmlspecialchars( $text ) );		$nlinks = wfMsgExt( 'nmembers', array( 'parsemag', 'escape'),			$wgLang->formatNum( $result->value ) );		return wfSpecialList($plink, $nlinks);	}}/** * constructor */function wfSpecialWantedCategories() {	list( $limit, $offset ) = wfCheckLimits();	$wpp = new WantedCategoriesPage();	$wpp->doQuery( $offset, $limit );}?>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?