从文本文件更新 wiki 消息

update wiki message from text file

是否可以让我的 wiki 从 *.txt 文件加载一行文本并将其显示在主页的某个位置?类似直接来自 txt 文件且不涉及手动编辑 wiki 的“每日消息”?

我的 wiki 在 Ubuntu Mate 上 运行 如下:

UPDATE:根据 Alexander 的回答,我可以正常工作,但缓存未按预期运行。我希望外部数据在单击浏览器刷新按钮后立即显示(因此我已将缓存时间设置为零)-但这不起作用。我发现强制刷新外部文本的唯一方法是 A) 编辑 wiki 页面(强制重新加载),或 B) stop/start apache 服务器。

在我的 LocalSettings.php 文件中我有:

wfLoadExtension( 'ExternalData' );
$edgCacheExpireTime=0;
$edgFilePath['inject'] = '/home/rw/my_external_data.txt';

在我的主页 wiki 中我有:

{{#get_file_data:
  file=inject
  |format=text
  |data=inject=text
  |cache seconds=0
 }}{{#external_value:inject}}

您可以安装“External Data”,然后:

旧样式:

在您的 LocalSettings.php

中定义
wfLoadExtension( 'ExternalData' );
$edgFilePath['inject'] = '/path/to/your/file.txt';
$edgCacheExpireTime = 10; // only ten seconds.

并添加到您的主页:

{{#get_file_data: file = inject
  | format = text
  | data = inject=__text
  | cache seconds = 10
 }}{{#external_value:inject}}

新款式:

在您的 LocalSettings.php

中定义
wfLoadExtension( 'ExternalData' );
$wgExternalDataSources['inject'] = [
    'path' => '/path/to/your/file.txt',
    'min cache seconds' => 10
];

并添加到您的主页:

{{#get_external_data: file = inject
  | format = text
  | data = inject=__text
  | cache seconds = 10
 }}{{#external_value:inject}}