代码之家  ›  专栏  ›  技术社区  ›  Jatin Sabherwal

在MediaWiki的模板中编辑后,MediaWiki不会刷新页面内容

  •  1
  • Jatin Sabherwal  · 技术社区  · 8 年前

    如果我在mediawiki中更改模板,则在编辑页面并重新保存页面之前,效果不会显示在使用该模板的页面上。如何在所有其他页面中反映变化?

    早期的: [[Trivia::{{{{Trivia |}}}]]

    假设我将样式应用于模板中的元素:

    然后,使用此模板的页面中未显示的更改。

    2 回复  |  直到 8 年前
        1
  •  0
  •   Jack Taylor    8 年前

    当您更改在许多这样的页面上转载的模板时,MediaWiki必须更新所有受影响的页面。然而,它在默认情况下不会这样做,因为在默认配置中,MediaWiki仅在有人请求页面时运行。如果有人请求一个页面时,MediaWiki必须更新数百个页面(在Wikipedia的情况下是数百万个),那么这个人的请求将需要很长时间才能完成。

    相反,MediaWiki有一个“工作”的概念。作业可以由各种操作触发。例如,删除页面后,指向该页面的所有链接必须从蓝色变为红色;在更改模板中的类别后,所有排除该模板的页面都必须切换到使用新类别。 By default ,MediaWiki在每个页面视图中运行其中一个作业。这对于某些网站来说是可以的,但根据您的使用模式,它可能无法足够快地更新所有页面。

    为了解决这个问题,MediaWiki引入了一个“ job queue “。通过使用此作业队列,您可以在后台以批处理方式运行作业,因此作业可以快速完成,请求不会因为必须处理作业而减慢。有关如何设置作业队列的信息,请参阅上面的链接。

        2
  •  0
  •   Paweł Olly Niemczuk    6 年前

    runJobs.php 脚本来自 maintenance

    推荐文章