MediaWiki 1.25 - 只为登出的用户显示内容

MediaWiki 1.25 - show content for logged out users only

在我的 MediaWiki 皮肤(矢量)中,我只想为注销的用户显示一些内容。过去我会用类似的东西来做到这一点:

<?php if( $wgUser->isAnon() ) { ?>
  <p>My content</p>
<?php } ?>

但是,似乎在 MediaWiki 1.25 中 $wgUser 全局变量已被弃用。鉴于此,如果用户已注销,现在显示内容的最佳方式是什么?

你不应该编辑矢量皮肤,这使得升级越来越困难。也许你应该 fork 皮肤,或者使用扩展将你的代码添加到输出中。

如果您仍想这样做,这取决于您要在何处添加内容。如果你想把它添加到 VectorTemplate 的某处,你可以使用数据数组:

<?php if( $this->data['loggedin'] ) { ?>
  <p>My content</p>
<?php } ?>

如果您可以访问 IContextSource 的实例,则可以使用:

<?php if( $this->getUser()->isLoggedIn() ) { ?>
  <p>My content</p>
<?php } ?>