是否可以使用非归档字符显示{{BASEPAGENAME}}?

时间:2015-04-08 17:17:08

标签: mediawiki

是否可以删除用{{BASEPAGENAME}}或其他魔术字显示的标题部分?

例如,假设我有一个标题为的页面:

(2015.04.08) Test

是否可以显示没有前13个字符的标题,因此它只显示“测试”?

我似乎无法使用finagle #titleparts工作,因为括号内的日期信息实际上并不是标题的部分。我想到的更像是MARC代码中的非归档字符(http://www.library.yale.edu/cataloging/music/filing.htm) - 修改要显示的字符数。

1 个答案:

答案 0 :(得分:1)

你想看一下Lua模块Module:String,它可以让你在没有前13个字符的情况下获取标题:

{{#invoke:String|sub|{{BASEPAGENAME}}|13|-1}}

您还可以根据模式进行更复杂的解析。 String模块仅在您使用Scribunto extension在您的wiki上启用Lua时才有效,并且您需要将module source复制到您的wiki。

如果出于某种原因,你不能使用Lua,那么效率低得多的方法就是启用Extension:ParserFunctions。这与最新版本的MediaWiki捆绑在一起,所以您只需要在LocalSettings.php中启用它:

require_once "$IP/extensions/ParserFunctions/ParserFunctions.php";
$wgPFEnableStringFunctions = true;

$wgPFEnableStringFunctions会授予您访问权限string parsing functions的权限,允许您执行以下操作:

{{#sub:{{BASEPAGENAME}}|13|0}}