Шаблон:URL: различия между версиями
Материал из Aprel Wiki
Дополнительные действия
APRELKUN (обсуждение | вклад) Новая страница: «<includeonly>{{#invoke:URL|formatUrl|{{{1|}}}|{{{2|}}}}}</includeonly><noinclude>{{documentation}}</noinclude>» |
APRELKUN (обсуждение | вклад) Нет описания правки |
||
| Строка 1: | Строка 1: | ||
<includeonly>{{# | <includeonly>{{#if:{{{1|}}}|<!-- | ||
--><span class="url"><!-- | |||
-->{{#ifeq:{{#titleparts:{{lc:x{{{1|}}}}}|1|1}}|{{lc:x{{{1|}}}}}|<!-- work-around when titleparts doesn't accept the URL and returns the full string without a capital: don't attempt to transform the displayed URL | |||
-->[{{#if:1|{{{1|}}}}} {{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}|{{#if:1|{{{1|}}}}}}}]<!-- These "#if:1" pseudo-tests (always true) allow trimming leading spaces in their text parameter | |||
-->|<!-- | |||
-->{{#switch:{{lc:{{#titleparts:{{{1|}}}|2}}}}<!-- | |||
-->|https:/<!-- | |||
-->|http:/<!-- | |||
-->|ftp:/=<!-- an FTP URL is a valid URI scheme and MUST NOT imply a default "http://" (as generated in the #default case) | |||
-->[{{#if:1|{{{1|}}}}} <!-- This #if:1 allows trimming leading spaces in the full URL: {{{1|}}} | |||
-->{{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}| <!-- This #if:1 allows trimming leading spaces in the specified display text : {{{2|}}} | |||
-->{{lc:<!-- domain name in lowercase | |||
-->{{#ifeq:{{lc:{{padleft:|4|{{#titleparts:{{{1|}}}|1|3}}}}}}|www.<!-- | |||
-->|{{Str right|{{#titleparts:{{{1|}}}|1|3}}|4}}<!-- | |||
-->|{{#titleparts:{{{1|}}}||3}}<!-- | |||
-->}}<!-- | |||
-->}}<!-- | |||
-->{{#if:{{#titleparts:{{{1|}}}||4}}<!-- rest of the ressource path | |||
-->|/{{#titleparts:{{{1|}}}||4}}<!-- | |||
-->}}<!-- | |||
-->}}<!-- | |||
-->]<!-- | |||
-->|#default=<!-- Warning! this case implies a default "http://" URI scheme, and should NOT occur if there's another accepted URI scheme in the URL | |||
-->[http://{{#if:1|{{{1|}}}}} <!-- This #if:1 allows trimming leading spaces in the full URL: {{{1|}}} | |||
-->{{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}| <!-- This #if:1 allows trimming leading spaces in the specified display text : {{{2|}}} | |||
-->{{lc:<!-- domain name in lowercase | |||
-->{{#ifeq:{{lc:{{padleft:|4|{{#titleparts:{{{1|}}}|1|1}}}}}}|www.<!-- | |||
-->|{{Str right|{{#titleparts:{{{1|}}}|1|1}}|4}}<!-- | |||
-->|{{#titleparts:{{{1|}}}|1|1}}<!-- | |||
-->}}<!-- | |||
-->}}<!-- | |||
-->{{#if:{{#titleparts:{{{1|}}}||2}}<!-- rest of the ressource path | |||
-->|/{{#titleparts:{{{1|}}}||2}}<!-- | |||
-->}}<!-- | |||
-->}}<!-- | |||
-->]<!-- | |||
-->}}<!-- | |||
-->}}<!-- | |||
--></span><!-- | |||
-->|<!-- | |||
-->{{#if:{{{2|}}}|{{{2|}}}|<!-- | |||
-->{{tlx|URL||}}<!-- | |||
-->}}<!-- | |||
-->}}</includeonly><noinclude>{{doc}}</noinclude> | |||
Текущая версия от 18:26, 12 июня 2024
| [просмотр] [править] [история] [обновить] | |
Данный шаблон используется для однотипного создания форматированных внешних ссылок.
Использование
Описание вариантов использования
{{URL|1=полный адрес (url)|2=необязательное описание}}- Вначале проверяется указан ли адрес (url), является ли он полным адресом и содержит ли схему URI («http:/» or «https:/» or «ftp:/»). Производится подготовка для создания описания, если оно явно не указано.
- Если описание отсутствует, будет отображён переведённый в нижний регистр адрес без схемы URI, «www» и завершающего слэша.
{{URL|2=описание}}- Если адрес (url) не указан шаблон выведет описание без изменений.
{{URL}}- Если оба параметра не указаны или указаны ошибочно, будет сгенерирован адрес по умолчанию, содержащий ссылку на эту страницу.
Ограничения
Данный шаблон не может сформировать корректную ссылку в случае наличия в адресе (url) знаков равенства — = и решётки — #. Используйте для указания таких адресов обычные средства.
Примеры
| Код | Результат |
|---|---|
| {{URL}} | {{URL}} |
| {{URL|}} | {{URL}} |
| {{URL|EXAMPLE.com}} | example.com |
| {{URL|example.com}} | example.com |
| {{URL|ftp://ftp.example.com}} | ftp.example.com |
| {{URL|http://www.example.com/foo|ссылка}} | ссылка |
| {{URL|www.example.com/foo|ссылка}} | ссылка |
| {{URL|http://www.example.com/foo/|ссылка}} | ссылка |
| {{URL|www.example.com/foo/|ссылка}} | ссылка |
| {{URL|http://www.example.com/foo/?a|ссылка}} | ссылка |