#mediawiki #mediawiki-extensions #mediawiki-templates
#mediawiki #mediawiki-расширения #mediawiki-шаблоны
Вопрос:
Контекст этого вопроса предназначен для отслеживания того, из каких шаблонов поступает переведенный контент.
Похоже, что встроенного средства, которое делает это, нет (см.https://www.mediawiki.org/wiki/Help:Magic_words). Большинство из них относятся к заголовкам страниц, как вы могли бы видеть в строке URL.
Вот гипотетический пример того, что я ищу:
Содержимое «Template:Foo»
<includeonly>You transcluded Template:{{TEMPLATENAME}}</includeonly>
Содержимое «Страницы примера»
{{Foo}}
Как должна выглядеть «Страница примера»:
You transcluded Template:Foo
Использование {{PAGENAME}} или аналогичное не работает, потому что они используют текущую страницу, на которой они применяются. Например, если Template:Foo использовал {{PAGENAME}} вместо гипотетического {{TEMPLATENAME}}, то содержимое страницы примера было бы «Вы перевели шаблон: Страница примера», что было бы неверно.
Ответ №1:
Вы можете получить к нему доступ только через фрейм синтаксического анализа. Расширение Scribunto делает это доступным, если вы его не используете, вам придется написать свою собственную функцию синтаксического анализа (и объявить ее с SFH_OBJECT_ARGS
опцией, чтобы фрейм был передан ей).