Ця сторінка — довідка, призначена для подання опису певних аспектів вікіпедійних норм, звичаїв, практик. Вона може відображати різні рівні консенсусу, але це не політика і не настанова.
Про принципи застосування й оформлення шаблонів Вікіпедії див. Вікіпедія:Шаблони.
Шаблони — це спеціальний клас сторінок Вікіпедії, вміст яких динамічно включається в текст інших сторінок.
Вікірозмітка для виклику шаблону на сторінці складається з пари відкривальних фігурних дужок ({), назви шаблону, і пари закривальних фігурних дужок (}):
{{<Назва шаблону>}}
При перегляді сторінки, замість цього коду буде вставлено текст шаблону із назвою <Назва шаблону>. Якщо шаблон {{назва шаблону}} ще не існує, то відобразиться «червоне» посилання на відсутню сторінку: Шаблон:Назва шаблону. Щоб уникнути цього, переконайтесь перед збереженням сторінки, що усі використані Вами шаблони існують. Зробити це можна скориставшись функцією попереднього перегляду.
Статті з головного простору назв можна використовувати так само як і шаблони додаючи двокрапку (:) перед назвою статті, за допомогою такої синтаксичної конструкції:
{{:Назва статті}}
Це корисно для вбудовування сторінок одна в одну і комплектування «комплексних» сторінок, які складаються з окремих розділів, що, в свою чергу, можуть бути окремими сторінками, ба, навіть, статтями. У багатьох Вікіпедіях така можливість використовується для будування, наприклад, сторінок багатозначності, що містять переліки окремих значень поняття.
Якщо назва сторінки — це зображення чи категорія, то виклик шаблону поверне опис зображення чи категорії. Така можливість використовувати будь-яку сторінку як шаблон дає змогу експериментувати із шаблонами, не створюючи зайвих сторінок у просторі назв Шаблон:, чи використовувати підписи та пояснення до зображень.
Пам'ятайте, що назва сторінки (також шаблону) у Вікіпедії чутлива до регістру (окрім першої літери).
Значення параметрів (у термінах програмування — змінних) шаблону підставляються після повної обробки питомої сторінки, тобто, наприклад, якщо шаблон містить параметри, або парсерні функції, що залежать від сторінки (або часу) його розміщення/включення — він буде повертати текст або значення, які залежать від поточного його розміщення, тобто, наприклад парсерна функція {{PAGENAME}} у шаблоні — повертає назву поточної сторінки у якій міститься (розгортається) шаблон, проте, на сторінці самого шаблону — поверне назву сторінки шаблону (без префіксу простору назв Шаблон:.).
При редагуванні сторінки внизу під віконцем редагування відображається список використаних на сторінці шаблонів і модулів. При цьому перелік шаблонів і модулів відображатиметься навіть тоді, коли редагується лише секція статті, що не містить їх викликів, проте, цей перелік не містить шаблонів, які умовно викликаються і поточний код сторінки шаблону містить умови, які його не викликають. Якщо шаблони викликаються рекурсивно, то у цей список попадуть як шаблони верхнього, так і нижніх рівнів. Також цей список містить як перенаправлення шаблонів, так і шаблони, на які перенаправляють шаблони-перенаправлення, усі разом в алфавітному порядку.
Зазвичай шаблони використовуються таким чином: у подвійних фігурних дужках {{ }} прописується назва шаблону — частина назви сторінки шаблону одразу після префіксу простору назв Шаблон:. У включеннях шаблонів перша літера одразу після префіксу простору назв Шаблон: може бути і великою, і маленькою. Наприклад: {{Назва шаблону}} або {{назва шаблону}}. Для відокремлення назви шаблону від його параметрів, а також наступних параметрів один від одного використовується вертикальна риска (пайп) (|). Існують нумеровані та іменовані параметри (наприклад, параметр (date= у шаблонах упорядкування — іменований параметр, оскільки має власну назву; нумеровані параметри не мають власної назви). Для увімкнення деяких параметрів необхідно надати їм чітко визначене значення (наприклад, {{Navbox|name=Box}}), тоді як для увімкнення інших параметрів вистачає, якщо надати їм будь-яке значення (усе залежить від того, як ці параметри прописані в коді шаблону). Для чіткого окреслення порядку нумерованого параметра перед його значенням можна додати його номер (наприклад, 1= для першого параметра).
Правила використання майже кожного шаблону, чий функціонал та особливості використання відрізняються від інших, містяться на його підсторінці документації, сторінці обговорення чи в його коді. Будь ласка, дотримуйтеся їх. У незрозумілих випадках звертайтеся насамперед до інтервікі — посилань на Вікіданих, оскільки більшість шаблонів створено та адаптовано з іншомовних розділів Вікіпедії (переважно з англійського та російського, а також з інших великих розділів Вікіпедії), або до досвідчених користувачів, які можуть допомогти в роботі з шаблонами.
Включення
Включення — це стандартне використання шаблону, що являє собою включення вмісту певної сторінки (зазвичай шаблону) в іншу сторінку, вказавши назву доданої сторінки. При такому використанні вміст доданої сторінки (шаблону) не переноситься до коду цільової сторінки. Подібно до того, як будь-яка назва сторінки може стати посиланням, якщо її розмістити у подвійних квадратних дужках, будь-яка назва сторінки може стати шаблоном, якщо її розмістити у подвійних фігурних дужках, {{Простір назв:Назва сторінки}}. Шаблони можуть бути одночасно включені на багатьох різних сторінках, тому зміни, внесені до шаблону, автоматично відображаються на всіх сторінках, у які він був включений. У цьому прикладі зображено шаблон «B», код якого містить лише слово foo, та як його включення відображається на сторінках, у яких він включений.
На відміну від включення, при використанні підстановки код шаблону переноситься безпосередньо в тіло сторінки. Для підстановки шаблону використовується {{subst:Назва шаблону}}. На сторінках документації шаблонів має бути чітко прописано, якщо вони використовуються з підстановкою.
Параметр шаблону — це інструмент, який може бути використаний за допомоги функцій парсера — розширення рушія MediaWiki. Функції парсера використовуються при створенні та використанні (включенні) шаблонів, зокрема інфобоксів. Параметри шаблону застосовують у тому разі, коли необхідно передбачити можливість дописати в шаблон певну інформацію, оригінальну для кожної даної статті. Шаблон може не використовувати жодного параметру (наприклад Шаблон:Без ілюстрацій), використовувати один параметр (наприклад Шаблон:Messier) або використовувати багато параметрів (наприклад Шаблон:Зображення).
У коді вікірозмітки характерною особливістю параметра є його розміщення в потрійних фігурних дужках всередині коду шаблону. Таким чином, механізм шаблонів виконує два типи підстановок:
виклик шаблону (подвійні фігурні дужки, у тексті, що викликає шаблон) підмінюється вмістом шаблону;
параметри шаблону (потрійні фігурні дужки, у тексті шаблону) підмінюються значеннями відповідних параметрів, які вказуються при виклику шаблону.
Приклад: Параметром шаблону може бути посилання на іншу статтю. Нехай у нас є Шаблон:X із наступним кодом:
Початок {{{1}}} Кінець.
Тоді {{X|[[Main Page|Головна сторінка]]}} буде розгорнуто в
нумеровані параметри (неіменовані): напр. {{{1}}}, {{{2}}}, {{{3}}} тощо.
У різних мовних розділах Вікіпедії затверджені чи усталені (як найпоширеніші) різні конвенції найменування параметрів. Однак, слід зважити на те, що параметри в MediaWiki по-різному сприймають великі та малі літери, тому, наприклад, {{{еквівалент НАТО}}} та {{{еквівалент нато}}} — це два різні параметри. Крім того, пробіли та нижні підкреслення сприймаються так само по-різному, тому {{{еквівалент НАТО}}} i {{{еквівалент_НАТО}}} — це теж два різні параметри.
Імена параметрів чутливі до регістру, пробілів, підкреслень та інших символів не з набору [a-z\-A-Z0-9]. Без аргументованої необхідності у назвах іменованих параметрів слід використовувати малі літери, за винятками: метапараметри (параметри, призначені для самого шаблону), або, коли вони позначають власну назву, акронім, наприклад, ЄДРПОУ.
Зайві параметри, що не використовуються в тексті шаблону, ігноруються.
Іменовані
Зазначені вище типи параметрів відрізняються за способом свого виклику (використовуючи шаблон у вихідному коді). Код
{{Шаблон|назва=вміст|назва2=вміст2}}
викликає шаблон під назвою Шаблон, параметр назва включає вміст, а параметр назва2 включає вміст2. Порядок іменованих параметрів у вихідному коді не має значення, тому результат буде ідентичним, якщо прописати так:
{{Шаблон|назва2=вміст2|назва=вміст}}
Якщо певний параметр someparameter не визначено, він передається нерозкритим текстом {{{someparameter}}} на сторінку, де він викликаний; у разі рекурсивного виклику його можна розкрити на наступному рівні.
Нумеровані параметри можна (а іноді й потрібно) прописувати в шаблоні як іменовані, надавши кожному параметру відповідний порядковий номер за типом: |1=вміст|2=вміст2.
Прописавши так, одержимо аналогічний результат:
нумерування параметрів:
{{Шаблон|1=вміст|2=вміст2}}
зміна порядку параметрів:
{{Шаблон|2=вміст2|1=вміст}}
так теж можна:
{{Шаблон|вміст|2=вміст2}}
{{Шаблон|2=вміст2|вміст}}
а так уже неправильно:
{{Шаблон|1=вміст|вміст2}}
{{Шаблон|вміст2|1=вміст}}
Насправді нумеровані параметри є іменованими параметрами, імена яких є послідовними номерами. Коли всі параметри у вихідному коді названі, то їхній порядок не має значення.
Зауважте різницю у викликах: виклик {{Шаблон||a}} встановлює значення першого параметру рівним порожньому рядку. Аби присвоїти значення другому параметру, не визначаючи значення першого, скористайтеся викликом {{Шаблон||2=a}}.
Також, виклик {{Шаблон|a=b|c}} визначить параметр «a» і не встановить параметр «1». Аби правильно визначити обидва параметри, скористайтеся наступною синтаксичною конструкцією {{Шаблон|1=a=b|2=c}}.
Умовне включення параметрів
Якщо поява нерозкритого тексту не бажана, можна використовувати умовне включення параметра в текст шаблону. Параметр, записаний у формі {{{parameter|альтернативний текст}}}, буде включений в текст шаблону тільки в тому разі, якщо значення параметра задано, інакше замість значення параметра з'явиться альтернативний текст. Цей спосіб доречний тоді, коли для деякого параметра шаблону передбачається певне значення за замовчуванням. Найпростіший приклад: якщо деякий параметр parameter записаний усередині шаблону у формі {{{parameter|}}} (тобто якщо в якості альтернативного тексту використано порожній рядок), на його місці не виводитиметься взагалі нічого (навіть {{{parameter}}}), якщо цей параметр виявиться не заданим. Можливі три варіанти:
значення за замовчуванням відсутнє, наприклад, {{{1}}}, {{{назва міста}}} тощо. Якщо цей параметр не буде заповнений, шаблон відображатиме його назву.
порожнє значення за замовчуванням, наприклад, {{{1|}}}, {{{назва міста|}}} тощо. Якщо у включенні відповідний параметр не заповнений, шаблон, залежно від налаштувань, не покаже нічого або покаже порожній рядок.
прописуване значення за замовчуванням, наприклад, {{{1|100%}}}, {{{назва міста|Київ}}}, {{{2|{{{3}}}}}}, {{{2|{{{місто|}}}}}} тощо. Якщо відповідний параметр не заповнений, буде показано значення чи параметр після символу "|".
Текст значення за замовчуванням прописується після символу "|". Це може бути порожнє місце, рядок символів, число, але й також інший параметр (він також може бути умовним параметром) або навіть шаблон з параметрами чи без.
Іноді виникає необхідність змінити в тексті шаблону щось більше, ніж сам параметр, якщо цей параметр не заданий. Для цієї мети використовуються умовні функції парсера: {{#if}} та інші. {{#if}} викликається наступним чином:
Якщо всі оператори визначені, то значення шикуються в один рядок. Проте, коли другий оператор не визначений, між першим і третім оператором з'являється зайвий рядок:
Порожній рядок між першим і третім рядком виникає через те, що умовний оператор другого рядка повернув ніщо , і підсумкова конструкція після обробки парсером приймає такий вигляд:
'''sample1'''!
< порожній рядок >
'''sample3'''!
Такий ефект може виявлятися в шаблонах-картках, коли на місці невизначених параметрів з'являється порожній простір. Щоб не допустити подібного ефекту, необхідно не допускати перенесення рядка між умовними операторами. Цього можна домогтися декількома способами:
Переглядайте текст шаблону в режимі редагування, оскільки на простому перегляді змінні та інші шаблони, наприклад Шаблони, будуть замінені їхніми значеннями.
Ці теги застосовуються для відокремлення тексту, що має відображатись лише в самому шаблоні, але не відображатися в статтях, в які цей шаблон включено, або навпаки.
Для розміщення у шаблоні додаткової інформації — наприклад правил використання шаблону або категорії шаблону, яка не повинна відображатись в статтях, в яку включається даний шаблон, таку інформацію слід розмістити наступним чином: <noinclude>Додаткова інформація (''наприклад'': шаблон використовується для...)</noinclude>. В протилежному випадку — якщо нам слід закласти в шаблон інформацію, яка має відображатись в статтях, в яких цей шаблон включається, але не повинна впливати на сам шаблон (найчастіше це — категоризація статті) — слід писати <includeonly>Додаткова інформація, (''наприклад:'' [[Категорія статті]]) </includeonly>
He допускайте порожніх рядків навколо конструкцій <noinclude> і <includeonly>, так як порожній рядок буде тлумачитися як перенесення рядка, що буде додано шаблоном у статтю.
Іноді бажано мати посилання на сторінку редагування шаблону в тексті самого шаблону (наприклад, якщо його вміст може часто змінюватися). Таке посилання можна «зашити» всередину самого шаблону, більш того, зробити саме шаблоном. Див. Шаблон:ed, приклад використання: {{ed|{{PAGENAMEE}}|{{NAMESPACE}}:{{PAGENAME}}}} дасть ред. Довідка:Шаблони.
Використання вкладених подвійних чи потрійних фігурних дужок всередині подвійних вкладених дужок
Через використання подвійних і потрійних дужок зміст виразу може бути невизначеним. Наприклад замість
{{{{{abra}}}}}
слід використовувати або
{{{ {{abra}} }}}
— повернене шаблоном abra значення є назвою параметра даного шаблону, або
{{ {{{abra}}} }}
— значення параметра abra є назвою шаблона, вкладеного в даний. Уникайте, однак зайвих пробілів.
Тег категорії в шаблоні. Проблема кешування
Якщо шаблон містить тег категорії, то у зазначену категорію відноситься не тільки шаблон, але також усі сторінки що його використовують, тому шаблони зручно використовувати для рубрикації статей.
застаріло: З цим підходом пов'язана проблема кешування — якщо змінити категорію у шаблоні, статті де він використовуються будуть віднесені до нової категорії тільки після збереження будь-яких редагувань цих статей (важливим є збереження змін, саме редагування може бути порожнім).
Рекомендується використовувати категорії у шаблонах типу {{TODO}} для «маркування» статей певного типу, та не рекомендується використання у навігаційних шаблонах.
Кешування
Редагування шаблону автоматично очищає кеш сервера від усіх статей що безпосередньо його використовують. Однак у випадах непрямого виклику (рекурсивний виклик, шаблони які залежать від параметрів тощо.), внутрішній кеш системи не очищується і стандартний «Refresh» браузера може не працювати. У таких випадках використовуйте «action=purge», тобто переходьте за URL типу:
Коли сторінка, викликана для включення, є сторінкою-перенаправленням, буде включено вміст сторінки на яку вказує редирект (перенаправлення).
Посилання на шаблон
Якщо використовуються посилання на шаблони як на звичайні статті, в цьому випадку передача параметрів неможлива.
Історія змін для сторінок, що містять шаблони
При перегляді історичних версій статей, що містять шаблони і/або зображення, завжди використовується поточна версія шаблону та зображень, тобто автоматична «абсолютна» реконструкція історичних версій композитних текстів є неможливою.
Strategi Solo vs Squad di Free Fire: Cara Menang Mudah!