Работа с шаблонами email и чатов
Содержимое сообщений, которые отправляются из Creatio, вы можете сформировать вручную или на основании созданного ранее шаблона, адаптируя его под получателя. Шаблоны удобно использовать для отправки писем в ходе выполнения бизнес-процессов, автоматических уведомлений, а также для быстрых ответов в чатах. Все шаблоны в Creatio настраиваются в разделе Шаблоны сообщений. По умолчанию шаблоны создаются на базовом языке системы (английском). Если вы хотите использовать мультиязычные коммуникации, то начните с настройки шаблона на базовом языке. При последующем добавлении локализаций настройки базового шаблона можно будет скопировать для других языков.
Создать шаблон сообщения
Создать шаблон email
Перейдите в рабочее место Студия и откройте Шаблоны сообщений.
Нажмите кнопку Добавить и выберите в меню “Шаблон email-сообщения”.
На открывшейся странице укажите название шаблона, например “Согласование даты и времени встречи”.
Укажите источник макросов, например, “Активность”.
На детали Шаблон письма нажмите кнопку Редактировать. Откроется дизайнер контента. По умолчанию шаблоны создаются на базовом языке системы (английском). Если вы хотите использовать мультиязычные коммуникации, то после первичной настройки шаблона необходимо будет добавить в него локализации.
В дизайнере контента заполните тему письма.
Добавьте в рабочую область элемент Блок.
Добавьте в блок элемент Текст.
Удалите стандартное наполнение элемента Текст и добавьте текст вашего сообщения.
Если необходимо, добавьте макросы с данными отправителя или получателя. Это позволит персонализировать сообщение.
Расположите курсор в том месте сообщения, где необходимо вставить макрос.
Нажмите —> Стандартный макрос.
В открывшемся окне выделите необходимый макрос и нажмите Выбрать.
Сохраните шаблон.
В результате в приложении будет создан новый шаблон email-сообщения “Согласование даты и времени встречи”. Подробнее об использовании шаблонов email-сообщений читайте в статье Отправить письмо по шаблону.
На заметку. Работа в дизайнере контента и создание шаблонов со сложной версткой подробно рассмотрены в блоке статей Шаблон письма.
Создать шаблон чата
Перейдите в рабочее место Студия и откройте Шаблоны сообщений.
Нажмите кнопку Добавить и выберите в меню “Шаблон чата”.
На открывшейся странице укажите название шаблона, например “Приветствие”.
Убедитесь, что указан источник макросов “Чат”.
На детали Шаблон чата введите текст сообщения. Если вы хотите использовать мультиязычные коммуникации, то после первичной настройки шаблона необходимо будет добавить в него локализации.
Если необходимо, добавьте макросы с данными отправителя или получателя. Это позволит персонализировать сообщение.
Расположите курсор в том месте сообщения, где необходимо вставить макрос.
Нажмите —> Стандартный макрос.
В открывшемся окне выделите необходимый макрос и нажмите Выбрать.
Сохраните шаблон.
В результате в приложении будет создан шаблон сообщения для чата. Подробнее об использовании шаблонов в чатах читайте в статье Работа с чатами.
Настроить мультиязычие для шаблона
Отправляйте клиентам сообщения из системы на их языке общения при помощи мультиязычных шаблонов. Функциональность работает:
- в чатах;
- при отправке email по шаблону из панели действий или коммуникационной панели;
- в ходе отправки уведомлений по бизнес-процессам.
Настройка мультиязычных сообщений состоит из нескольких шагов:
Настройте языки, которые будут использоваться для общения с клиентами. Подробнее >>>
Настройте мультиязычные шаблоны сообщений. Подробнее >>>
Проверка языка шаблона email-сообщения
Чтобы определить язык шаблона email-сообщения, который необходимо отправить клиенту, система проверяет:
Проверка выполняется только для email-сообщений отправленных по обращениям. Установлен ли для данного почтового ящика в справочнике Список почтовых ящиков для регистрации обращений признак в поле Всегда использовать язык почтового ящика.
Если признак установлен, то адресату будет отправлен шаблон на языке почтового ящика.
Если признак не установлен, то выполняются проверки, описанные в следующих шагах.
Заполнен ли на странице контакта язык общения.
Если поле заполнено, то адресату будет отправлен шаблон на его языке общения.
Если поле не заполнено, то будет выполнен переход на следующий шаг проверки.
Указан ли язык почтового ящика.
Если язык почтового ящика указан, то адресату будет отправлен шаблон на языке почтового ящика.
Если язык почтового ящика не указан, то будет выполнен переход на следующий шаг проверки.
Заполнена ли системная настройка “Язык сообщений по умолчанию” (“код DefaultMessageLanguage”).
Если системная настройка заполнена, то адресату будет отправлено сообщение на языке, установленном в системной настройке.
Если системная настройка не заполнена, то адресату будет отправлено шаблон на языке системы по умолчанию.
На заметку. Если при отправке мультиязычных сообщений в ходе бизнес-процесса в поле Кому указаны контакты с разными языками общения или в списке есть контакты, у которых язык общения не заполнен, то для всего письма будет применен язык, настроенный по умолчанию.
Проверка языка шаблона чата
Чтобы определить язык шаблона чата, система проверяет:
- Заполнен ли на странице контакта язык общения.
- Если поле заполнено, то контакту будет отправлен шаблон на его языке общения.
- Если поле не заполнено, то будет выполнен переход на следующий шаг проверки.
- Указан ли язык канала чата.
- Если язык указан, то адресату будет отправлено письмо на языке почтового ящика.
- Если язык чата не указан, то будет выполнен переход на следующий шаг проверки.
- Заполнена ли системная настройка “Язык сообщений по умолчанию” (“код DefaultMessageLanguage”).
- Если системная настройка заполнена, то адресату будет отправлено сообщение на языке, установленном в системной настройке.
- Если системная настройка не заполнена, то адресату будет отправлено письмо на языке системы по умолчанию.
Настроить языки общения
Язык общения указывается на странице контакта в разделе Контакты. Это язык, на котором контакту будут отправляться email-уведомления. Он не зависит от настроенных языков интерфейса, в которых работают пользователи, или языка системы по умолчанию.
Для указания языка общения и формирования мультиязычных шаблонов используются значения справочника Языки общения:
Для выбора на странице контакта в разделе Контакты доступны только те языки, для которых в справочнике Языки общения установлен признак Используется.
Для использования в шаблонах сообщений по умолчанию доступны все языки, перечисленные в справочнике. Если в шаблон добавить неактивный язык, то для него в справочнике Языки общения будет установлен признак Используется.
Деактивированный язык станет недоступен для выбора в меню поля Язык общения на странице контакта, но будет отображаться, если был указан ранее. Вкладка с текстом чата или письма на таком языке будет скрыта из шаблона, но сообщения будут отправляться, если у контакта на странице указан этот язык.
В случае повторной активации языка все ранее созданные для него шаблоны снова отобразятся в справочнике.
Создать мультиязычный шаблон сообщения
Вы можете настроить мультиязычные шаблоны для писем и чатов в справочнике Шаблоны сообщений.
Чтобы создать мультиязычный шаблон:
Перейдите в рабочее место Студия и откройте Шаблоны сообщений.
Откройте шаблон, который необходимо локализировать.
Нажмите кнопку . В меню отобразятся все языки, для которых в справочнике Языки общения установлен признак Используется. Выберите язык, который необходимо добавить в шаблон.
Если в системе еще нет активных языков или вы хотите добавить вкладку на ранее не активированном языке, то выберите в меню пункт Добавить язык (Рис. 1) и в открывшемся окне выберите язык, который хотите использовать в шаблоне. Для выбранного языка будет автоматически установлен признак Используется.
Рис. 1 — Добавление в шаблон дополнительных языков
После выбора языка система предложит скопировать на добавляемую вкладку наполнение существующего шаблона. Выберите эту возможность, если необходимо использовать настроенную верстку для добавленной локализации.
Если необходимо добавить в шаблон несколько языков, то повторите шаги 3 и 4 для каждой локализации. В результате на странице шаблона появится несколько вкладок для формирования сообщений на выбранных языках (Рис. 2).
Рис. 2 — Пример мультиязычного шаблона
Выберите нужную вкладку и отредактируйте ее содержимое. Аналогичным образом сформируйте сообщения на каждом из выбранных языков.
Сохраните изменения.
На заметку. При копировании мультиязычного шаблона будут скопированы все его сохраненные локализации.
Справка:Шаблоны — MediaWiki
Other languages:
- Bahasa Indonesia
- Deutsch
- Deutsch (Sie-Form)
- English
- Lëtzebuergesch
- Napulitano
- Nederlands
- Qaraqalpaqsha
- Tagalog
- Tiếng Việt
- Türkçe
- Yorùbá
- Zazaki
- català
- dansk
- español
- français
- hrvatski
- italiano
- lietuvių
- norsk bokmål
- polski
- português
- português do Brasil
- română
- slovenčina
- suomi
- svenska
- čeština
- беларуская (тарашкевіца)
- български
- русский
- српски / srpski
- українська
- עברית
- اردو
- العربية
- سنڌي
- فارسی
- پښتو
- ߒߞߏ
- अंगिका
- भोजपुरी
- हिन्दी
- বাংলা
- ಕನ್ನಡ
- മലയാളം
- ไทย
- 中文
- 日本語
- ꯃꯤꯇꯩ ꯂꯣꯟ
- 한국어
Заметка: Рэдагуючы эту страницу, вы згаджаецеся выпусціць свой вклад под CC0. Для получения дополнительной информации чытайце Страницы #домой публичного домена. |
Если у вас есть одинаковый текст, который вы хотите разместить на нескольких страницах, то в действие вступают шаблоны MediaWiki. В отличие от расширений и медиафайлов, для шаблонов нет центрального хранилища (репозитория). Шаблоны могут быть написаны с нуля или, чтобы не делать двойную работу, взяты из другой вики, например, из Википедии, и затем сохранены в целевой вики.
Шаблоны — это обычные вики-страницы, контент которых предназначен для того, чтобы его можно было включать (встраивать) в другие страницы. Имена шаблонов, следуя общему соглашению, начинаются с префикса «Шаблон:
» («Template:
»), привязывая его к этому пространству имён, поэтому их можно создавать так же, как обычные страницы.
Пример простейшего шаблона. Если Вы создадите страницу с названием «Шаблон:Welcome» с содержимым:
Привет! Добро пожаловать в вики!
Вы создадите ваш первый шаблон! Если теперь используете код:
{{Welcome}}
на любой другой странице, то эта страница будет содержать текст «Привет! Добро пожаловать в вики!» в том месте, где вы использовали код {{Welcome}}
. Таким образом, содержимое шаблона встроилось в другую страницу.
Вы можете вставить {{Welcome}}
в любом месте любой страницы, когда захотите приветствовать кого-либо. Допустим, вы применили этот код на 100 страницах. Если теперь поменять содержимое шаблона на:
Привет всем! Добро пожаловать в этот замечательный вики-проект.
и просмотреть все 100 страниц, на которых применили шаблон, то вы увидите этот новый текст вместо изначального. Таким образом, поскольку шаблон встроен в каждую из 100 страниц, то вы единовременно поменяли содержимое всех этих страниц, не редактируя каждую в отдельности.
Это основной способ. Есть несколько дополнительных особенностей использования, которые дополняют этот способ и делают шаблоны очень полезными.
Шаблоны — это вики-страницы, используемые в других вики-страницах. Доступных способов использования три:
{{Имя}}
добавляет в страницу копию содержимого шаблона (страницы с именем [[Шаблон:Имя]]). Обращение к шаблону производится каждый раз, когда производится извлечение использующей его страницы. Таким образом, если изменить шаблон, то отображение использующих его страниц тоже изменится.{{subst:Имя}}
заменяет данную строку содержимым шаблона в момент сохранения страницы. Таким образом, после сохранения в ней остается копия шаблона, которую можно будет изменять так же, как обычную вики-разметку. После сохранения шаблон и страница редактируются независимо: изменение страницы не влияет на шаблон, изменение шаблона не влияет на страницу. Замечание: не стоит пользоваться данным способом, если вы хотите, чтобы дальнейшие изменения шаблона отображались в использующих его страницах.{{safesubst:Имя}}
— это понятие было введено, чтобы позволить замены без нарушения содержимого, см. w:en:Help:Substitution#The safesubst: modifier.{{msgnw:Имя}}
включает шаблон в виде формы, отображающейся в использующей его странице, аналогично тому как действует тэг<nowiki>
.
На самом деле, обычная Вики-страница тоже может использоваться в качестве шаблона, просто укажите пространство имён, в которой она хранится, так:
{{Шаблон:Pagename}}
содержит[[Шаблон:Pagename]]
{{Обсуждение:ИмяСтраницы}}
содержит[[Обсуждение:ИмяСтраницы]]
{{:ИмяСтраницы}}
содержит[[ИмяСтраницы]]
{{subst::ИмяСтраницы}}
заменяет себя содержимым[[ИмяСтраницы]]
Если такого пространства имён не существует, то полное название предполагает, что это шаблон:
{{Foo:Bar}}
содержит[[Шаблон:Foo:Bar]]
Чтобы расширить механизм включения, MediaWiki использует параметры, передаваемые в шаблон при его включении. Параметры шаблона позволяют генерировать различное содержание или менять модель поведения.
Предположим, вы хотите вставить маленькую благодарственную записку в странице обсуждения других пользователей, такую как:
Спасибо. .. за все ваши усилия.
жму руку, Подпись
В благодарственном сообщении будет указана причина (в данном случае «все ваши усилия») и подпись («Подпись»). Задача состоит в том, чтобы любой пользователь мог поблагодарить другого пользователя по любой причине.
Чтобы сообщение выглядело единообразно везде, где используется, можно создать шаблон под названием, например, Template:Thankyou . Хотя сообщение должно выглядеть похожим всякий раз, когда один пользователь благодарит другого, его конкретное содержание (то есть причина и подпись) могут быть разными. По этой причине вы должны передать эти особенности в качестве параметров. Если мы проигнорируем оставшиеся элементы форматирования блока и размещения изображения, основное содержимое шаблона будет таким:
'''Спасибо...''' за {{{1}}}. Обнимаю, {{{2}}}
Обратите внимание на выражения {{{1}}}
и {{{2}}}
. Это способ задать в тексте шаблона параметры, которые будут ему передаваться при его использовании. Как можно видеть, каждый параметр заключён в три пары фигурных скобок: {{{ }}}
. Это отличается от обычного использования имени шаблона.
Вставляя шаблон в страницу, вы задаете значения параметров, разделяя их символом «вертикальная черта» (|
). MediaWiki позволяет передавать параметры в шаблон в тремя способами: анонимно, по порядковому номеру и по названию параметра.
Нумерованные (анонимные) параметры
Чтобы передать в параметры анонимно, перечислите их значения по порядку:
{{Thankyou|все ваши усилия|Подпись}}
В этом случае шаблон {{Thankyou}}
принимает параметры {{{reason}}}=все ваши усилия
и {{{signature}}}=Подпись
и выдаёт:
Спасибо… за все ваши усилия.
жму руку, Подпись
Порядок параметров при анонимной передаче важен. Например, передача их в обратном порядке:
{{Thankyou|Подпись|все ваши усилия}}
приведёт к следующему результату:
Спасибо. .. за Подпись.
жму руку, все ваши усилия
Идентификация параметров по порядковому номеру ({{{1}}}
, и т.д.) работает только с анонимными параметрами. Любые параметры, идентифицированные по имени, как показано ниже, не будут доступны для шаблона при использовании порядковых номеров.
Если внутри аргумента для анонимного параметра шаблона появляется знак равенства, такой параметр может быть ошибочно принят за именованный параметр (рассматриваемый ниже в этом документе). При этом текст до знака равенства будет принят за имя параметра, а текст после — за значение аргумента. Это распространённая проблема, когда необходимо включить внешнюю ссылку или элемент HTML с атрибутами (см. задача T16235) Это можно обойти, используя вместо анонимного именованный параметр или даже нумерованный, как описано в следующем разделе.
Шаблон с нумерованными параметрами
Чтобы передать параметр по номеру, явно задайте ему таковой при передаче:
{{Thankyou|2=Подпись|1=ваше дружелюбие}}
В этом случае, шаблон {{Thankyou}}
принимает параметры {{{1}}}=ваше дружелюбие
и {{{2}}}=Подпись
, хотя они были поставлены в обратном порядке, и получается:
Спасибо. .. за ваше дружелюбие.
жму руку, Подпись
Это также может быть полезно, когда любой из пронумерованных параметров содержит знак «=».
- Примеры
<span lang="en" dir="ltr">{{Thankyou|1=adding “=”|2=Me}}</span>
делает:
Спасибо… за добавить “=”.
жму руку, Подпись
Внимание: | Это также требует нумерации других параметров |
Шаблон с именованными параметрами
Третий способ передачи параметров — по имени вместо цифр. В этом случае содержимое шаблона нужно изменить:
'''Большое спасибо...''' за {{{reason}}}. Обнимаю, {{{signature}}}
Теперь мы используем {{{reason}}}
и {{{signature}}}
для вставки параметров вместо чисел. Для передачи параметров задайте соответствующие имена при вставке:
{{Thankyou|signature=Подпись|reason=за то, что ты есть}}
В этом случае шаблон {{Thankyou}}
принимает параметры {{{reason}}}=все ваши усилия
и {{{signature}}}=Подпись
и выдаёт:
Спасибо. .. за ваши усилия.
жму руку, Подпись
Именованные параметры являются регистрозависимыми:
{{Thankyou|signature=Я|Reason=за то, что ты есть|reason=чувствительность к регистру}}
делает:
Спасибо… за чувствительность к регистру.
жму руку, Я
Преимущество использования именованных параметров в шаблоне, помимо гибкости в порядке их передачи — это делает код шаблона гораздо легче для понимания, особенно если параметров много.
Значения по умолчанию
Если вы включите в страницу шаблон, который ожидает параметры, но не передадите их аргументы (значения), например:
{{Thankyou}}
в нумерованных параметрах из примера выше вы получите следующее:
Спасибо… за {{{1}}}.
жму руку, {{{2}}}
Так как никакие аргументы не были переданы, шаблон показывает сами параметры вместо их значений. Для таких случаев может быть полезно определить значения параметров по умолчанию, т.е. значения, которые будут использоваться, если соответствующие параметры не переданы. Например, если содержимое шаблона изменить на:
'''Большое спасибо...''' за {{{reason|всё}}}. обнимаю, {{{signature|Я}}}
то выражение {{{reason|всё}}}
определяет, что если никакой аргумент для параметра {{{reason}}}
не передан, используется значение всё
. Соответственно, {{{signature|Я}}}
задает для {{{signature}}}
значение по умолчанию Я
. Теперь вставка шаблона без аргументов приведёт к следующему результату:
Спасибо… за за всё.
жму руку, Я
The value of a parameter can be an empty string. For example, in {{foo|bar=}}
or {{foo|bar=|baz=qux}}
, the foo template considers the bar
parameter to be ""
. This is different from omitting the parameter altogether, which leaves it undefined and triggers the default value mechanism described above.
Often default values are used to specify alternate names of parameters. For example, if you have {{{a|{{{b|}}} }}}
, the template will first look for a parameter named «a».
If it is not set, it will use the parameter named «b».
If neither «a» nor «b» is set, it will output nothing.
Evaluation
This is an advanced topic which you can skip unless you need it.
Generally speaking, template parameters are substituted into the template after tokenization, but as is. They are not evaluated until they are used.
This has a few consequences.
First of all, if you have a Template:Start
containing {{mytemplate
, and a Template:End
containing |foo=bar}}
, and put {{start}}{{end}}
on a page, mytemplate isn’t transcluded, because tokens like «|» cannot be added by a template and keep their special meaning in templates.
You can still use templates to control the name of a parameter or template, but you cannot split a template call amongst multiple templates.
The second consequence of this is dead-code elimination. If you make a template call like {{foo|{{DISPLAYTITLE:Bar}} }}
, and Template:Foo does not contain {{{1}}}, then the displaytitle is not used, since it is only evaluated when needed, and it there is no parameter to substitute it into, so it is never evaluated.
This usually comes into play when using Extension:ParserFunctions, and can be especially noticed when used in combination with the int:
magic word that varies by user language.
Template calls starting with the magic word subst:
or safesubst:
are evaluated in a separate first pass that only happens at save time, along with ~~~~ and links using the pipe trick.
If they cannot be evaluated during the first pass, subst:
calls are ignored, and safesubst:
are treated as if a normal template.
Many but not all parser functions, parser tags and trancluded special pages are not directly included like templates but instead are replaced by a «strip marker». This means you cannot manipulate the results with parser functions like padleft: or similar functions from extensions, as they see the strip marker instead of the result of the parser function.
Рекурсия в шаблонах
Рекурсия — это вызов какого-либо шаблона внутри самого себя. Вызов шаблона сам по себе не бросит MediaWiki в бесконечную рекурсию.
MediaWiki остановит рекурсию с именем шаблона, выделенным жирным шрифтом.
Например, если содержимое «Шаблона:Aaaa» — «a {{Aaaa}} z
«, то при вызове его на какой либо странице, будет показано «a a Template loop detected: Template:Aaaa z z».
Forbidden idiom
This safeguard precludes a potentially useful template idiom where a template self-normalizes its own calling arguments.
In this forbidden example template:d
can either be called {{d|20200311}}
or {{d|y=2020|m=3|d=11}}
.
If called in the first manner, it recurses into itself with the second argument structure (obtained using string parser functions), which then follows a unified processing path.
{{#if:{{{1|}}}|{{d|y={{#sub:{{{1}}}|0|4}}|m={{#sub:{{{1}}}|4|2}}|d={{#sub:{{{1}}}|6|2}}}}|<!-- processing path with arguments y,m,d regardless of original call pattern -->}}
If template:d
is modified to recurse into template:d/2
and template:d/2
is an identical manual copy of template:d
this idiom works fine as the self-recursion safeguard operates dynamically and not statically.
A feasible way for the MediaWiki software to loosen the self-recursion rule would be to require that each recursive call have a distinct argument count from all previous active calls, at most once recursing with the argument count non-decreasing. That would provide a strong guarantee against infinite self-recursion while enabling useful idioms such as the one described here in a flexible manner.
If the processing path is of low complexity, a simple solution using only one template is to handle each calling convention on a separate if/else branch, duplicating the logic of the processing path within each case. If the processing path is more complex, each call-structure case can delegate to an implementation template with a unified call structure which provides the final template behaviour.
Tables in parameters
Since the syntax for wikitables involves pipes in single braces ({ }) and using the pipe trick will not work in transclusion parameters, one will have to create a table as a separate page and transclude it from there.
По умолчанию содержимое шаблона отображается полностью, как при непосредственном просмотре, так и при добавлении на другую страницу. Однако вы можете управлять тем, какая часть шаблона будет включаться в страницу, с помощью тэгов <noinclude>
, <includeonly>
и <onlyinclude>
.
Всё что находится между тегами <noinclude>
и </noinclude>
будет обрабатываться и отображаться только если страница шаблона просматривается сама по себе. Возможное применения данной возможности следующие:
- Отнесение шаблонов к категориям
- Межъязыковые ссылки на похожие шаблоны на других языках
- Пояснительный текст по использованию шаблона
Противоположным образом работает тэг <includeonly>
. Текст, находящийся между тегами <includeonly>
и </includeonly>
будет обрабатываться и отображаться только когда страница шаблона включена в другую страницу. Это полезно в таких ситуациях как:
- Добавление всех страниц, содержащих данный шаблон, в категорию, без добавления самого шаблона в эту категорию. Замечание: Когда вы изменяете категории, добавляемые в страницу с использованием шаблонов, категоризация может не сработать сразу, так как она управляется Manual:Job_queue . Для принудительной повторной категоризации определенной страницы, откройте эту страницу в редакторе и сохраните её без изменений.
- Обеспечение того, чтобы код шаблона не выполнялся при просмотре самой страницы шаблона. Обычно это нужно, когда шаблон использует параметры, а его выполнение без параметров нежелательно.
Весь текст шаблона, кроме частей, заключённых в теги <noinclude>
и <includeonly>
, обрабатывается и отображается как обычно; то есть как при непосредственном просмотре страницы шаблона, так и при добавлении шаблона на другую страницу. Основное внимание уделяется тому, что находится внутри этих двух тегов.
А вот всё, что находится за пределами тегов <onlyinclude>
, исключается из обработки и отображения при вызове шаблона.
Даже разделы, помеченные как includeonly, игнорируются при вызове такого шаблона, если только они не помечены как onlyinclude.
Акцент делается на то, что находится за пределами этого тега.
Вложение всех этих тегов также возможно.
Эти три тега частичного включения дают все возможные комбинации, того, что будет обрабатываться и отображаться. Коментарии также играют роль.
Для эффективного использования шаблонов нужно их легко находить и применять. Легче всего это обеспечить, поместив на страницу шаблона пример его использования.
Чтобы найти их, пользователи могут:
- Нажать Служебные страницы > Все страницы
- В списке Пространство имён:, выбрать Шаблон и нажать Выполнить.
Например такой:
<noinclude> == Использование == Добро пожаловать пользователи: {{Thankyou|reason=ваша причина|signature=ваша подпись}} </noinclude>
Таким образом редактор сможет просто скопировать пример и модифицировать его для своих нужд.
На страницу шаблона можно сослаться как на любую другую вики-страницу. Например, ссылка Template:Navbar создаётся викикодом [[Template:Navbar]]
.
На многих Вики может быть использован шаблон Template:Tl, чтобы предоставить ссылку на шаблон отформатированной с использованием Вики-разметки таким образом, что шаблон будет показываться в виде «двойных фигурных скобок» что в случае включения шаблона исключает необходимость фактического выполнения включения шаблона. Например, код {{tl|Navbar}}
может использоваться для создания связи {{Navbar}}.
Эта конструкция обычно используется в документации по шаблонам, на страницах справки и на страницах обсуждения при обращении к шаблонам.
Такого же эффекта можно добиться и при использовании {{[[Template:Navbar|Navbar]]}}
, но {{tl}} подход предполагает гораздо меньшую типизацию.
На любой данной вики-странице шаблон Tl, если он существует, может отображать или не отображать текст в элементе «код» или в виде моноширинного шрифта. Если нет (как в этой вики), то это может сделать другой шаблон с аналогичным именем.
Например, посмотрите раздел «См. также» в документации к нашему шаблону:Tl.
Шаблоны часто требуют CSS или других шаблонов, поэтому пользователи часто испытывают проблемы с копированием шаблонов из одной вики-страницы в другую. Приведенные ниже шаги должны работать для большинства шаблонов.
Код MediaWiki
Если у вас есть права на импорт (в частности, импорт загрузки) в новую вики-страницу:
- Перейти к $экспорт оригинальной Вики, и скачать .xml-файл с полной историей всех необходимых шаблонов, а именно:
- Введите имя шаблона в большой текстовый блок, например «Template:Welcome». Обратите особое внимание на заглавные буквы и специальные символы — если имя шаблона не совсем правильно, экспорт все равно может произойти, но.xml-файл не будет содержать ожидаемых данных.
- Выберите блок «$экспорт».
- Выберите блок «$экспорт2».
- Нажмите «Экспортировать».
- Перейдите к Special:Import на новой вики и выгрузите .xml файл.
Если у вас нет прав на импорт в новую вики-страницу:
- Перейдите к шаблону, который вы хотите скопировать из исходной вики-страницы. Перейдите на страницу редактирования и скопируйте весь викитекст.
- На новой вики-странице перейдите на страницу с тем же именем, что и скопированный шаблон. Нажмите на Создать/Отредактировать и вставьте скопированный вами викитекст. В сводке редактирования каждого шаблона укажите ссылку на исходную страницу для атрибуции.
- Вернувшись в исходную вики-страницу в окне редактирования, под полем редактирования, посмотрите на список «Шаблоны, используемые на этой странице». Для каждого из перечисленных шаблонов следуйте этим инструкциям. Также сделайте это для любого шаблона, используемого любым из этих шаблонов, и так далее.
Это позволит скопировать весь необходимый код, и будет достаточно для некоторых шаблонов. Обратите внимание, что экспортируются только элементы страницы, проанализированные при рендеринге страницы, поэтому, например, подстраницы документации не экспортируются как часть этого процесса. Если это не работает, также проверьте наличие красных ссылок, перечисленных в разделе «Страницы, переведенные на текущую версию этой страницы:» под полем редактирования. Если таковые имеются, повторите описанные выше шаги и для них, а также скопируйте код в модули.
После успешного импорта шаблона и всех связанных с ним шаблонов из другой Вики отредактируйте его, чтобы изменить настройки в соответствии с вашей Вики. Например, измените логотип, удалите избыточные категории или красные ссылки.
Расширения
Расширение, часто используемое в шаблонах, это ParserFunctions. Посетите страницу Справка:Расширение:Функции Парсера и проверьте, используются ли какие-либо из перечисленных там функций в скопированных вами шаблонах. Если это так, Вы должны установить расширение Расширение:ParserFunctions . Чтобы установить его, Вам понадобится доступ системного администратора к серверу вашей установки MediaWiki.
Еще одна зависимость, которая может быть использована в шаблонах, особенно в Википедии, это Lua. Хорошим признаком для этого является наличие {{#invoke: }}
в коде шаблона.
В случае, если он используется, вам нужно установить расширение Расширение:Scribunto , а также потребуется доступ системного администратора.
На этой странице можно найти дополнительные инструкции по установке и использованию расширения.
CSS и JavaScript-код
Помимо кода MediaWiki, многие шаблоны используют CSS, а некоторым для полной работы потребуется JavaScript. Если скопированные шаблоны ведут себя не так, как ожидалось, причина может быть в этом. Чтобы скопировать необходимые CSS и JavaScript в вашу вики, Вам, обычно, нужно иметь права администратора, потому что вы будете редактировать системные сообщения в пространстве имен «MediaWiki:».
- Ищите использование CSS-классов (текст типа
class="foobar"
) в тексте шаблона. Если эти классы появятся в разделе «MediaWiki:Common.css»» или «MediaWiki:Monobook.css» на оригинальной вики-странице скопируйте эти классы в «MediaWiki:Common. css» на новой вики-странице и проверьте, все ли в порядке с шаблоном. - Если скопированный шаблон все еще не работает должным образом, проверьте, есть ли код в MediaWiki:Common.js» или «MediaWiki:Monobook.js» на оригинальной вики-странице. Если это так, вы можете попробовать скопировать его в «MediaWiki:Common.js» на новой вики-странице. Обычно рекомендуется копировать код только из надежных источников и сначала просмотреть код, чтобы определить и выбрать соответствующие части. Вы можете найти комментарии, которые могут служить подсказками для определения функциональности каждой части.
General template usage
- w:Help:Template – a little more detail than here
- m:Help:Template – содержит гораздо более подробное руководство о том, как именно функционируют шаблоны
- m:Help:Advanced templates – описывает еще более продвинутые методы, такие как динамические вызовы шаблонов и имена переменных параметров
Special constructs used in templates
- Помощь:Волшебные слова – функциональные вещи («волшебные слова»), которые вы можете найти в некоторых шаблонах
- Справка:Расширение:Функции Парсера – дополнительно причудливые функции управления такие как #if и #switch
- Справка:Функции парсера в шаблонах – руководство по использованию функций парсера в шаблонах
- Помощь:TemplateData
Other relevant information
- Help:ExpandTemplates
- Справка:Внешний поиск – пример необычного использования шаблонов.
- Manual:Importing Wikipedia infoboxes tutorial
- Extension:PageTemplates
- Manual:Создание страниц с предзагрузкой текста – Using templates as the starting text of a page
- Help:Embed page — встраиваемые страницы из пространств имен отличающихся от
Template:
.
- Хранилище шаблонов Miraheze — Шаблоны MediaWiki предназначены для общего использования.
Dolphins Whistle Their Names with Complex, Expressive Patterns
Animals
A new study quantifies how dolphins vary their “signature whistles”
By Rebecca Dzombak on
Share on Facebook
Поделиться в Твиттере
Поделиться на Reddit
Поделиться на LinkedIn0007
Распечатать
«Фирменные свистки» дельфинов, которые они используют как имена, чтобы идентифицировать себя другим и передавать личную информацию, уже давно известны как одна из самых сложных форм общения животных, когда-либо изученных. Новое исследование дает количественную оценку того, насколько эти звонки могут различаться у разных людей и в разных ситуациях.
Эксперты могут определить характерный свист дельфина с течением времени, слушая, как он взывает к своим собратьям. Животные широко варьируют эти свистки, повторяя части в петлях, изменяя высоту звука, добавляя и удаляя короткие сегменты. Новое исследование, опубликованное в Frontiers in Marine Science, , оценивает эти изменения с помощью базы данных почти 1000 сеансов записи, в ходе которых были собраны свистки примерно 300 отдельных дельфинов за четыре десятилетия*. птицы), авторы использовали статистическую метрику, которая оценивает 21 аспект звука, например длину, частоту, высоту тона и рисунок. Чем больше каждая особь варьировала аспекты в каждом крике и чем больше крики различались между разными людьми, тем выше оценка вида. Звуки идентификации афалин имели самую большую звуковую палитру в недавней сравнительной статье, за которой следовали звуки жаворонков; исследователи еще не пришли к единому мнению о том, каковы люди.
Этот показатель удобен для сравнения разных видов, говорит морской биолог из Океанографического института Вудс-Хоул Лаэла Сайиг, ведущий автор исследования дельфинов. Но она отмечает, что 21 грань едва затрагивает истинную сложность свистков дельфинов. «На самом деле это просто феноменально, — говорит Сайиг, — что даже с использованием этой «грубой» метрики «дельфины являются наиболее индивидуально отличительными коммуникаторами».
Эколог-бихевиорист Южночешского университета Павел Линхарт, который не участвовал в исследовании, но руководил межвидовым сравнением, говорит, что он рад, что исследователи подсчитали эту изменчивость. «Я думаю, что из-за того, что было настолько очевидно, что [людей] так легко идентифицировать, они не проводили количественную оценку раньше», — добавляет он.
Ученые только начинают изучать причины, по которым дельфины изменяют свой фирменный свист — например, для выражения эмоциональных состояний. Будущая работа поможет расшифровать общие, несигнатурные свистки, которыми обмениваются дельфины, говорит Сайиг. «Мы действительно находимся в зачаточном состоянии, чтобы понять их».
*Примечание редактора (20.10.22): это предложение было отредактировано после публикации, чтобы исправить описание 1000 сеансов записи свистков.
Первоначально эта статья была опубликована под названием «Проверка имени» в журнале Scientific American 327, 5, 25 (ноябрь 2022 г.)
doi:10.1038/scientificamerican1122-25
ОБ АВТОРЕ(АХ)
Ребекка Дзомбак — независимый научный писатель, освещающий науки о Земле и мир в антропоцене.
Читать дальше
Информационный бюллетень
Будьте умнее. Подпишитесь на нашу новостную е-мэйл рассылку.
Регистрация
Поддержка научной журналистики
Откройте для себя науку, которая изменит мир. Изучите наш цифровой архив с 1845 года, включая статьи более 150 лауреатов Нобелевской премии.
Подпишитесь прямо сейчас!Микропаттерн: конфетоподобная смесь может печатать узоры на микроскопических объектах
Образцы микроскопических дисков, колец или букв могут быть добавлены к микророботам или эластичной электронике с растворенной сахарной смесью
Физика 24 ноября 2022 г.By Karmela Padavic-Callaghan
Зерна пыльцы, на которые были нанесены микроскопические диски с веществом, напоминающим леденцы усеянные крошечными металлическими дисками или кольцами, использовались для нанесения узоров на микроскопические объекты. Этот метод создания текстуры на небольших объектах может быть полезен для биомедицинских роботов или гибкой электроники.
Чтобы расширить функциональные возможности микроскопических роботов или небольших электронных схем, исследователи часто украшают их поверхности узорами из еще более мелких объектов, таких как магниты. Они часто делают эти компоненты на плоской чистой поверхности, а затем штампуют их на более крупном объекте.
Но точное применение их таким образом становится затруднительным, когда принимающие объекты не являются гладкими, говорит Гэри Забоу из Национального института стандартов и технологий в Колорадо. Он придумал, как использовать сахар и кукурузный сироп, чтобы добавлять микроузоры даже к самым неправильным и зазубренным объектам.
Реклама
Сначала он укладывал диски и кольца микронного размера из серебра или платины в узор, такой как массив или буква, а затем поливал их теплой смесью сахара и кукурузного сиропа. Добавление кукурузы предотвращает кристаллизацию сахара и нарушение рисунка. Компоненты застревали в смеси, когда она затвердевала, превращаясь в нечто похожее на карамель. Затем Забоу нанес эту затвердевшую смесь на объект, который он хотел создать, и повторно нагрел ее, чтобы она растеклась и обернулась вокруг объекта под ней — как леденец Jolly Rancher, тающий на солнце. Наконец, он растворил сахарную смесь водой, и на поверхности объекта остались только те компоненты, которые застряли в ней.
Искусственное цветное изображение букв из золота, перенесенных на прядь волос
Гэри Забоу/NIST
Забоу протестировал метод на объектах, начиная от металлических кубиков микронного размера и стеклянных шариков и заканчивая пыльцевыми зернами, отдельные волоски и эритроциты.