打开/关闭菜单
打开/关闭个人菜单
未登录
登录即可进行编辑

模板:Da smw/doc

模板页面

{{da smw}} is a specialised version of {{da}} which makes it possible to strip the dab term from SMW-rich variables in infoboxes or other templates whose goal is to both collect and display data within the same template -- for example, {{Infobox Person}}. In such situations, the normal procedure of using {{da}} fails spectacularly, because SMW itself is creating an unusual kind of link. The standard linked output looks like this:

[[The Eleventh Hour (TV story)|The Eleventh Hour (TV story)]]

For whatever reason, the SMW coders create links in this very redundant way, which means the only solution is to get rid of the second dab term only.

The only recourse is the use of the #sub parser function, with which you can take off a negative number of letters at the end of the string, resulting in

[[The Eleventh Hour (TV story)|The Eleventh Hour

Add a closing pair of brackets — ]] — and you're golden!

This is a very different principle, however, to the one on which {{da}} works. That template uses a #switch parser function to figure out what kind of page it's on -- (TV story), (comic story), etc. -- and then truncates that specific dab term.

This template doesn't use a #switch at all. Instead, it uses a single calculation to figure out the position of the parentheses, and then it eliminates everything from the space before the opening parentheses to the closing parentheses.

我们提供服务需要使用Cookie。您使用我们的服务,即表示您同意我们使用Cookie。