模块:Protection banner/doc
这是Module:Protection banner的文档页面
![]() | 此模块文档被引用于约4,700个页面。 为了避免造成大规模的影响,所有对此模块文档的编辑应先于沙盒或测试样例上测试。 测试后无误的版本可以一次性地加入此模块文档中,但是修改前请务必于讨论页发起讨论。 模板引用数量会自动更新。 |
![]() | 此模块文档已被保护。此为高度可见模块文档,其已用于大量条目或被频繁替换引用。由于破坏或失误会影响诸多页面,即便细小的改动也可能导致大量服务器负载,因此已被保护,不可编辑。 |
This module creates protection banners and padlock icons that are placed at the top of protected pages.
Usage
[编辑]Most users will not need to use this module directly. For adding protection templates to pages you can use the {{pp}} template, or you may find it more convenient to use one of the more specific protection templates in the table below.
![]() |
{{pp-meta}}
|
全保护 | 延伸确认保护 | 半保护 | 移动保护 |
---|---|---|---|---|---|
争议: | {{pp-dispute}} |
{{pp-move-dispute}}
| |||
破坏: | {{pp-vandalism}} |
{{pp-move-vandalism}}
| |||
高风险模板: | {{pp-template}} |
不适用 | {{pp-template}} |
不适用 | |
高风险模块: | {{pp-module}} |
不适用 | {{pp-module}} |
不适用 | |
用户讨论页: | {{pp-usertalk}} |
不适用 | {{pp-semi-usertalk}} |
不适用 | |
傀儡: | 不适用 | {{pp-ecp-sock}} |
{{pp-semi-sock}} |
不适用 | |
生者传记: | 不适用 | 不适用 | {{pp-semi-blp}} |
不适用 | |
长期: | 不适用 | 不适用 | {{pp-semi-indef}} |
{{pp-move-indef}}
| |
通用: | {{pp}} |
{{pp-move}}
| |||
基金会行动: | {{pp-office}} |
不适用 | {{pp-reset}} |
不适用 | |
讨论页信息: | {{Permanently protected}} |
不适用 | {{Temporarily protected}} |
不适用 | |
白纸保护: | {{pp-create}} |
不适用 |
From wikitext
[编辑]{{#invoke:Protection banner|main | 1 = reason | small = yes/no | action = action | date = protection date | user = username | section = talk page section name | category = no }}
The #invoke syntax can be used for creating protection templates more specific than {{pp}}. For example, it is possible to create a protection template which always shows a padlock icon by using the code {{#invoke:Protection banner|main|small=yes}}
. Pages which call this template will still be able to use other arguments, like action. However, this only works one level deep; a page calling a template which calls another template containing the above code will not automatically be able to use parameters like action.
Note: You should no longer specify the expiry, as it is automatically retrieved in all cases.
From Lua
[编辑]First, load the module.
local mProtectionBanner = require('Module:Protection banner')
Then you can make protection banners by using the _main function.
mProtectionBanner._main(args, cfg, titleObj)
args is a table of arguments to pass to the module. For possible keys and values for this table, see the parameters section. The cfg and titleObj variables are intended only for testing; cfg specifies a customised config table to use instead of Module:Protection banner/config, and titleObj specifies a mw.title object to use instead of the current title. args, cfg and titleObj are all optional.
Parameters
[编辑]All parameters are optional.
- 1 - the reason that the page was protected. If set, this must be one of the values listed in the reasons table.
- small - if set to "yes", "y", "1", or "true", a padlock icon is generated instead of a full protection banner.
- action - the protection action. Must be one of "edit" (for normal protection), "move" (for move-protection) or "autoreview" (for pending changes). The default value is "edit".
- date - the protection date. This must be valid input to the second parameter of the #time parser function. This argument has an effect for reasons that use the PROTECTIONDATE parameter in their configuration. As of July 2014, those were the "office" and "reset" reasons.
- user - the username of the user to generate links for. As of July 2014, this only has an effect when the "usertalk" reason is specified.
- section - the section name of the protected page's talk page where discussion is taking place. This works for most, but not all, values of reason.
- category - categories are suppressed if this is set to "no", "n", "0", or "false".
Reasons
[编辑]The following table contains the available reasons, plus the actions for which they are available.
原因 | 操作 | 描述 |
---|---|---|
blp | edit | 为了遵守 生者传记方针而保护的页面 |
dispute | edit | 由于编辑争议而被保护的页面 |
dmca | edit | 因数字千年版权法移除通知而被维基媒体基金会保护的页面 |
mainpage | edit | 由于在Wikipedia:首页展示而被保护的页面 |
office | edit | 被维基媒体基金会保护的页面 |
reset | edit | 被维基媒体基金会保护,并将其“重置”为纯粹版本的页面 |
sock | edit | 由于滥用傀儡而被保护的页面。 |
template | edit | 高风险模板和Lua模块 |
usertalk | edit | 由于特定用户破坏而被保护的页面 |
vandalism | edit | 由于破坏而被保护的页面 |
dispute | move | 由于标题争议而被移动保护的页面 |
vandalism | move | 由于移动破坏而被保护的页面 |
Errors
[编辑]Below is a list of some of the common errors that this module can produce, and how to fix them.
Invalid protection date
[编辑]Error: invalid protection date ("abc")
This error is produced if you supply an |date=
parameter value that is not recognised as a valid date by the #time parser function. If in doubt, you can just use a date in the format "dd Month YYYY", e.g. "16 9月 2024". To see a full range of valid inputs, see the #time documentation (only the first parameter, the format string, may be specified).
Invalid action
[编辑]Error: invalid action ("abc")
This error is produced if you specify an invalid protection action. There are only three valid actions: edit
(the default, for normal protection), move
(for move-protection), and autoreview
(for pending changes). This should only be possible if you are using a template that supports manually specifying the protection action, such as {{pp}}, or if you are using #invoke directly. If this is not the case, please leave a message on Module talk:Protection banner.
Reasons cannot contain the pipe character
[编辑]Error: reasons cannot contain the pipe character ("|")
This error is produced if you specify a reason using the |1=
parameter that includes a pipe character ("|"). Please check that you are not entering the {{!}} template into this parameter by mistake. The pipe character is disallowed as the module uses it internally. A list of valid reasons can be seen in the reasons section.
Other errors
[编辑]If you see an error other than the ones above, it is likely to either be a bug in the module or mistake in the configuration. Please post a message about it at Module talk:Protection banner.
Technical details
[编辑]This module uses configuration data from Module:Protection banner/config. Most of the module's behaviour can be configured there, making it easily portable across different wikis and different languages.
General test cases for the module can be found at Module:Protection banner/testcases, and test cases specific to enwiki's config can be found at Module:Protection banner/config/testcases.
Bug reports and feature requests should be made on the module's talk page.