Page Forms扩展虽然很方便,但却有个不算太大的问题,那就是参考文献列表的标题没法添加。
可能不太好理解上面的话,那就啰嗦两句。
创建表单时,通常都会有一个standard input
的标签,它可以有十个选项,其中free text
是用于输入文本的,而这些文本通常是除了模板和章节内容之外的,那么一般常见的就两项——序章和参考文献列表。前者通常就是一段关于该条目的文字简介,不使用标题;而后者是在添加引用之后自动生成的。
如果条目中的章节不靠模板或者是section
标签生成,那么上面提到的就不算是问题了。
可如果你希望对某些类型的条目进行标准化,比如说人物分类,默认会有人物生平、知名理论、相关资料等等,并且按照章节来划分。显然这些章节是位于序章之后,参考文献列表之前。
参考文献列表就直接跟在文字内容后面了。除非有特殊审美和癖好,一般都会在列表前加上一个标题,比如参考资料。
OK,那么这个标题应该怎么加呢?
如果你直接加在standard input
的文本框内,参考资料就会提前,而其他章节会位于它之后。就算是你把standard input
标签挪到了表单的最后,生成的内容就又成了序章和参考文献列表位于整篇文章的最后。
最终的解决方案就在官方文档中,通过向MediaWiki:Common.js
中增加代码,就能实现自动添加标题的功能。
$(document).ready(function(){
$('.mw-references-wrap').before('<h2>References</h2>');
});
看看效果。
注意到差别没有,这个标题后面是没有编辑按钮的,而其他章节是有的(著作部分是由模板自动生成的,同样没有编辑按钮)。
不过,文档中也提到了,该方法是无脑添加,所以要是你之前已经手动增加过标题,它是不会进行判断从而变成两个重复标题。
解决办法就是使用文本替换功能将手动添加的所有标题全部删掉。
采用这种方式还有一项好处就是,对于参考文献列表的标题可以进行统一,因为我发现就我一个人编辑都一会儿使用参考资料,一会儿使用参考文献,甚至可能有其他乱七八糟的标题。另一个好处是,如果你白嫖了其他站点的内容,又没有把引用复制进来,很可能会发现光有标题没有列表。而采用这种方式就简单多了。