php – 如何在MediaWiki中获取当前页面URL

我试图获取当前页面的URL并将其存储到我的自定义皮肤模板中的变量.我试图这样做,所以我可以将此URL用于其他目的.我想做这样的事情

function currentpageurl() //Some Custom function
{
    $url= [something that can get current page's url in mediawiki and store it to this variable]
    .....use the $url variable for other purposes....
    ......
    .....
}

Mediawiki是否有一种方法可以识别当前页面的URL,或者我是唯一一个使用此方法查找当前页面的选项?

$url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

解决方法:

如果您正在为皮肤编写QuickTemplate子类,则可以使用$this-> getSkin() – > getTitle()获取当前页面Title对象.

获得Title对象后,可以在其上调用getLinkURL()获取页面的URL. (您可能不希望使用getPrefixedURL(),因为Ilya建议,因为它只是为您提供页面名称的URL编码版本.)或者如果您想生成标准的wikilink样式链接,您可以将Title对象传递给Linker::link()而不必自己弄乱URL.

实际上,$this-getSkin()是从皮肤模板访问“请求全局”Mediawiki对象(如当前Title,WebRequest,User,Language,OutputPage等)的一般方法.具体来说,Skin类实现了IContextSource接口,该接口提供对所有这些对象的访问.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...