MediaWiki CMS:Рецепты/Передача аргумента "=" шаблону: различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
Нет описания правки
 
(не показано 14 промежуточных версий этого же участника)
Строка 10: Строка 10:
<syntaxhighlight lang="html5" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
<syntaxhighlight lang="html5" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
<div style="border:2px solid #ff8800; margin-bottom:5px; margin-top:5px; overflow:hidden;">
<div style="border:2px solid #ff8800; margin-bottom:5px; margin-top:5px; overflow:hidden;">
<div style="background:#ff8800; border:2px solid #ff8800; color:#ffffff; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">'''{{{1}}}'''</div>
    <div style="background:#ff8800; border:2px solid #ff8800; color:#ffffff; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">'''{{{1}}}'''</div>
<div style="padding:10px">
    <div style="padding:10px">{{{2}}}</div>
{{{2}}}
</div>
</div>
</div>
</syntaxhighlight>
</syntaxhighlight>
Строка 19: Строка 17:
Если передавать в аргументе шаблону символ "=", шаблон работает некорректно.
Если передавать в аргументе шаблону символ "=", шаблон работает некорректно.


Пример проблемы:
Для примера попытаемся сделать так:
 
Попытаемся сделать так:


<syntaxhighlight lang="html5" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
<syntaxhighlight lang="html5" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
Строка 43: Строка 39:
==Решение==
==Решение==


===Вариант 1===
Используйте номер аргумента:


<syntaxhighlight lang="html5" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
<syntaxhighlight lang="html5" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
Строка 60: Строка 59:
y = x - 1
y = x - 1
z = x + y
z = x + y
}}
===Вариант 2===
Воспользуйтесь тегом <nowiki><nowiki></nowiki>:
<syntaxhighlight lang="html5" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
{{Блок/Инфо1
|Тест <nowiki>=</nowiki>
|x <nowiki>=</nowiki> x + 1
y <nowiki>=</nowiki> x - 1
z <nowiki>=</nowiki> x + y
}}
</syntaxhighlight>
Результат:
{{Блок/Инфо1
|Тест <nowiki>=</nowiki>
|x <nowiki>=</nowiki> x + 1
y <nowiki>=</nowiki> x - 1
z <nowiki>=</nowiki> x + y
}}
===Вариант 3===
<del>Делай как Валера</del> Используйте HTML Entities:
<syntaxhighlight lang="html5" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
{{Блок/Инфо1
|Тест &equals;
|x &equals; x + 1
y &equals; x - 1
z &equals; x + y
}}
</syntaxhighlight>
Результат:
{{Блок/Инфо1
|Тест &equals;
|x &equals; x + 1
y &equals; x - 1
z &equals; x + y
}}
}}


Строка 72: Строка 115:
{{Навигационная таблица/MediaWiki CMS}}
{{Навигационная таблица/MediaWiki CMS}}
{{Навигационная таблица/Телепорт}}
{{Навигационная таблица/Телепорт}}
[[Категория:Рецепт]]

Текущая версия от 08:45, 22 октября 2022

Проверка/Оформление/Редактирование: Мякишев Е.А.


Передача аргумента "=" шаблону

Проблема

Имеем шаблон с таким кодом:

<div style="border:2px solid #ff8800; margin-bottom:5px; margin-top:5px; overflow:hidden;">
    <div style="background:#ff8800; border:2px solid #ff8800; color:#ffffff; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">'''{{{1}}}'''</div>
    <div style="padding:10px">{{{2}}}</div>
</div>

Если передавать в аргументе шаблону символ "=", шаблон работает некорректно.

Для примера попытаемся сделать так:

{{Блок/Инфо1
|Тест =
|x = x + 1
y = x - 1
z = x + y
}}

А получается вот так:

{{{1}}}

{{{2}}}

Решение

Вариант 1

Используйте номер аргумента:

{{Блок/Инфо1
|1 = Тест =
|2 = x = x + 1
y = x - 1
z = x + y
}}

Результат:

Тест =

x = x + 1 y = x - 1 z = x + y

Вариант 2

Воспользуйтесь тегом <nowiki>:

{{Блок/Инфо1
|Тест <nowiki>=</nowiki>
|x <nowiki>=</nowiki> x + 1
y <nowiki>=</nowiki> x - 1
z <nowiki>=</nowiki> x + y
}}

Результат:

Тест =

x = x + 1 y = x - 1 z = x + y

Вариант 3

Делай как Валера Используйте HTML Entities:

{{Блок/Инфо1
|Тест &equals;
|x &equals; x + 1
y &equals; x - 1
z &equals; x + y
}}

Результат:

Тест =

x = x + 1 y = x - 1 z = x + y

См.также

Внешние ссылки