Tools 是非官方社区Wiki。社区文档正在编写中,欢迎参与。 Wiki编辑答疑群:717421103
版本250722.2
全站通知:

帮助:解析函数/localurle

来自WIKI实验室WIKI_BWIKI_哔哩哔哩
跳到导航 跳到搜索

localurle是一个解析函数。帮助:解析函数页列出了所有解析函数的说明。

localurle

获取相对URL,在localurl基础上将&等符号转换为HTML实体。MediaWiki原生支持。

指定页面获取其相对URL(不带域名),支持附加查询参数,自动进行URL编码,还会将这些字符转换为HTML实体:<>"&&lt;&gt;&quot;&amp;

语法

{{localurle: 页面 | 参数 }}

  • 页面:要生成URL的目标页面标题
  • 参数(可选):以key=value格式附加的查询字符串参数,多个参数用&分隔

生成的URL始终采用与当前wiki配置匹配的短URL格式(如/wiki/页面名)或index.php路径。

示例

  • 基础用法 {{localurle: 帮助:解析函数 }}/tools/%E5%B8%AE%E5%8A%A9:%E8%A7%A3%E6%9E%90%E5%87%BD%E6%95%B0
  • 基础用法 {{localurle: Test }}/tools/Test
  • 单个参数 {{localurle: Test | printable=yes }}/tools/index.php?title=Test&amp;printable=yes
  • 多个参数 {{localurle: Test | action=raw&feed=atom }}/tools/index.php?title=Test&amp;action=raw&amp;feed=atom

底层代码

来自MediaWiki及其扩展的源代码,运行在服务端。此处仅供快速查阅,便于更充分的挖掘其“特性”。

// mediawiki-1.37.0\includes\parser\CoreParserFunctions.php
public static function localurle( $parser, $s = '', $arg = null ) {
	$temp = self::urlFunction( 'getLocalURL', $s, $arg );
	if ( !is_string( $temp ) ) {
		return $temp;
	} else {
		return htmlspecialchars( $temp );
	}
}
代码逻辑:
  • 调用MediaWiki核心的getLocalURL方法生成相对URL,URL格式遵循wgScript和wgArticlePath(可在特殊:版本页面查看)

实际用例

一些Wiki使用了相关特性,如下所示这个静态列表可能在下列页面更改后过时仅供批判性参考