本文整理汇总了PHP中SpecialPage::getUsablePages方法的典型用法代码示例。如果您正苦于以下问题:PHP SpecialPage::getUsablePages方法的具体用法?PHP SpecialPage::getUsablePages怎么用?PHP SpecialPage::getUsablePages使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SpecialPage
的用法示例。
在下文中一共展示了SpecialPage::getUsablePages方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getPageGroups
private function getPageGroups()
{
global $wgSortSpecialPages;
$pages = SpecialPage::getUsablePages();
if (!count($pages)) {
# Yeah, that was pointless. Thanks for coming.
return false;
}
/** Put them into a sortable array */
$groups = array();
foreach ($pages as $page) {
if ($page->isListed()) {
$group = SpecialPage::getGroup($page);
if (!isset($groups[$group])) {
$groups[$group] = array();
}
$groups[$group][$page->getDescription()] = array($page->getTitle(), $page->isRestricted());
}
}
/** Sort */
if ($wgSortSpecialPages) {
foreach ($groups as $group => $sortedPages) {
ksort($groups[$group]);
}
}
/** Always move "other" to end */
if (array_key_exists('other', $groups)) {
$other = $groups['other'];
unset($groups['other']);
$groups['other'] = $other;
}
return $groups;
}
示例2: wfSpecialSpecialpages
/**
*
*/
function wfSpecialSpecialpages()
{
global $wgOut, $wgUser, $wgMessageCache, $wgSortSpecialPages;
$wgMessageCache->loadAllMessages();
$wgOut->setRobotPolicy('noindex,nofollow');
# Is this really needed?
$sk = $wgUser->getSkin();
$pages = SpecialPage::getUsablePages();
if (count($pages) == 0) {
# Yeah, that was pointless. Thanks for coming.
return;
}
/** Put them into a sortable array */
$groups = array();
foreach ($pages as $page) {
if ($page->isListed()) {
$group = SpecialPage::getGroup($page);
if (!isset($groups[$group])) {
$groups[$group] = array();
}
$groups[$group][$page->getDescription()] = array($page->getTitle(), $page->isRestricted());
}
}
/** Sort */
if ($wgSortSpecialPages) {
foreach ($groups as $group => $sortedPages) {
ksort($groups[$group]);
}
}
/** Always move "other" to end */
if (array_key_exists('other', $groups)) {
$other = $groups['other'];
unset($groups['other']);
$groups['other'] = $other;
}
$includesRestrictedPages = false;
/** Now output the HTML */
foreach ($groups as $group => $sortedPages) {
$middle = ceil(count($sortedPages) / 2);
$total = count($sortedPages);
$count = 0;
$wgOut->wrapWikiMsg("<h4 class='mw-specialpagesgroup'>\$1</h4>\n", "specialpages-group-{$group}");
$wgOut->addHTML("<table style='width: 100%;' class='mw-specialpages-table'><tr>");
$wgOut->addHTML("<td width='30%' valign='top'><ul>\n");
foreach ($sortedPages as $desc => $specialpage) {
list($title, $restricted) = $specialpage;
$link = $sk->makeKnownLinkObj($title, htmlspecialchars($desc));
if ($restricted) {
$includesRestrictedPages = true;
$wgOut->addHTML("<li class='mw-specialpages-page mw-specialpagerestricted'>{$link}</li>\n");
} else {
$wgOut->addHTML("<li>{$link}</li>\n");
}
# Split up the larger groups
$count++;
if ($total > 3 && $count == $middle) {
$wgOut->addHTML("</ul></td><td width='10%'></td><td width='30%' valign='top'><ul>");
}
}
$wgOut->addHTML("</ul></td><td width='30%' valign='top'></td></tr></table>\n");
}
if ($includesRestrictedPages) {
$wgOut->wrapWikiMsg("<div class=\"mw-specialpages-notes\">\n\$1\n</div>", 'specialpages-note');
}
}