本文整理汇总了PHP中OutputPage::headElement方法的典型用法代码示例。如果您正苦于以下问题:PHP OutputPage::headElement方法的具体用法?PHP OutputPage::headElement怎么用?PHP OutputPage::headElement使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OutputPage
的用法示例。
在下文中一共展示了OutputPage::headElement方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: execute
//.........这里部分代码省略.........
} else {
$langlinks = false;
}
if (isset($prop['langlinks'])) {
$result_array['langlinks'] = $this->formatLangLinks($langlinks);
}
if (isset($prop['languageshtml'])) {
$languagesHtml = $this->languagesHtml($langlinks);
$result_array['languageshtml'] = array();
ApiResult::setContent($result_array['languageshtml'], $languagesHtml);
}
if (isset($prop['categories'])) {
$result_array['categories'] = $this->formatCategoryLinks($p_result->getCategories());
}
if (isset($prop['categorieshtml'])) {
$categoriesHtml = $this->categoriesHtml($p_result->getCategories());
$result_array['categorieshtml'] = array();
ApiResult::setContent($result_array['categorieshtml'], $categoriesHtml);
}
if (isset($prop['links'])) {
$result_array['links'] = $this->formatLinks($p_result->getLinks());
}
if (isset($prop['templates'])) {
$result_array['templates'] = $this->formatLinks($p_result->getTemplates());
}
if (isset($prop['images'])) {
$result_array['images'] = array_keys($p_result->getImages());
}
if (isset($prop['externallinks'])) {
$result_array['externallinks'] = array_keys($p_result->getExternalLinks());
}
if (isset($prop['sections'])) {
$result_array['sections'] = $p_result->getSections();
}
if (isset($prop['displaytitle'])) {
$result_array['displaytitle'] = $p_result->getDisplayTitle() ? $p_result->getDisplayTitle() : $titleObj->getPrefixedText();
}
if (isset($prop['headitems']) || isset($prop['headhtml'])) {
$context = new DerivativeContext($this->getContext());
$context->setTitle($titleObj);
$context->setWikiPage($pageObj);
// We need an OutputPage tied to $context, not to the
// RequestContext at the root of the stack.
$output = new OutputPage($context);
$output->addParserOutputNoText($p_result);
if (isset($prop['headitems'])) {
$headItems = $this->formatHeadItems($p_result->getHeadItems());
$css = $this->formatCss($output->buildCssLinksArray());
$scripts = array($output->getHeadScripts());
$result_array['headitems'] = array_merge($headItems, $css, $scripts);
}
if (isset($prop['headhtml'])) {
$result_array['headhtml'] = array();
ApiResult::setContent($result_array['headhtml'], $output->headElement($context->getSkin()));
}
}
if (isset($prop['iwlinks'])) {
$result_array['iwlinks'] = $this->formatIWLinks($p_result->getInterwikiLinks());
}
if (isset($prop['wikitext'])) {
$result_array['wikitext'] = array();
ApiResult::setContent($result_array['wikitext'], $this->content->serialize($format));
if (!is_null($this->pstContent)) {
$result_array['psttext'] = array();
ApiResult::setContent($result_array['psttext'], $this->pstContent->serialize($format));
}
}
if (isset($prop['properties'])) {
$result_array['properties'] = $this->formatProperties($p_result->getProperties());
}
if (isset($prop['limitreportdata'])) {
$result_array['limitreportdata'] = $this->formatLimitReportData($p_result->getLimitReportData());
}
if (isset($prop['limitreporthtml'])) {
$limitreportHtml = EditPage::getPreviewLimitReport($p_result);
$result_array['limitreporthtml'] = array();
ApiResult::setContent($result_array['limitreporthtml'], $limitreportHtml);
}
if ($params['generatexml']) {
if ($this->content->getModel() != CONTENT_MODEL_WIKITEXT) {
$this->dieUsage("generatexml is only supported for wikitext content", "notwikitext");
}
$wgParser->startExternalParse($titleObj, $popts, OT_PREPROCESS);
$dom = $wgParser->preprocessToDom($this->content->getNativeData());
if (is_callable(array($dom, 'saveXML'))) {
$xml = $dom->saveXML();
} else {
$xml = $dom->__toString();
}
$result_array['parsetree'] = array();
ApiResult::setContent($result_array['parsetree'], $xml);
}
$result_mapping = array('redirects' => 'r', 'langlinks' => 'll', 'categories' => 'cl', 'links' => 'pl', 'templates' => 'tl', 'images' => 'img', 'externallinks' => 'el', 'iwlinks' => 'iw', 'sections' => 's', 'headitems' => 'hi', 'properties' => 'pp', 'limitreportdata' => 'lr');
$this->setIndexedTagNames($result_array, $result_mapping);
$result->addValue(null, $this->getModuleName(), $result_array);
if (!is_null($oldLang)) {
$this->getContext()->setLanguage($oldLang);
// Reset language to $oldLang
}
}
示例2: execute
//.........这里部分代码省略.........
$to = $page;
foreach ((array) $redirValues as $r) {
$to = $r['to'];
}
} else {
$to = $page;
}
$titleObj = Title::newFromText($to);
if (!$titleObj) {
$this->dieUsage("The page you specified doesn't exist", 'missingtitle');
}
$articleObj = new Article($titleObj);
if (isset($prop['revid'])) {
$oldid = $articleObj->getRevIdFetched();
}
// Try the parser cache first
$p_result = false;
$pcache = ParserCache::singleton();
if ($wgEnableParserCache) {
$p_result = $pcache->get($articleObj, $wgUser);
}
if (!$p_result) {
$p_result = $wgParser->parse($articleObj->getContent(), $titleObj, $popts);
if ($wgEnableParserCache) {
$pcache->save($p_result, $articleObj, $popts);
}
}
}
} else {
$titleObj = Title::newFromText($title);
if (!$titleObj) {
$titleObj = Title::newFromText("API");
}
$wgTitle = $titleObj;
if ($params['pst'] || $params['onlypst']) {
$text = $wgParser->preSaveTransform($text, $titleObj, $wgUser, $popts);
}
if ($params['onlypst']) {
// Build a result and bail out
$result_array['text'] = array();
$this->getResult()->setContent($result_array['text'], $text);
$this->getResult()->addValue(null, $this->getModuleName(), $result_array);
return;
}
$p_result = $wgParser->parse($text, $titleObj, $popts);
}
// Return result
$result = $this->getResult();
$result_array = array();
if ($params['redirects'] && !is_null($redirValues)) {
$result_array['redirects'] = $redirValues;
}
if (isset($prop['text'])) {
$result_array['text'] = array();
$result->setContent($result_array['text'], $p_result->getText());
}
if (!is_null($params['summary'])) {
$result_array['parsedsummary'] = array();
$result->setContent($result_array['parsedsummary'], $wgUser->getSkin()->formatComment($params['summary'], $titleObj));
}
if (isset($prop['langlinks'])) {
$result_array['langlinks'] = $this->formatLangLinks($p_result->getLanguageLinks());
}
if (isset($prop['categories'])) {
$result_array['categories'] = $this->formatCategoryLinks($p_result->getCategories());
}
if (isset($prop['links'])) {
$result_array['links'] = $this->formatLinks($p_result->getLinks());
}
if (isset($prop['templates'])) {
$result_array['templates'] = $this->formatLinks($p_result->getTemplates());
}
if (isset($prop['images'])) {
$result_array['images'] = array_keys($p_result->getImages());
}
if (isset($prop['externallinks'])) {
$result_array['externallinks'] = array_keys($p_result->getExternalLinks());
}
if (isset($prop['sections'])) {
$result_array['sections'] = $p_result->getSections();
}
if (isset($prop['displaytitle'])) {
$result_array['displaytitle'] = $p_result->getDisplayTitle() ? $p_result->getDisplayTitle() : $titleObj->getPrefixedText();
}
if (isset($prop['headitems'])) {
$result_array['headitems'] = $this->formatHeadItems($p_result->getHeadItems());
}
if (isset($prop['headhtml'])) {
$out = new OutputPage();
$out->addParserOutputNoText($p_result);
$result_array['headhtml'] = array();
$result->setContent($result_array['headhtml'], $out->headElement($wgUser->getSkin()));
}
if (!is_null($oldid)) {
$result_array['revid'] = intval($oldid);
}
$result_mapping = array('redirects' => 'r', 'langlinks' => 'll', 'categories' => 'cl', 'links' => 'pl', 'templates' => 'tl', 'images' => 'img', 'externallinks' => 'el', 'sections' => 's', 'headitems' => 'hi');
$this->setIndexedTagNames($result_array, $result_mapping);
$result->addValue(null, $this->getModuleName(), $result_array);
}
示例3: execute
//.........这里部分代码省略.........
if (isset($prop['categories'])) {
$result_array['categories'] = $this->formatCategoryLinks($p_result->getCategories());
}
if (isset($prop['categorieshtml'])) {
$result_array['categorieshtml'] = $this->categoriesHtml($p_result->getCategories());
$result_array[ApiResult::META_BC_SUBELEMENTS][] = 'categorieshtml';
}
if (isset($prop['links'])) {
$result_array['links'] = $this->formatLinks($p_result->getLinks());
}
if (isset($prop['templates'])) {
$result_array['templates'] = $this->formatLinks($p_result->getTemplates());
}
if (isset($prop['images'])) {
$result_array['images'] = array_keys($p_result->getImages());
}
if (isset($prop['externallinks'])) {
$result_array['externallinks'] = array_keys($p_result->getExternalLinks());
}
if (isset($prop['sections'])) {
$result_array['sections'] = $p_result->getSections();
}
if (isset($prop['displaytitle'])) {
$result_array['displaytitle'] = $p_result->getDisplayTitle() ?: $titleObj->getPrefixedText();
}
if (isset($prop['headitems'])) {
$result_array['headitems'] = $this->formatHeadItems($p_result->getHeadItems());
$this->logFeatureUsage('action=parse&prop=headitems');
$this->setWarning('headitems is deprecated since MediaWiki 1.28. ' . 'Use prop=headhtml when creating new HTML documents, or ' . 'prop=modules|jsconfigvars when updating a document client-side.');
}
if (isset($prop['headhtml'])) {
$context = new DerivativeContext($this->getContext());
$context->setTitle($titleObj);
$context->setWikiPage($pageObj);
// We need an OutputPage tied to $context, not to the
// RequestContext at the root of the stack.
$output = new OutputPage($context);
$output->addParserOutputMetadata($p_result);
$result_array['headhtml'] = $output->headElement($context->getSkin());
$result_array[ApiResult::META_BC_SUBELEMENTS][] = 'headhtml';
}
if (isset($prop['modules'])) {
$result_array['modules'] = array_values(array_unique($p_result->getModules()));
$result_array['modulescripts'] = array_values(array_unique($p_result->getModuleScripts()));
$result_array['modulestyles'] = array_values(array_unique($p_result->getModuleStyles()));
}
if (isset($prop['jsconfigvars'])) {
$result_array['jsconfigvars'] = ApiResult::addMetadataToResultVars($p_result->getJsConfigVars());
}
if (isset($prop['encodedjsconfigvars'])) {
$result_array['encodedjsconfigvars'] = FormatJson::encode($p_result->getJsConfigVars(), false, FormatJson::ALL_OK);
$result_array[ApiResult::META_SUBELEMENTS][] = 'encodedjsconfigvars';
}
if (isset($prop['modules']) && !isset($prop['jsconfigvars']) && !isset($prop['encodedjsconfigvars'])) {
$this->setWarning('Property "modules" was set but not "jsconfigvars" ' . 'or "encodedjsconfigvars". Configuration variables are necessary ' . 'for proper module usage.');
}
if (isset($prop['indicators'])) {
$result_array['indicators'] = (array) $p_result->getIndicators();
ApiResult::setArrayType($result_array['indicators'], 'BCkvp', 'name');
}
if (isset($prop['iwlinks'])) {
$result_array['iwlinks'] = $this->formatIWLinks($p_result->getInterwikiLinks());
}
if (isset($prop['wikitext'])) {
$result_array['wikitext'] = $this->content->serialize($format);
$result_array[ApiResult::META_BC_SUBELEMENTS][] = 'wikitext';
if (!is_null($this->pstContent)) {
$result_array['psttext'] = $this->pstContent->serialize($format);
$result_array[ApiResult::META_BC_SUBELEMENTS][] = 'psttext';
}
}
if (isset($prop['properties'])) {
$result_array['properties'] = (array) $p_result->getProperties();
ApiResult::setArrayType($result_array['properties'], 'BCkvp', 'name');
}
if (isset($prop['limitreportdata'])) {
$result_array['limitreportdata'] = $this->formatLimitReportData($p_result->getLimitReportData());
}
if (isset($prop['limitreporthtml'])) {
$result_array['limitreporthtml'] = EditPage::getPreviewLimitReport($p_result);
$result_array[ApiResult::META_BC_SUBELEMENTS][] = 'limitreporthtml';
}
if (isset($prop['parsetree']) || $params['generatexml']) {
if ($this->content->getModel() != CONTENT_MODEL_WIKITEXT) {
$this->dieUsage('parsetree is only supported for wikitext content', 'notwikitext');
}
$wgParser->startExternalParse($titleObj, $popts, Parser::OT_PREPROCESS);
$dom = $wgParser->preprocessToDom($this->content->getNativeData());
if (is_callable([$dom, 'saveXML'])) {
$xml = $dom->saveXML();
} else {
$xml = $dom->__toString();
}
$result_array['parsetree'] = $xml;
$result_array[ApiResult::META_BC_SUBELEMENTS][] = 'parsetree';
}
$result_mapping = ['redirects' => 'r', 'langlinks' => 'll', 'categories' => 'cl', 'links' => 'pl', 'templates' => 'tl', 'images' => 'img', 'externallinks' => 'el', 'iwlinks' => 'iw', 'sections' => 's', 'headitems' => 'hi', 'modules' => 'm', 'indicators' => 'ind', 'modulescripts' => 'm', 'modulestyles' => 'm', 'properties' => 'pp', 'limitreportdata' => 'lr'];
$this->setIndexedTagNames($result_array, $result_mapping);
$result->addValue(null, $this->getModuleName(), $result_array);
}