Шаблон:Сети: различия между версиями

Материал из I2P-ilita вики
Перейти к навигацииПерейти к поиску
м (Terra incognita переименовал страницу Шаблон:Онлайн сервисы в Шаблон:Сети: новое название больше соответствует новому содержанию)
(документация вынесена на подстраницу)
 
(не показана 1 промежуточная версия этого же участника)
Строка 14: Строка 14:
! style="width: 20%; background-color: #eef; color: #002;" | Другие онлайн сервисы
! style="width: 20%; background-color: #eef; color: #002;" | Другие онлайн сервисы
| [[I2P-Bote]] · [[I2P-Mail]] · [[Secure password generator]]
| [[I2P-Bote]] · [[I2P-Mail]] · [[Secure password generator]]
|}</div><noinclude><div style="background-color: #FFEFD5; border: 1px dotted #FFE4B5; padding: 10px; margin-top: 10px; height: auto;">Это навигационный шаблон.
|}</div><noinclude>{{doc|Информационная безопасность}}</noinclude>
 
== Использование ==
Просто вставьте в самый конец кода статьи, перед категориями (если там есть другой навигационный шаблон, непосредственно до или после него):
: <code><nowiki>{{онлайн сервисы}}</nowiki></code>
(у шаблона нет параметров).
 
== Редактирование шаблона ==
Прежде чем редактировать этот шаблон, удостоверьтесь, что хорошо понимаете его код. Для экспериментов существует кнопка «Предварительный просмотр».
 
Добавляя в шаблон ссылки на статьи, сохраняйте логику и алфавитный порядок. Не добавляйте статьи в категории самим этим шаблоном: в этой вики невозможно отменить для отдельной статьи добавление в категорию, производимое шаблоном (ParserFunctions не установлены, поэтому невозможно ввести в шаблон поддержку параметра <code>nocat</code>).</div>
 
[[Категория:Шаблоны]]</noinclude>

Текущая версия на 12:19, 24 ноября 2020

<templatestyles src="Шаблон:Doc/styles.css" />

local getArgs = require('Module:Arguments').getArgs

local yesno = require('Module:Yesno') local compressSparseArray = require('Module:TableTools').compressSparseArray local p = {}

local function unpack(...) local frame = ... local args if type(frame.args) == 'table' then args = getArgs(frame) elseif type(frame) == 'table' then args = frame else args = {...} end return args end

function p._main(anchor, text, visible) local result = mw.html.create('span') :attr('id', anchor) :wikitext(text) if visible then result:addClass('highlight-target') end return tostring(result) end

function p.main(...) local args = unpack(...) local anchors = compressSparseArray(args) local text local visible = yesno(args.visible or args.v) if visible then text = args.text or args['текст'] or args[1] end

local result = text for i, v in ipairs(anchors) do result = p._main(anchors[i], result, visible) --[[ создание старого вида якорей для совместимости, см. Обсуждение шаблона:Якорь#Новые html5 ссылки и старые ]] local encoded_anchor = mw.uri.encode(anchors[i], 'WIKI'):gsub('%%', '.') if anchors[i] ~= encoded_anchor then result = p._main(encoded_anchor, result, visible) end end

return result end

return p
Документация
{{#if: || <templatestyles src="Шаблон:Действия для страницы/styles.css" /> }}

{{#if: Информационная безопасность | {{#ifexist: Информационная безопасность

|
 | {{#ifexist: Шаблон:Информационная безопасность
|
   | Шаблон:Документировать
   }}
 }}

| {{#ifexist: Шаблон:Сети/doc

 | Шаблон:Сети/doc
 | Шаблон:Документировать
 }}

}}

<templatestyles src="Шаблон:Doc/styles.css" />{{#ifexpr: 10 mod 2 = 1

| A test for all to see

|

}}