我有一个媒体维基供我的团队运行。
Extension:ClipUpload是有用的扩展程序,允许用户通过简单的复制和粘贴将图像上传到剪贴板中。 但是,它有时会导致剪贴板上的不必要的上传(例如,从excel或其他MS Office软件复制的文本)
所以我要创建一个特定页面,以便在特定页面中使用ClipUpload扩展。
这是我做过的但是失败的事情:
当我进入编辑页面时:http://my.domain/wiki/index.php?title=UploadFromClipboard&action=edit
我想运行扩展程序,因此在LocalSettings.php中添加了一行
if(preg_match(“ /(Clipboard)/ i”,$ wgArticlePath))require_once(“ $ IP / extensions / ClipUpload / ClipUpload.php”);
这种类型的解决方案不起作用。问题是我无法解析查询中的页面标题。
能否请您提出一些我可以尝试的解决方案?
答案 0 :(得分:0)
LocalSettings.php
是在MediaWiki解析URL之前加载的,并且有很多边缘情况,您不希望自己这样做。
一种选择是使用可以早运行但已设置基本变量(例如BeforeInitialize)的东西,并根据标题禁用那里的扩展名(例如$wgHooks['EditPage::showEditForm:initial'] = array_diff( $wgHooks['EditPage::showEditForm:initial'], [ 'ClipSetup' ] );
。)
或者您可以尝试修复扩展名/文件中的错误(丢弃不是图像的剪贴板内容似乎很简单)。