【问题标题】:Modify MediaWiki Preview page to add a checkbox?修改 MediaWiki 预览页面以添加复选框?
【发布时间】:2016-11-09 20:59:40
【问题描述】:

如何向 Mediawiki 编辑页面添加复选框?我已经为 AlternateEditPreview 添加了一个扩展,希望它是可选的,因此最终能够在扩展代码中以编程方式检查其状态。找不到这样的例子。

【问题讨论】:

  • 使用AlternateEditPreview,您可以随意更改编辑视图,我想。究竟是什么不适合你?你有一些代码要分享吗?
  • 进一步思考,我真正想做的是在“预览”按钮旁边添加一个“检查样式”按钮,单击该按钮时,即使我可以处理或直接分派给处理程序,也会引发自定义。第二好的选项是预览按钮旁边的“检查样式”复选框,在 AlternateEditPreview 扩展中,我可以以编程方式检查状态。我正在寻找关于如何修改标准页面布局的线索。是通过修改传入扩展的 $editor 对象来完成的吗?
  • 这正是我最终要做的,也正是我所需要的——谢谢!

标签: mediawiki mediawiki-extensions


【解决方案1】:

原来它很容易解决,只需将其添加到我们已经存在的扩展中:

//Add "Check style" checkbox to standard Edit page
    public static function onEditPageBeforeEditChecks( &$editpage, &$checks, &$tabindex )
    {
            $checks[] = "<input name=\"wpStylecheck\" type=\"checkbox\" value=\"1\" tabindex=\"5\" accesskey=\"x\" id=\"wpStylecheck\" /> <label for='wpStylecheck' id='mw-editpage-stylecheck' title=\"Check style [x]\">Check style</label>";

    }

【讨论】:

    【解决方案2】:

    我建议调查WikiEditor 扩展。然而,这些模块是用 JavaScript 而不是 PHP 编写的,因此在尝试编写模块之前您应该熟悉它。

    【讨论】:

      【解决方案3】:

      打开您的 Mediawiki 安装文件夹并导航到
      /includes/EditPage.php
      在您之前制作备份副本
      开始编辑。
      上线3431
      开始编辑按钮的代码。

      【讨论】:

      • 像这样修改核心的指令是可怕的。在我检查过的 MediaWiki 的当前副本上,EditPage.php 的第 3431 行是$oldContent = $this-&gt;getCurrentContent();,与此无关。您甚至没有指定 MediaWiki 版本,即使这样 mediawiki.org/wiki/Do_not_hack_MediaWiki_core 也适用。
      • 如果您是一位经验丰富且已经熟悉使用 MediaWiki 的开发人员,请访问开发人员中心。
        mediawiki.org/wiki/Developer_hub
      猜你喜欢
      • 2018-05-06
      • 2020-12-04
      • 1970-01-01
      • 1970-01-01
      • 2014-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多