标签: mediawiki-extensions

如何在MediaWiki VisualEditor工具栏中添加链接?

我试图在VisualEditor工具栏中插入一个特殊页面的自定义链接.见下图.

链接位置 见图

我google了很多但没有成功.有人请说道......

mediawiki wikipedia visual-editor mediawiki-extensions

16
推荐指数
2
解决办法
619
查看次数

MWException类型的致命异常

我最近在Debian 7 System上的localhost中安装了MediaWiki.但是在安装之后,我得到了例外Fatal exception of type MWException.我查看了所有报告的错误,但它们不适用于我.

PHP 5.4.4 phpmyaddmin ....

mediawiki mediawiki-extensions

13
推荐指数
1
解决办法
2万
查看次数

Wikipedia Mediawiki API从URL获取Pageid

我有一套完整的网址

http://en.wikipedia.org/wiki/Episkopi_Bay
http://en.wikipedia.org/wiki/Monte_Lauro
http://en.wikipedia.org/wiki/Lampedusa
http://en.wikipedia.org/wiki/Himera
http://en.wikipedia.org/wiki/Lago_Cecita
http://en.wikipedia.org/wiki/Aspromonte
Run Code Online (Sandbox Code Playgroud)

我想找到这些URL的维基百科pageid.我之前使用过Mediawiki API,但我无法弄清楚如何做到这一点.

我尝试通过获取lastindexof("/")的子字符串和最后一个字符从URL中提取页面标题,然后查询API以获取pageid.

http://en.wikipedia.org/wiki/Episkopi_Bay --> Episkopi_Bay
http://en.wikipedia.org/wiki/Monte_Lauro --> Monte_Lauro
http://en.wikipedia.org/wiki/Lampedusa -- > Lampedusa
http://en.wikipedia.org/wiki/Himera --> Himera
http://en.wikipedia.org/wiki/Lago_Cecita --> Lago_Cecita
http://en.wikipedia.org/wiki/Aspromonte --> Aspromonte
Run Code Online (Sandbox Code Playgroud)

但问题是我的一些链接可能是重定向,因此子字符串可能并不总是页面的标题.

TL; DR:如何从URL中找到维基百科页面的pageid?

mediawiki wikipedia-api mediawiki-api mediawiki-extensions

9
推荐指数
2
解决办法
7262
查看次数

获取维基数据增量三元组

我想知道是否有可能获得 Wikidata 的最新增量 n-triple 转储。

我正在使用Wikidata Toolkit下载最新版本的转储并将它们自动转换为 n-triple 文件(使用RdfSerializationExample),但我不知道如何生成该转储的增量版本(指定修改的、新的和删除的实体) )。

我的想法是在像OpenLink Virtuoso这样的系统中维护 Wikidata 信息的更新版本。因此,我认为有必要获得n-triples的增量版本。

我知道xml version 中有转储的增量版本,但我不知道如何将它们转换为 n-triples。

那么,这是最好的方法吗?

mediawiki rdf wikidata mediawiki-extensions wikimedia-dumps

6
推荐指数
0
解决办法
288
查看次数

如何覆盖Flask蓝图URL?

我正在使用flask-mwoauthMediaWiki上的OAuth身份验证(特别是维基百科)在Flask中创建一个简单的应用程序.

flask-mwoauth 是一个蓝图,它提供了一些与Mediawiki Extensions:OAuth交互的便捷方法,并添加了以下URI:

  • /login - 运行OAuth握手并将用户返回 /
    • /login?next=/someurl 将用户返回 /someurl
  • /logout - 清除用户的访问权限
    • /logout?next=/someurl 将用户返回 /someurl
  • /oauth-callback - 来自MW的回调以完成握手

用户的OAuth密钥和密钥存储在会话中.

