当前位置: 首页>>代码示例>>PHP>>正文


PHP SpecialPage::getGroup方法代码示例

本文整理汇总了PHP中SpecialPage::getGroup方法的典型用法代码示例。如果您正苦于以下问题:PHP SpecialPage::getGroup方法的具体用法?PHP SpecialPage::getGroup怎么用?PHP SpecialPage::getGroup使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SpecialPage的用法示例。


在下文中一共展示了SpecialPage::getGroup方法的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;
 }
开发者ID:GodelDesign,项目名称:Godel,代码行数:33,代码来源:SpecialSpecialpages.php

示例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');
    }
}
开发者ID:ruizrube,项目名称:spdef,代码行数:68,代码来源:SpecialSpecialpages.php


注:本文中的SpecialPage::getGroup方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。