用户:Evesiesta/vfs
介绍
[编辑]这是一个用于快速签名和回签的维基百科模板。它通常用在访客留言区或签名页,其核心功能是根据用户是否已在特定页面签名过,自动生成不同的签名文本。这个模板利用了维基百科的解析器函数和Lua模块,并且会自动插入你的签名和时间戳。
机制/原理
[编辑]该模板的核心机制是使用 {{#invoke:Talkpage|count|...}} Lua模块来检查特定页面(例如 User:Evesiesta/访客签名区)中是否存在当前用户的签名记录。
自动判断签名/回签:
如果模块返回的计数为 0(即没有签名记录),模板会生成“快速签名”的文本,并附带欢迎回签的提示。
如果计数大于 0(即已有签名记录),模板会生成“快速回签”的文本,并附带感谢签名。
参数覆写:
模板提供了参数 a 和 b,允许用户手动覆写自动判断的结果,强制生成签名或回签文本。
模板替换(subst:):
使用时必须加上 {{subst:...}} 前缀。这会将模板代码在保存页面时替换为最终生成的文本。这样做可以减轻服务器负担,并确保签名内容不会因模板后续修改而改变。
用法
[编辑]使用时,请将以下代码复制并粘贴到你想要签名的地方。最基本的使用方式是让模板自动判断。
参数
[编辑]该模板支持以下几个参数,你可以选择性地使用它们:
参数 1:用于添加自定义的留言或文本。这些内容会显示在“快速签名/回签”文本之后,你的签名之前。
参数 a:用于手动控制是否启用自动判断。
a=1、a=y 或 a=yes:强制启用自动判断机制。
a=0 或 a=n:忽略自动判断,转而看参数 b 的值。
参数 b:当 a=0 或 a=n 时生效。
b 有值(例如 b=1):强制生成“回签”文本。
b 无值(例如不输入 b 或 b=):强制生成“签名”文本。
示例
[编辑]自动判断(最常用):
{{subst:模板名}}
如果之前未签名,将生成“快速签名”。
如果之前已签名,将生成“快速回签”。
带自定义留言:
{{subst:模板名|感谢你来这里留言,欢迎你随时再来!}}
这会在签名文本之前加上你自定义的内容。
强制生成“回签”:
{{subst:模板名|a=0|b=1}}
这会忽略自动判断,直接生成“快速回签”文本。
强制生成“签名”:
{{subst:模板名|a=0}}
这会忽略自动判断,直接生成“快速签名”文本。
注意事项
[编辑]务必使用 subst: 前缀:这是确保模板代码被最终文本替换的关键。如果没有使用 subst:, 你只会看到模板调用本身,而无法生成签名。
确保模板名称正确:示例中的 模板名 应替换为实际的模板名称。
技术细节
[编辑]模板的代码使用了以下几个维基百科内置的解析器函数和Lua模块:
{{subst:...}}:模板替换机制。
{{#if: ... }}:用于条件判断参数是否存在。
{{#switch: ... }}:用于根据参数 a 的值进行多重分支判断。
{{#ifeq: ... }}:用于判断两个值是否相等。
{{#invoke:Talkpage|count|...}}:这是Lua模块调用,用于统计特定页面中某个用户(通过 {{ROOTPAGENAME}} 获取)的留言数量。
{{ROOTPAGENAME}}:一个魔术字,用于获取当前页面的根页面名称,即用户名。
--~~~~:用于自动生成签名和时间戳。
重定向
[编辑]{{u:Evesiesta/速签}} {{u:uevs/速签}} {{u:uevs/vfs}}
参见
[编辑]{{u:uevs/vfb}}