我希望能够为这些自定义URI创建自定义响应.举例来说/logout,响应的定义非常简单(__init__.py#L56):

@self.bp.route('/logout')
def logout():
    session['mwo_token'] = None
    session['username'] = None
    if 'next' in request.args:
        return redirect(request.args['next'])
    return "Logged out!"
Run Code Online (Sandbox Code Playgroud)

我想在我的应用程序中定义/logout带有自定义响应的路径(例如,渲染模板),但是如果我使用蓝图,那么路由将@app.route("/logout")被忽略.

我想知道是否可以"扩展"蓝图,我可以/logout在我的应用程序中定义路线,从蓝图中调用原始方法,然后提供自定义响应.

python oauth flask mediawiki-extensions

6
推荐指数
1
解决办法
764
查看次数

在MediaWiki上使用官方docker镜像时如何最好地添加扩展名?

我们正在使用正式的MediaWiki Docker映像,并希望能够添加其他MediaWiki扩展。

问题:

  1. 如果我们当前正在使用下面的docker-compose文件,并且我们在主机上装载了卷,那么建议的下一步是什么?是否要构建一个包含官方图像的新图像?在修改后的新图像的某处是否存在添加MediaWiki扩展的示例?
  2. 或者我们是否可以仅在当前docker-compose的主机上安装扩展卷,并根据需要进行调整LocalSettings.php

docker网站上的链接是指添加PHP扩展名和库,但是如果要添加MediaWiki特定的扩展名是相同的答案,这对我来说还是不清楚的,因为它确实说了“ PHP扩展名”。还是该文档页面实际上应该说“ MediaWiki Extensions”,即使这意味着它们是用PHP编写的?

这是我们当前用于mediawiki的docker-compose文件条目:

mediawiki:
  image: mediawiki
  container_name: mediawiki_production
  mem_limit: 4g
  volumes:
    - /var/www/mediawiki/uploads:/var/www/html/uploads
    - /var/www/mediawiki/LocalSettings.php:/var/www/html/LocalSettings.php
  environment:
    - MEDIAWIKI_DB_NAME=
    - MEDIAWIKI_DB_HOST=
    - MEDIAWIKI_DB_USER=
    - MEDIAWIKI_DB_PASSWORD=
    - VIRTUAL_HOST=wiki.exmaple.com
    - TERM=xterm
  restart: always
  network_mode: bridge
Run Code Online (Sandbox Code Playgroud)

我们正在考虑的扩展并不是最初的官方映像的一部分(但希望在以后提供可扩展的解决方案):

使用官方mediawiki映像作为其“ FROM”以包含mediawiki扩展和更新的docker-compose(如果需要两者)以添加mediawiki扩展的下游docker映像的任何示例都将有所帮助。如果mediawiki扩展本身依赖于基本图像中尚未包含的php扩展或库,或者添加不依赖任何其他php扩展或库的mediawiki扩展,则最好解释一下需要更改的内容。

mediawiki docker mediawiki-extensions docker-compose

6
推荐指数
1
解决办法
1317
查看次数

模拟Symfony Ldap :: create进行单元测试

最近我一直在为MediaWiki开发LDAP身份验证提供程序.在我看来,我一直试图解决这个问题已经很多天了,无法提出解决方案.

上下文

我开发此插件的方式是允许配置我们将连接的许多服务器.如果我们无法连接到一台服务器,我们将尝试下一个...依此类推,直到所有用完为止.

为了实现这一点,我在我的类中有一个函数循环尝试连接的服务器,直到成功为止:

private function connect( LdapAuthenticationRequest $req ) {
    $dn = $this->config->get( 'BindDN' )[$req->domain];
    $pass = $this->config->get( 'BindPass' )[$req->domain];
    $servers = $this->config->get( 'Servers' )[$req->domain];
    $encryption = $this->config->get( 'EncryptionType' )[$req->domain];
    if ( false === $dn ) {
        $msgkey = 'ldapauth-attempt-bind-search';
        $bind_with = [ null, null ];
    } else {
        $msgkey = 'ldapauth-attempt-bind-dn-search';
        $bind_with = [ $dn, $pass ];
    }
    $message = new Message( $msgkey, [
        'dn' => "{$dn}@{$req->domain}",
    ] );
    $this->logger->info( $message->text() );
    foreach ( $servers as …
Run Code Online (Sandbox Code Playgroud)

php ldap symfony mediawiki-extensions

6
推荐指数
1
解决办法
213
查看次数

条件类别

我使用的模板{{MyTemplate|foo}}包含以下代码:

{{#switch: {{{1}}}
 | foo = [[Category:Foo]]
 | bar = [[Category:Bar]]
 | #default = [[Category:Unknown]]
}}
Run Code Online (Sandbox Code Playgroud)

当我在页面上使用它时,类别在该页面的底部显示出很好的效果.但遗憾的是,在该类别页面(例如,类别:Foo)中,该页面未显示.

如果我[[Category:Foo]]手动添加到该页面,该页面将显示在Foo-category-page中.

有什么建议为什么这不通过模板?

mediawiki mediawiki-templates mediawiki-extensions

6
推荐指数
1
解决办法
134
查看次数

可视化编辑器无法在 MediaWiki 本地上传中搜索图像

我已经安装了最新的 MediaWiki 和最新的可视化编辑器,一切看起来都很棒,但我有一个问题。在文章中添加媒体时,无法搜索到我上传的所有图片。任何人都可以请赐教。

mediawiki visual-editor mediawiki-extensions

5
推荐指数
1
解决办法
1023
查看次数

寻找最受欢迎的MediaWiki扩展

如果这是一个新手问题,请原谅我 - 对于MediaWiki来说,我是新手.

我正在寻找视频扩展来添加到MediaWiki项目.有些可能很受欢迎,有些是神秘的.我想选择许多其他Wiki也使用的扩展.这里的视频扩展示例:https://www.mediawiki.org/wiki/Category : Video_player_extensions

如果这是一个WordPress项目,我可以在这里看到插件的受欢迎程度:https: //wordpress.org/plugins/browse/popular/

有没有办法找到MediaWiki扩展的受欢迎程度?我找到了很多"前十名",但我宁愿直接了解使用给定扩展名的Wiki安装数量.

谢谢和问候,雷

编辑:在MediaWiki邮件列表中,一位同事建议使用WikiApiary.完善! https://wikiapiary.com/wiki/Extension:Extensions

php mediawiki-extensions

5
推荐指数
1
解决办法
4813
查看次数