universal-omega / dynamic-page-list3
DynamicPageList3 扩展允许根据文章的类别、命名空间、标题、引用或模板使用情况创建其他文章的列表,并将这些文章的模板调用内容或参数包含到您的页面中。
Requires
- composer/installers: >=1.0.1
Requires (Dev)
- dev-master
- 3.5.2
- 3.5.1
- 3.5.0
- 3.4.6
- 3.4.5
- 3.4.4
- 3.4.3
- 3.4.2
- 3.4.1
- 3.4.0
- 3.3.10
- 3.3.9
- 3.3.8
- 3.3.7
- 3.3.6
- 3.3.5
- dev-dependabot/composer/mediawiki/mediawiki-codesniffer-44.0.0
- dev-dependabot/github_actions/codacy/codacy-analysis-cli-action-4.4.5
- dev-exceptions
- dev-Universal-Omega-patch-3
- dev-Universal-Omega-patch-5
- dev-REL1_39
- dev-Universal-Omega-patch-2
- dev-revision
- dev-revision-REL1_38
- dev-REL1_38
- dev-REL1_37
- dev-REL1_36
- dev-REL1_35
- dev-REL1_35_0
This package is auto-updated.
Last update: 2024-09-30 04:06:23 UTC
README
DynamicPageList3 扩展是 MediaWiki 的一个报告工具,列出了类别的成员以及与各种格式和详细信息的交叉。有关完整文档,请参阅 手册。
使用一组基本的筛选参数调用时,DPL3 将显示一个或多个类别中的页面列表。选择也可以基于作者、命名空间、日期、名称模式、模板使用或对其他文章的引用等因素。输出有多种形式,其中一些包含了所选文章的元素。
此扩展通过解析函数 {{#dpl: .... }}
或解析标签 <DPL>
调用。可以通过 <DynamicPageList>
调用与 Wikimedia 兼容的某些功能的实现。
复杂的查找可能导致计算量大的数据库查询。然而,默认情况下,所有输出都将缓存一小时,以减少在每次页面加载时重新运行查询的需求。有关可以使用以禁用缓存并允许即时更新的参数的信息,请参阅 DPL:Parameters: 其他参数 手册页面。
- 手册和完整文档: 文档
- 源代码: GitHub 上的源代码
- 错误和功能请求: GitHub 上的问题
- 许可:DynamicPageList3 在 GNU 通用公共许可证,版本 3 下发布。
安装
请参阅 发行版页面 了解最新版本。
配置
这些是 DPL3 的配置设置及其默认值。要更改它们,确保在将扩展包含到维基上之前定义它们。更多配置信息可在 MediaWiki 扩展页面 上找到。
注意:在版本 3.0.4 中,配置变量名称已从 $dplSettings
更改为 $wgDplSettings
。这是为了便于与 Mediawiki 1.25 的扩展注册更改兼容。
DPL3 会自动尊重全局变量 $wgNonincludableNamespaces
。它将防止列出命名空间的内容出现在 DPL3 的输出中。
注意:$wgDplSettings['maxResultCount']
是 SQL 查询本身的 LIMIT。一些 DPL3 查询参数(如 includematch
)是在 SQL 查询 之后 应用的,因此这里的结果可能容易产生误导。
功能丰富性
DynamicPageList3 有许多功能,这些功能基于最大功能丰富性级别解锁。其中一些可能会引起高 CPU 或数据库负载,因此应谨慎使用。
$wgDplSettings['functionalRichness'] = 0
等同于维基媒体百科的 动态页面列表(DynamicPageList)$wgDplSettings['functionalRichness'] = 1
添加额外的格式化参数$wgDplSettings['functionalRichness'] = 2
为模板和页面链接添加性能等效的功能$wgDplSettings['functionalRichness'] = 3
允许更昂贵的页面包含功能和正则表达式查询$wgDplSettings['functionalRichness'] = 4
允许奇特且可能危险的批量更新和删除操作;不建议用于公共网站。包括用于测试和开发的调试参数。
用法
扩展 DPL3 功能
通过使用解析器函数 {{#dpl: .... }}
或解析器扩展标签 <DPL> .... </DPL>
调用扩展 DPL3。
参见 手册 - 通用用法和调用语法 和 DPL:参数 - 页面选择标准
向后兼容性
与维基媒体百科 DPL 扩展(Intersection)兼容的功能可以通过 <DynamicPageList> .... </DynamicPageList>
调用。更多信息可以在 兼容性手册页 上找到。
使用哲学和概述
假设有一些关于 国家 的文章,这些文章通常有三个共同点
- 它们将属于一个共同类别
- 它们将具有相似的章节结构,即它们将包含名为 '宗教' 或 '历史' 的段落
- 它们将使用一个模板,用于以优雅的方式呈现高度结构化的简短数据项(例如,'首都'、'居民' 等)
基于 国家 生成报告
如果有必要汇编一份关于哪些国家实践某种宗教的报告,这可以很容易地通过 类别 和 链接到 参数来完成。
{{#dpl: category=countries |linksto=Pastafarianism }}
使用 DPL3 可以
- 生成所有这些文章的列表(或随机样本)
- 显示文章的元数据(受欢迎程度、最后更新日期等)
- 显示文章的一个或多个章节('转译' 内容)
- 显示传递给公共模板的参数值
- 适当地排序文章
- 以可排序表格(例如)的形式呈现结果
- 生成多列输出
需要哪些步骤?
找到您想要列出的文章
- 通过类别(AND、OR、NOT)的逻辑组合进行选择
- 指定文章必须分配到的类别数量的范围
- 通过命名空间(AND、OR、NOT)的逻辑组合进行选择
- 定义必须匹配文章名称的图案
- 指定文章必须或必须不链接到的页面
- 指定文章必须或必须不使用的模板
- 指定必须出现在页面外部链接中的文本模式
- 排除或包含重定向
- 将搜索限制为稳定页面或质量页面("标记修订")
- 使用其他选择标准,如作者、最后更改日期等
- 定义用于匹配您想要包含的页面内容的正则表达式
根据以下内容对文章结果列表进行排序
- 文章名称
- 文章大小
- 最后更改日期
- 最后编辑用户
定义您想要看到的属性
- 文章名称
- 文章命名空间
- 文章大小
- 最后更改日期
- 最后访问日期
- 最后编辑用户
定义您想要显示的内容
- 全文
- 某些部分的正文(由标题标识)
- 文本部分(由文章中的特殊标记标签定义)
- 模板调用值
- 使用自定义模板来显示输出
定义输出格式
- 指定默认输出的页眉和页脚
- 使用有序列表或无序列表
- 使用表格
- 通过将模板应用于内容,单独格式化表格字段
- 使用类别样式列表
- 截断标题或内容到最大长度
- 在文章或其某个或多个部分中添加链接
注意事项
性能
DPL3的代码执行和数据库访问对于典型类别和文章查找通常很快。然而,使用松散的LIKE和REGEXP匹配参数和/或请求大量数据集可能会导致数据库访问时间变长。还应考虑解析时间。例如,将图像结果的查询放入显示它们的模板中,将导致每个媒体转换的解析媒体转换。这可能会迅速消耗每个媒体转换约2MB的RAM。
另请参阅
进一步阅读
DPL3的功能远不止我们在这里所能解释的。一个完整的手册提供了完整的参数文档。