2016-11-02 1 views
0

В MediaWiki, возможно ли расширить магические слова в самом шаблоне перед переходом, но избегать их жесткого кодирования? Если да, то как?Магические слова MediaWiki расширяются в шаблоне

Позвольте мне пояснить вопрос на примере.

У меня есть шаблон A с некоторым магическим словом, например. {{fullpagename}}, и я хочу включить его в страницу B с {{TemplateA}}, чтобы результат на странице B после рендеринга был TemplateA.

Для чего? Я хотел бы иметь шаблон книги, от которого я бы выводим другие страницы для конкретных книг, как HansChristianAndersenFairyTales, а затем я хотел бы использовать {{:HansChristianAndersenFairyTales}} в 3-й странице сказках которая возвращающие Hans Christian Anderson, Fairy Tales [[HansChristianAndersenFairyTales|(details)]].

мне удалось сделать следующее:

шаблона Книга:

{{{author}}}, {{{title}}} /*here I don't know what to put*/ 

страница/Шаблон HansChristianAndersenFairyTales:

{{Book 
|title=Fairy Tales 
|author=Hans Christian Andersen 
}} 

Page сказках

Hans Christian Andersen, Fairy Tales /*the missing link*/ 

Я не знаю, как обрабатывать последнее включение ссылок без лишнего повторения названия среднего шаблона. Все, кажется, решено, если {{fullpagename}} будет расширяться в среднем шаблоне ... но это не так.

ответ

1

Это невозможно. Кажется тоже бессмысленным - вы можете просто перевести имя:

{{Book 
| title = Fairy Tales 
| author = Hans Christian Andersen 
| page = HansChristianAndersenFairyTales 
}} 
+0

ОК, спасибо. Я просто пытался избежать ненужного ввода текста ... но если это невозможно, я добавлю третий параметр, который будет именем страницы. – 4ndY

+0

Ну, вам нужно только создать шаблон один раз, чтобы не печатать много. Если вы действительно хотите сохранить его, вы можете использовать '{{subst: FULLPAGENAME}}' (который вы можете скопировать откуда-то, так как он будет одинаковым во всех шаблонах). 'subst' заставляет его оцениваться и заменяться при сохранении шаблона, а не при его использовании. – Tgr

Смежные вопросы