Transclusion/ru

Трансклюзия - это включение содержимого одного документа в другой с помощью простановки ссылки (reference). В Вики это использование шаблонов от MediaWiki  для включения одного контента в несколько документов без необходимости редактировать каждый из них по отдельности.

Механизм трансклюзии



 Синтаксис

Если источник находится в пространстве имён Шаблон (англ. Template) (например, шаблон приветствия "Welcome" (Template:Welcome на английском в MediaWiki или "Добро пожаловать" в русской версии Википедии)), просто вставьте это имя / название шаблона само по себе:

Если источник находится в основном пространстве имён статей (например, визуальный редактор "$catname"), перед названием следует вставить двоеточие, как в примере:

Если источник находится в любом другом пространстве имён (например, участников (users) вики "$userexample" "Участник:Такой-то"), требуется указать полное название страницы, включая пространство имён, где она находится:

Если источник - какая-то из подстраниц целевой страницы, (например, подстраница на японском языке страницы о трансклюзии  "$subpageexample"), можете просто указать имя  исходной подстраницы вне зависимости от того, в каком она пространстве имён:



Для трансклюзии любой страницы - "источника" (внутри какого-либо одного проекта MediaWiki, такого как Википедия) на другую страницу вставьте в эту другую следующий код:, где вместо SOMEPAGE подставьте название исходной страницы.

Когда мы передаём содержимое страницы B на странице A, оно полностью отобразится там, где мы вставим шаблон трансклюзии - название упоминаемой страницы в двойных фигурных скобках

Например, вы можете решить поместить приветствие на странице обсуждения у каждого нового участника. Трансклюзия создает "живую" связь (link "ссылку") между страницей шаблона приветствия и страницей участника или страницами неограниченного числа участников, на которых приветствие отобразится. Изменения на странице шаблона отобразятся на всех страницах, куда вставлена ссылка на него в указанном формате трансклюзии.

Вы можете также захотеть создать страницу (шаблона) со своим почтовым адресом и включить этот шаблон не только на свою страницу, but но и на страницы всех своих друзей. Переехав на другую квартиру, вы сможете поменять данные на странице шаблона вашего адреса, и он автоматически обновится на страницах всех ваших друзей.

Происхождение термина

Термин "трансклюзия" "transclusion" придумал Тед Нельсон наряду с терминами "Гипертекст" и "Гипермедиа " в своей книге 1982 "Литературные машины".

Частичная трансклюзия

Используя теги разметки "noinclude" ("не включать"), "onlyinclude" and "includeonly", ("включать только") можно задать выводить на целевую страницу лишь часть страницы источника вместо целой. Частичная трансклюзия может быть и с других страниц - например, подстраниц. Часто желательно отображать не всю информацию - например, не выводить за пределы исходной страницы документацию шаблона и его категории.

Разметка трансклюзии

 * noinclude - Постановка  означает, что текст между тегами не будет отображаться на другой странице и появится только на текущей. Это требуется для документации шаблонов и их категорий.
 * includeonly - Постановка  означает, что текст между тегами не будет отображаться на другой странице и появится только на текущей. Это может пригодиться, например, для простановки категорий на страницы, содержащие тот или иной шаблон,без включения страницы самого шаблона в эти категории.
 * onlyinclude - Теги  указывают, что только текст между ними "onlyinclude" отобразится на другой странице, но будет виден на самой странице, если не снабжены еще и тегами "includeonly". Этот тег частичной трансклюзии самый тонкий, так как нередко отменяет действие других. Если на странице есть хоть одна пара тегов "onlyinclude", то когда мы задаем ее трансклюзию, только материал между тегами "onlyinclude" выводится на целевую страницу. Таких участков текста может быть несколько, и внутри каждой часть текста может дополнительно исключаться тегами "noinclude" и может также окружаться тегами "includeonly", чтобы не отображаться на самой исходной странице. Но текст за пределами тегов "onlyinclude" будет игнорироваться при трансклюзии страницы на другую. Это может пригодиться для повторения небольшой части одной страницы на другой: просто заключите эту небольшую часть между тегами onlyinclude, и она отобразится на нужной другой странице. Заметьте, что в отличие от  и,  имеет приоритет над окружающими тегами . Другими словами, Мой текст покажет при трансклюзии только "Мой текст".

Подстраницы
You can cut and paste the text to be transcluded into a subpage, then use the name of the subpage in the transclusion template. This approach can be used only where subpages are enabled; for example, on the English Wikipedia, subpages can be used only from User, Talk or Wikipedia pages; currently, subpages cannot be created from main article pages.

Example: you want to discuss the deletion and redirecting of Pussycat to Cat. First, create the subpage Talk:Pussycat/Let's delete Pussycat!, write your comment into it, then transclude it in Talk:Pussycat and Talk:Cat using the template  . Comments posted in either talk page will be shown in both.

Служебные страницы

 * See also:w:Wikipedia:Transclusion and 

Some pages on Special:Specialpages can be transcluded, such as Special:AllPages, Special:PrefixIndex, Special:NewFiles, Special:NewPages, Special:RecentChanges and Special:RecentChangesLinked.

Sample: gives 3 new pages.

URL parameters can be given like template parameters, e. g..

Alternatives to transclusion by template
Occasionally you may want to use a template, but for one reason or another may not want to use transclusion. The automatic one-time copying of a template's code/text to the location of a template tag is called Template substitution or subclusion (substitution + transclusion). To subclude a template's code/text, the template tag is modified from the standard transclusion tag to a substitution tag, simply by adding subst:, creating a tag with the form:.

Labeled Section Transclusion
An extension called Labeled Section Transclusion enables marked sections of text to be transcluded. An extension with a somewhat similar function is PageVariableExtension.

Semantic MediaWiki
The Semantic MediaWiki extension uses inline queries to query and display semantic data. There are currently two ways to perform transclusion or something similar: See inline queries for further information.
 * 1) Transclusion proper. The display format "embedded" ensures that selected pages (mainspace articles, templates, etc.) are transcluded. As with templates, sections placed between noinclude tags will be omitted.
 * 2) Selected passages in a page can be assigned a property of type 'Text'. These selections can be requested by running an inline query for this type of property.

Pages related to MediaWiki transclusion

 * w:Wikipedia:MediaWiki namespace
 * m:Help:MediaWiki namespace
 * m:Help:Variable
 * w:Wikipedia talk:Template namespace

Шаблоны

 * w:Wikipedia:Template namespace
 * w:Wikipedia:Template limits

Смотрите также

 * Request for template transclusion from Commons (interwiki templates, etc.)
 * w:Wikipedia:Substitution (the opposite of transclusion)
 * Extension:Labeled Section Transclusion

fa:ویکی‌پدیا:تراگنجانش fr:Wikipédia:Inclusion ko:위키백과:문서 끼워넣기 yi:װיקיפּעדיע:אריינשטעלן zh:Wikipedia:嵌入包含 pt:Wikipedia:Predefinições