问题标签 [mediawiki-extensions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1147 浏览

php - 下拉列表中的 PHP 数组到字符串转换错误

我目前正在尝试创建一个带有下拉列表和提交按钮的表单的 mediawiki 扩展。在这种形式中,我想在下拉列表中读取我所有的数据库对象(表)。如果我将它作为单个 php 脚本运行,它可以正常工作,并且它具有以下语法。

对于 mediawiki 扩展,您必须将其放入函数中并使用 mediawiki 核心全局变量进行输出。

因此,我创建了 3 个函数:

1 个功能 - 建立与数据库服务器的连接

2 函数 - 执行我的 SQL 查询并在数组中返回结果:

3 功能 - 显示带有下拉列表的 mediawiki html-form 并提交:

在 3 函数内,我尝试调用第二个函数,而我的服务器向我抛出错误“数组到字符串转换”

如何让我的数组值显示在下拉列表中?还是有另一种方式在表单中显示它?

我将不胜感激任何帮助。

0 投票
2 回答
270 浏览

php - MediaWiki 挂钩以在文章加载时刷新脚本

我有一个 PHP 脚本,它在我的 MediaWiki 上显示员工列表。我还有一个特殊页面,您可以在其中管理哪些用户是员工,效果很好。但是,当您在特殊页面上进行后端更改时,更改不会显示在 wikipage 上,它会在其中插入标签,直到您编辑该页面并且什么都不更改并保存之后。

这只能是因为我使用了错误的钩子。我试图改用这个钩子,但它似乎不起作用:http ://www.mediawiki.org/wiki/Manual:Hooks/ArticlePageDataBefore

现在我正在使用这个钩子。仅更改变量名称不起作用:

0 投票
1 回答
49 浏览

php - 跟踪文章的任何更改 (Mediawiki 1.23)

我是 Mediawiki 的新手。

我有链接到文章内容的某些元素的数据库记录。数据库中的数据完全依赖于文章的内容,并且必须在相应元素发生更改时进行更新。一些mediawiki 钩子提供了部分所需功能,但我不确定它是否是正确的解决方案,因为我必须为同一任务使用几个不同的钩子,而且在这样的琐碎情况下看起来太复杂了。

我怎样才能以最合适的方式做到这一点?

我正在使用 page_id 链接到数据库中的文章。在这种情况下是否正确?

对于必须更新数据库的所有情况,我必须使用哪些 mediawiki 挂钩?目前我想使用这个:

  • 文章插入完成
  • 文章删除完成
  • 文章修订未删除
  • 页面内容保存完成
  • 文章回滚完成
  • 文章合并完成

或者我怎样才能捕捉到任何最近的变化?

0 投票
1 回答
94 浏览

mediawiki - MediaWiki 的访问限制:在获得批准之前将页面设为私有

我被困在访问权的情况下,

我想要的是:

我有用户在 MediaWiki 上创建文章/页面,我已将其限制为仅注册/自动确认的用户,但现在的要求是,只有在 sysop 批准后,才能向除创建者或 sysop 以外的任何人显示文章页/文章。在此之前,只有创建者或管理员可以编辑该文章。

我已经尝试过 FlaggedRevs 扩展和其他几个小限制,但无法得到我正在寻找的东西。

提前感谢您的任何建议。

0 投票
2 回答
185 浏览

mysql - 移动 MediaWiki 网站的步骤是什么?

我正在尝试将 MediaWiki 网站从 Windows Server 2003 (IIS 6) 移动到 Windows Server 2008 R2 (IIS 7.5)。为了避免冲突,我在目标服务器上安装了相同版本的 MediaWiki。我转储、移动和恢复 MySQL 数据库;压缩、移动和恢复 MediaWiki 文件,其中包括每个 MediaWiki 网站的图像、LocalSettings.php 文件。

我现在无法浏览网站,我相信我需要做些其他事情,但我不确定。我对 MediaWiki 完全陌生。任何帮助表示赞赏。

提前致谢。

LocalSettings.php 有上面的部分,其目的是使用多个 mediawiki 网站。每个 LocalSettings.website.php 文件都有以下部分:

为了确定每个网站使用哪个数据库。

在此处输入图像描述 这是我通过 IIS 浏览 MediaWiki wiki 时得到的图片。

从服务器日志中我得到以下信息:

0 投票
1 回答
150 浏览

mediawiki-extensions - Mediawiki 1.23 编辑器的问题

最近我在 Oracle 企业版 linux 6 上安装了 MediaWiki 1.23 版本,它运行良好。问题在于 WYSIWYG_1.23/CKeditor 编辑器。我尝试配置两个编辑器,但它们都不起作用。我将下面提到的代码添加到 LocalSettings.php 文件中:

require_once("$IP/extensions/WYSIWYG-CKeditor-CKeditor_v4/WikiEditor/WikiEditor.php");

require_once("$IP/extensions/WYSIWYG-CKeditor-CKeditor_v4/WYSIWYG/WYSIWYG.php");

$wgGroupPermissions['registered_users']['wysiwyg']=true;

$wgGroupPermissions['*']['wysiwyg'] = true; $wgDefaultUserOptions['cke_show'] = 'richeditor';

$wgDefaultUserOptions['riched_use_toggle'] = true;

$wgDefaultUserOptions['riched_start_disabled'] = false;

$wgDefaultUserOptions['riched_toggle_remember_state'] = true;

$wgDefaultUserOptions['riched_use_popup'] = false;

$wgFCKEditorExcludedNamespaces[] = NS_MEDIAWIKI;

$wgFCKEditorExcludedNamespaces[] = NS_TEMPLATE;

$wgDefaultUserOptions['usebetatoolbar'] = 1;

$wgDefaultUserOptions['usebetatoolbar-cgd'] = 1;

$wgDefaultUserOptions['wikieditor-preview'] = 0;

$wgDefaultUserOptions['wikieditor-publish'] = 0;

正如一些论坛所建议的,但它没有用。谁能帮我解决这个问题?提前致谢!!

0 投票
2 回答
41 浏览

mediawiki - $wgSpamRegex 是否需要任何扩展?

$wgSpamRegex是否需要 MediaWiki 1.23.5 版中的任何扩展才能工作?

一方面,手册中的那个页面说它是“内置”到 MediaWiki 中的,但后来谈话页面上有人提到它不起作用,另一个用户建议安装SpamRegex 扩展,它已经过时但解决了用户的问题。

那么它是哪一个?

0 投票
1 回答
1247 浏览

html - 使用 xmlstarlet 提取 HTML

我正在尝试从 bash shell 脚本中提取 HTML 文档的特定部分并且一直在使用xmlstarlet sel ,但我不能完全让它返回实际的 HTML,而不仅仅是来自 HTML 标签的文本值。

我正在尝试如下命令行:

但它只提供文本,没有任何 HTML/XML 标记。对于信息,我正在尝试将此数据导出为它来自的 mediawiki 实例之外的 HTML 格式。

如果 xmlstarlet 是错误的工具,我们也非常感谢您对其他工具的任何建议!

0 投票
0 回答
46 浏览

php - 重用 Semantic MediaWiki 的 Ask DB 查询来处理我自己的数据

我有一些 MediaWiki 文章,看起来像:

我想按部分获取页面数据,然后在 PHP 中处理查询,制作自定义解析器。我制作了一个扩展 SpecialPage 的页面。

目前,我可以 getRawText() 它将返回Some Text Here===Section1===More===Section2==={{#ask:Query}}===Section3==={{#ask:Query}}.

如何处理每个查询(从数据库中获取原始数据)以便解析数据并为每个查询创建自定义输出?此外,我如何按部分处理它?从文档看来,我可以使用 extractSections() 但这是假设我知道有多少部分。我错过了什么?

0 投票
0 回答
159 浏览

node.js - 用于安装 mediawiki parsoid 的 openshift node.js 服务中的端口绑定 AECCES

我正在尝试启动 mediawiki parsoid 模块,该模块在扩展页面中写入的openshift 云 node.js 服务上运行。当我启动 Server.js 时,我收到Bind AECCES消息,我认为这是由我无法解决的端口配置问题引起的。

我对 openshift NODE.JS 中的端口监听问题不太熟悉,非常感谢您提供这样的指导。