在MediaWiki中修改页脚
有没有办法在MediaWiki的页脚上添加外部链接? 我尝试在localsetting.php中添加以下代码:在MediaWiki中修改页脚,mediawiki,footer,Mediawiki,Footer,有没有办法在MediaWiki的页脚上添加外部链接? 我尝试在localsetting.php中添加以下代码: $wgHooks['SkinTemplateOutputPageBeforeExec'][] = function( $sk, &$tpl ) { $tpl->set( 'aboutus', $sk->footerLink( 'aboutus', 'aboutuspage' ) ); // or to add non-link text: $tpl-&
$wgHooks['SkinTemplateOutputPageBeforeExec'][] = function( $sk, &$tpl ) {
$tpl->set( 'aboutus', $sk->footerLink( 'aboutus', 'aboutuspage' ) );
// or to add non-link text:
$tpl->set( 'footertext', 'Text to show in footer' );
$tpl->data['footerlinks']['places'][] = 'aboutus';
return true;
};
但这将创建一个Mediawiki的页面,我想添加一个到联系人页面的链接。我已经修改了MediaWiki:Aboutus和MediaWiki:Aboutus页面,但什么都没有,继续提醒我进入MediaWiki的页面。你在“MediaWiki:Aboutus”中放了什么?您必须实际创建html链接。
试试这个
$wgHooks['SkinTemplateOutputPageBeforeExec'][]=函数($sk,&$tpl){
$aboutusLink=Html::element('a',['href'=>$sk->msg('aboutus url')->转义(),
$sk->msg('aboutus label')->text();
$tpl->set('aboutus',$aboutusLink);
$tpl->data['footerlinks']['places'][]='aboutus';
返回true;
};
然后在wiki上创建“MediaWiki:Aboutus url”页面,并直接放置您想要使用的外部链接。还要创建“MediaWiki:Aboutus标签”页面,并将要显示的文本放置在表面上。这允许您随时通过修改wiki页面消息来更改url和标签,就像您希望这样做一样。但是,如果要在LocalSettings.php中硬编码所有内容,请使用以下方法:
$wgHooks['SkinTemplateOutputPageBeforeExec'][]=函数($sk,&$tpl){
$aboutusLink=Html::rawmelement('a',['href'=>'https://stackoverflow.com/questions/59427663/modify-footer-in-mediawiki' ],
“显示为标签的文本”);
$tpl->set('aboutus',$aboutusLink);
$tpl->data['footerlinks']['places'][]='aboutus';
返回true;
};
它在第一个代码中工作!非常感谢你,你救了我!