当前位置

MediaWiki的DPL(DynamicPageList)扩展实现动态页面列表翻页

James Qi 在 2017年9月5日 - 12:25 提交
内容摘要:在很多年前使用MediaWiki的时候就发现DynamicPageList这个扩展,当时记录了文章《超强的MediaWiki扩展功能:DPL动态页面列表》,在一些Wiki网站中一直在使用这个扩展程序。......

  在很多年前使用MediaWiki的时候就发现DynamicPageList这个扩展,当时记录了文章《超强的MediaWiki扩展功能:DPL动态页面列表》,在一些Wiki网站中一直在使用这个扩展程序。

  后来改用Drupal做为建站平台后,使用了Views模块来实现各自数据库查询,这个功能就比MediaWiki的DPL强大太多了,也不需要记什么语法,在Web方式菜单中选择、操作就可以实现各自列表功能。

  Wiki的DPL需要查看手册中的各种命令,难以记住,所以各种命令功能也没有都尝试。以前在遇到列表结果很多的时候就限制一下,不知道还可以像Drupal的Views一样翻页。最近在修改一个Wiki站点的时候希望能够翻页,再次查阅首页并反复调试后终于是可以实现了,记录如下:

  我在查号吧网站中实现的页面例子:

  这样就可以在URL中带参数实现翻页了,例如:下一页

  注意LocalSettings.php中开启这个DPL模块的时候需要关闭其缓存功能才行:

require_once( "$IP/extensions_more/DynamicPageList/DynamicPageList.php" );
ExtDynamicPageList::$respectParserCache = false;//2017-9-5 change to false, for multi-page

  否则翻页后显示的内容都是一样的。这个可能对数据库服务器造成一定压力,需要测试是否可行。不过总体来说,找到这个翻页功能太好了,很有用!

  补充:这样修改后果然造成阿里云RDS负载太高,后来还是启用了DPL的Cache功能,而通过修改辅助模板,让翻页链接后面带上&action=purge就可以让这种新增加的页面清理缓存,从而让老的页面继续使用缓存,新的页面不用缓存,改善了数据库负载。

添加新评论

Plain text

  • 不允许使用HTML标签。
  • 自动将网址与电子邮件地址转变为链接。
  • 自动断行和分段。
验证码
本问题用于测试您是否为人类访问者,避免自动垃圾发贴。
图形验证
键入显示在图片中的字符