도움말: 템플릿
Help:Template![]() |
템플릿은 다른 페이지에 포함되도록 작성된 Wikipedia 페이지입니다.템플릿에는 일반적으로 더 많은 문서 또는 페이지에 표시되어야 하는 반복적인 자료가 포함되어 있습니다.일반적으로 상용 메시지, 표준화된 경고 또는 알림, 정보 상자, 네비게이션 상자 및 이와 유사한 목적으로 사용됩니다.
가장 일반적인 포함 방법은 transclusion이라고 불리며, 여기서 대상 페이지의 Wikitext에는 템플릿에 대한 참조가 포함되어 있습니다.{{Template name}}
구문을 사용합니다.또 다른 방법은 템플릿의 내용이 저장될 때 대상 페이지의 Wikitext에 한 번만 복사되는 대체 방법입니다.
도움말:템플릿에 대한 빠른 가이드가 주제에 대해 간략하게 설명합니다.mw에는 MediaWiki 및 Wikimedia의 추가 도움말이 있습니다.도움말: 템플릿, m:도움말: 템플릿 및 m:도움말: 고급 템플릿.
템플릿에 대한 템플릿 링크
Wikipedia 문서에 템플릿의 실제 전체 이름을 텍스트(주변 괄호 포함)로 포함하려면 템플릿 링크 템플릿을 적용합니다.이것을 하는 주된 동기는 지시와 문서화에 있습니다.간단한 예는 코드입니다.
{{tl foo}}
- 생성하다
- {{foo}}
개요
대부분의 템플릿은 템플릿 이름 공간에 있는 페이지입니다. 즉, "템플릿:XXXX". 단, 임의의 [a]네임스페이스에서 트랜슬레이드 및 치환할 수 있기 때문에 일부 템플릿 페이지는 사용자 네임스페이스와 같은 다른 네임스페이스에 배치됩니다.템플릿 페이지에는 연관된 토크페이지가 있습니다.
템플릿에는 다른 템플릿에 대한 호출을 포함하여 원하는 Wikitext를 포함할 수 있습니다.커스터마이즈 가능한 값(파라미터라고 함), 계산과 분기(파서 함수를 사용), 날짜, 시간, 페이지 이름 등의 Wiki 고유 변수(매직 워드)에 대한 액세스 등 일부 프로그래밍 기능이 제한됩니다.또한 템플릿이 변환되거나 대체될 때 Wikitext의 어떤 부분을 포함할지 정의하는 태그를 포함할 수도 있습니다.즉, 템플릿 페이지 자체의 외관이 변환된 콘텐츠의 외관과 같을 필요는 없습니다(예를 들어 템플릿에 대한 문서, 카테고리 등을 포함할 수 있습니다).
방법:템플릿을 문서 또는 페이지로 변환하려면{{Template name}}
템플릿이 표시되는 위치에 있는 Wikitext에 있습니다.첫 글자는 대소문자를 불문하고 사용할 수 있습니다.
프리픽스Template:
템플릿 이름이 기본 이름이므로 포함할 필요가 없습니다.단, 다른 네임스페이스에 저장되어 있는 템플릿의 경우 다음과 같은 프레픽스가 사용됩니다.User:
, 를 지정해야 합니다.메인스페이스에서 페이지를 트랜스루드 하려면 제목 앞에 콜론을 붙입니다.{{:Page name}}
.
주의: 존재하지 않는 템플릿을 제외하려고 하면 존재하지 않는 다른 페이지에 링크하는 것과 마찬가지로 빨간색 링크가 생성됩니다.링크를 따라가면 특정 템플릿을 만들 수 있습니다.다른 언어 프로젝트에서 템플릿을 사용하려면 프로젝트(다른 언어 위키피디아나 미디어 위키피디아 등) 간에 페이지를 넘길 수 없습니다.이 경우 해당 프로젝트에서 템플릿 복사본을 생성해야 합니다.
사용 구문
파라미터
위에 제시된 기본 변환 구문은 템플릿 출력을 제어하는 데 사용되는 매개 변수를 추가하여 확장할 수 있습니다.이 구문은 다음과 같습니다.{{Template name parameter parameter ...}}
어디에Template name
템플릿의 이름입니다.parameter
는 값(이것을 「」라고 부릅니다)만을 포함할 수도 있고, 또는 형식일 수도 있습니다.name=value
() 이름이 지정되지 않은 첫 번째, 두 번째, 세 번째 파라미터에는 이름이 지정됩니다.named parameters1
,2
,3
,기타.
공백 문자(스페이스, 탭, 반환)는 명명된 파라미터 이름과 값의 시작과 끝에서 제거되지만 중간에서 제거되지는 않습니다.{{ ... myparam = this is a test }}
와 같은 효과가 있다{{ ... myparam=this is a test}}
모든 공백 문자가 보존되는 이름 없는 파라미터에는 적용되지 않습니다.
템플릿에 전달할 수 있는 파라미터(존재하는 경우)와 이름 붙이는 방법은 해당 템플릿의 코딩에 따라 달라집니다.이름 있는 파라미터는 임의의 순서로 정의할 수 있습니다.불필요한 파라미터 또는 잘못된 이름의 파라미터는 무시되며 정의되지 않은 파라미터는 기본값이 할당됩니다.파라미터가 여러 번 정의되어 있는 경우 마지막 값이 적용됩니다.
매개 변수 값은 파이프 또는 등호 바로 뒤에 다음 파이프 또는 닫힘 중괄호가 이어지는 경우와 같이 빈 문자열일 수 있습니다.이는 파라미터가 모두 생략되는 것과는 다릅니다.단, 템플릿은 두 경우 모두 동일하게 동작하도록 코드화되어 있는 경우가 많습니다.
템플릿의 코드에 표시되지 않아도 파라미터를 지정할 수 있습니다(아무것도 하지 않습니다).예를들면, reason=
는 템플릿이 [b]배치된 이유를 Wikisource에서 간략하게 설명하기 위한 의사 파라미터로 자주 사용됩니다.일부 템플릿은 모듈을 호출합니다.템플릿 코드에서 설명되지 않은 파라미터를 사용하는 경우 알 수 없는 파라미터를 체크하여 에디터에 경고합니다.이 파라미터는 복잡한 파라미터가 다수 포함된 정보박스 및 기타 템플릿에 주로 사용됩니다.알 수 없는 파라미터의 존재는 보통 의도하지 않은 오류입니다.이러한 템플릿을 갱신하여 새로운 파라미터를 포함할 경우 모듈에 대한 콜도 갱신하여 새로운 파라미터를 포함해야 합니다.
호출
템플릿을 사용하는 것은 함수를 프로그래밍 언어로 호출하는 것과 비슷합니다. 호출하면 값(출력)이 반환됩니다.함수와 마찬가지로 일부 템플릿에서는 출력을 변경하는 파라미터를 사용할 수 있습니다.
위키피디아에서 사용하는 위키소프트웨어인 미디어위키에서 변수는 템플릿과 구별되는 더 구체적인 의미를 가지지만 두 변수 모두 이중괄호로 구분됩니다. {{ }}
둘 다 값을 반환합니다.
MediaWiki 변수명은 모두 대문자인 반면 템플릿명은 모든 페이지 이름과 동일한 기본 기능과 제한을 가집니다.대소문자를 구분합니다(첫 번째 문자 제외). 밑줄은 공백으로 해석되며 다음 문자를 포함할 수 없습니다.# < > [ ] { }
Wiki 마크업과 HTML용으로 예약되어 있기 때문입니다.
숫자 기호 #
는 문서의 fragment 또는 섹션(Wikipedia 문서의 섹션 등)을 나타내기 때문에 fragment 식별자라고 불립니다.템플릿 페이지의 섹션에 링크하는 데 사용할 수 있지만(템플릿:Portal #Example)에서는 템플릿레퍼런스에 fragment ID 또는 fragment 이름을 넣을 필요가 없습니다.인{{Portal#Location Books}}
예를 들어 문자열은#Location
목적이 없기 때문에 무시됩니다.
대체
템플릿이 대체되면 템플릿의 내용은 변환되지 않고 페이지에서 하드 코딩됩니다.템플릿을 대체하는 방법과 시기에 대한 자세한 내용은 도움말을 참조하십시오.치환 when 치환을 사용하는 경우.
기본 템플릿 사용 예시
주의: 다음 중 하나를 시험해 보려면 템플릿 샌드박스 Special을 사용하십시오.ExpandTemplates 또는 사용자 페이지 또는 샌드박스.
매우 단순한 템플릿의 예는 템플릿에서 확인할 수 있습니다.TM: 상표 기사와 연결된 상표 기호(™)를 텍스트의 해당 지점에 배치하도록 확장합니다.프로그래머라면 템플릿이 상표 기호를 반환한다고 말할 수 있습니다.
[템플릿]을 클릭합니다.TM에서 "소스 편집" 탭을 클릭하여 템플릿 코드(Wikitext)를 확인합니다.이 코드의 "액티브" 부분(템플릿의 "라고 함)은 단일 링크입니다.[[Trademark ™]]
Wikitext의 나머지 부분은 다음 사이에 둘러싸여 있습니다.<noinclude>
태그는 템플릿 페이지 자체에는 표시되지만 템플릿을 다른 페이지에서 사용(또는 호출)할 때는 표시되지 않습니다.
템플릿을 변환하려면:TM을 다른 페이지로 이동(즉, 다른 페이지에서 사용하기 위해)하고{{TM}}
를 대상 페이지의 Wikitext에 입력하고 를 누릅니다.이 페이지는 템플릿의 확장에 의해 대체되어 Wikitext에 실제로 포함되어 있는 것처럼 표시됩니다.[[Trademark ™]]
그 시점에서.따라서 표시되는 페이지에는 Wikilink "™"가 포함됩니다.
예를 들어 다음과 같이 입력합니다.The trademark symbol is {{TM}}
페이지를 미리 보거나 변경 내용을 저장한 후 "상표 기호는 ™입니다"라고 표시됩니다.템플릿의 코드에 대한 자세한 내용은 몰라도 템플릿을 사용할 수 있습니다.일반적으로 템플릿페이지에 설명되어 있는 결과만 기억하면 됩니다.
템플릿을 사용하는 또 다른 방법은 템플릿을 대체하는 것입니다.입력한 경우The trademark symbol is {{subst:TM}}
페이지를 미리 보거나 저장하면 "상표 기호는 ™"가 다시 표시됩니다.그러나 저장된 Wikitext를 [c]다시 보면 페이지를 저장했을 때 템플릿콜이 템플릿 확장으로 대체되어 있는 것을 알 수 있습니다.출력 텍스트와 템플릿 사이의 링크가 끊어졌습니다.또, 향후 템플릿의 변경에 의해서(트랜스클루전 경우와 같이) 출력은 영향을 받지 않습니다.
매개 변수를 사용한 예
파라미터를 사용하는 템플릿의 예로는 템플릿이 있습니다.{{about}}
. 입력해 보세요.{{about how to use templates how to use modules Help:Lua}}
다음 텍스트가 생성됩니다.
템플릿{{about}}
에서는 위의 예에서는 이름 없는 파라미터 3개(위치 파라미터라고도 함)를 사용하지만 템플릿 설명서에서 설명한 바와 같이 동일한 템플릿을 파라미터의 다른 개수와 함께 사용하여 약간 다른 결과를 얻을 수도 있습니다.예를들면,{{about how to use modules Help:Lua}}
빈 파라미터의 사용에 주의해 주세요.이 경우 연속되는 파이프는 템플릿에 전달된 첫 번째 파라미터가 빈 문자열임을 의미합니다.이 템플릿에서는 첫 번째 "about" 문장이 생략됩니다.그 결과, 다음과 같이 됩니다.
다른 템플릿, 특히 더 복잡한 템플릿은 명명된 파라미터 또는 명명된 템플릿과 이름 없는 템플릿의 혼합을 사용합니다.간단한 예로는 Template가 있습니다.2x2 그리드를 생성하는 데 사용되는 Payoff 매트릭스.예를 들어 다음과 같습니다.
마크업 | 로 렌더링하다 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
{{payoff matrix UL = 5 UR = 7 DL = 2 DR = 9 Name = 사용 예 }} |
| ||||||||||||
자세한 내용은 템플릿페이지를 참조해 주세요.여기서 템플릿은 가능한 파라미터를 모두 정의하지 않고 사용됩니다.정의되지 않은 파라미터에는 기본값이 지정됩니다.
등호 주변 및 파라미터 전후 공간은 명확성만을 위해 사용됩니다.이러한 공간은 필요하지 않으며 템플릿 평가 시 무시됩니다(단, 이름이 지정되지 않은 파라미터의 경우는 해당되지 않습니다).단, 파라미터 이름은 대소문자를 구분합니다.예를 들어 치환할 수 없습니다.DR
와 함께dr
또는dR
를 참조해 주세요.템플릿에서 사용되지 않는 이름의 매개 변수는 무시됩니다.
템플릿의 소스 코드를 조사하면 파라미터를 나타내는 추가 트리플 괄호 엔티티가 있는 표준 테이블 마크업이 나타납니다.
{id="지급 매트릭스" style="background:white;float right}; clear:right; text-align:center;" align="float right}}}} 셀스페이스=0 셀패딩=8 폭={width{width 225}}} - style=" 33%; "style=":33%; "border-back:33%; bottom:{p}; bottomer-back:{p}; bloating:{p}; ble="width:33%;border-bottom:솔리드 블랙 1px;{{2R right}}-style="border-right:솔리드 블랙 1px;텍스트 정렬:오른쪽" style="border-right:솔리드 블랙 1px;border-bottomer-bottomength:솔리드 블랙 1px;back 1px;배경:{{1p}"{{ULC white}}; 글꼴 크기: 120%; " {{{UL 0, 0}} style="border-right: solid black 1px; border-bottom: solid black 1px; background: 배경:{{{URC white}}; 글꼴 크기: 120%; " {{}UR 0, 0}} - style="border-right: solid black 1px; text-align: right; {{1D Down}} style="border-right: solid black 1px; bround: solid black 1px; back: 배경:{{DLC 화이트}}; 글꼴 크기: 120%; "{{DL 0, 0}} style=" 테두리-오른쪽: 솔리드 블랙 1px; 테두리-하단: 솔리드 블랙 1px; 배경:{{DRC white}}, 폰트 크기: 120%, "{{DR 0, 0}}}-style="colspan="3"{{이름 {{PAGENAME}}}}}"
「」{{{2L Left}}}
파라미터 'C'를 합니다.2L
텍스트 " " " " 스 、 "Left
파라미터가 콜에 존재하지 않는 경우.
사용상의 힌트와 회피책
할 때 주의할 .
- 템플릿이 유일한 변환 방법일 뿐만 아니라 선택적 변환과 같은 토폴로지적으로 더 적합한 방법이 있을 수 있습니다.
- 이름 없는 파라미터에는 보통 등호 기호를 포함할 수 없습니다.이는 이름 있는 파라미터를 [d]설정하는 것으로 해석되기 때문입니다.이름 없는 파라미터(예를 들어 이름과 값의 쌍이 있는 URL)에서 등호 기호를 전달하려면 등호 기호를 특별한 템플릿으로 바꿉니다.
{{=}}
이치노 하나의 없는 및 그 의 이름 파라미터)를 이름 있는 파라미터로 첫 파라미터는 이름 있는 "Da"에 합니다.1=
" 호출" "템플릿 호출"{{done}}
a=b
으로 '어느쪽인가'를 합니다.{{done a{{=}}b}}
★★★★★★★★★★★★★★★★★」{{done 1=a=b}}
. - 일반 문자를 할 수 .
{{!}}
파이프가 더 높은 수준에서 해석되지 않는 경우 HTML 엔티티를 사용합니다.|
또는 템플릿에 Wikitable을 삽입하기 위해{{Wikitable}}
것을{{!}}
. - 공백 문자(스페이스, 탭, 캐리지 리턴 및 줄 바꿈)는 명명된 매개 변수와 달리 이름 없는 매개 변수의 시작과 끝에서 자동으로 제거되지 않습니다.는 (템플릿 디자이너는) 사용할 수 있습니다.
{{Trim}}
이름 없는 파라미터에서 불필요한 공백을 제거합니다.) - 문서 및 설명에서는 해당 템플릿에 대한 링크를 사용하여 템플릿 호출 구문을 생성할 수 있지만 실제로 템플릿을 호출하지 않아도 되는 경우가 많습니다. 하면 할 수 요.
{{tl}}
template ("link" 템플릿)예를들면,{{tl Example}}
}{{예}을 생산한다.여러명의 다른template-linking 템플릿을 다른 기능으로 이용 가능하다. - 때 템플릿( 때 템플릿 또는 하나의 subtemplates의 편집 간행한다.)변경한 변화가 템플릿 transcluded 모든 페이지에 반영될 것이다.그러나 변화는 모든 페이지에 따라 즉시;페이지에서 이전에 캐시 된 버전, 템플릿의 이전 버전에 기초한 시간을 디스플레이 할 지속될 것이 보이지 않을 수 있다.한페이지면 사용 예들을 담고 있는 템플릿을 페이지에 자체 templates—including의 최신 버전을 사용하여 표시되도록 추방 기능을 사용한다.
- 언제, 페이지의 오래 된 버전을 보는 그들은 지금 반드시 그들이 늙은 페이지 버전 활동적이었다는 템플릿을 transcluded 것을 기억해다.
- 리스트에는 주식으로 템플릿 transcluded에 페이지 다, 여기는 무슨 템플릿 페이지에 연결을 사용한다.이것은 템플릿 대체되고 있페이지 포함하지 않을 것이다.
- 클릭하"편집"과 편집 창 아래의 리스트를 찾템플릿 목록을 한페이지에 transcluded 가기 위해서입니다.이 목록은 또한 subtemplates는 직접 transcluded는 템플릿이에서 사용하는 포함한다.페이지는 page,[f]의 오래 된 버전 또는 여러분이 새로 편집한 버전 전에 적절한 편집 페이지에서 모두 표시 미리 보기를 구하기에 그러한 목록을 가져오려면.
- 한 글이 가지고 있는 템플릿의 수와 복잡성에 한계가 있다.이 해결에 도움을 위해 그"한계 확장 §"섹션을 참조하십시오.
- 만약 당신이 시간 스탬프 또는 시그니처를 남겨둘 것을 템플릿을 원한다면 너는 쓸 수 있다.
<noinclude><nowiki></noinclude>~~~~~<noinclude></nowiki></noinclude>
만약 당신이 템플릿을 쓰지만, 이것은 일할 것이다.~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 일반적으로 프로그래머는 가독성을 높이기 위해 코드를 줄바꿈으로 분할하여 들여쓰기를 좋아합니다.유감스럽게도 MediaWiki 소프트웨어에서는 이 기능을 사용할 수 없습니다.많은 경우, 이러한 전용의 새로운 라인은 소프트웨어에 의해서 컨텐츠로서 취급됩니다.생각할 수 있는 회피책 중 하나는 다음과 같습니다.
<!--
줄과 " " " " " " each "-->
HTML 코멘트를 생성합니다.
템플릿 작성 및 편집
템플릿은 다른 페이지와 거의 동일한 방법으로 작성 및 편집됩니다.적절한 이름을 선택하고 해당 페이지로 이동한 후 "편집" 탭을 클릭하거나 필요에 따라 새 페이지를 만듭니다.위에서 설명한 바와 같이 템플릿은 일반적으로 템플릿 이름 공간에 배치되지만 개인 용도로 또는 실험용으로 템플릿을 만들 수 있습니다.일반 페이지 또는 문서에 포함할 수 있는 모든 항목은 템플릿에 포함할 수 있습니다.다른 템플릿( )도 포함됩니다.템플릿에서는 많은 경우 파라미터, 파서함수 및 기타 마법의 단어와 같은 프로그래밍 기능을 사용합니다.이 기능을 사용하면 트랜스코프된 내용은 컨텍스트에 따라 달라집니다.변환되는 정보와 변환되지 않는 정보를 제어하는 특수 태그도 있습니다.
템플릿을 작성하기 전에 기존 템플릿을 빠르게 검색하십시오(예: 카테고리:Wikipedia 템플릿)을 사용하여 원하는 작업을 수행하는 템플릿 또는 코드를 복사 및 수정(또는 그대로 두고 확장)할 수 있는 유사한 템플릿이 이미 있는지 확인합니다.새 템플릿의 기반이 될 수 있는 범용 템플릿을 찾습니다.예를 들어 navbox 템플릿은 범용 템플릿을 호출하여 쉽게 작성할 수 있습니다.Navbox.
템플릿에 어떤 이름을 선택할지에 대한 명확한 규칙은 없습니다.간단하지만 알기 쉬운 이름으로 합니다.유사한 템플릿이 있는 경우 일관된 이름 지정 패턴을 따르도록 하십시오.새 템플릿 이름에 대한 리다이렉트가 남아 있는 경우 기존 트랜스클루전(파손이라고 함)을 해제하지 않고 템플릿 이름을 변경할 수 있습니다.
기존 템플릿을 편집할 때는 매우 주의해야 합니다.변경사항은 많은 페이지에 영향을 미칠 수 있습니다.대부분의 경우 예상치 못한 방법으로 변경할 수 있습니다.따라서 관리자 및 템플릿 편집자를 제외한 많은 사용률이 높은 템플릿은 편집으로부터 보호됩니다.다른 편집자는 토크 페이지에서 변경을 제안할 수 있습니다.일부 템플릿은 실험용 샌드박스 및 테스트 케이스를 제공합니다.
쉽게 병합할 수 있는 사용되지 않거나 부적절한 템플리트 또는 템플리트의 삭제 또는 병합을 제안하려면 TfD(토론용 템플리트)로 이동하십시오.
취급 파라미터
템플릿에 공급될 수 있는 파라미터 값은 트리플브레이크로 둘러싸인 항목으로 템플릿코드에 표시됩니다.
- 이 코드 코드
{{{xxx}}}
매개 변수 라는 이름의 파라미터값으로 대체됩니다의 값에 의해 대체될 것이다.xxx
. 이들은 s라고 불립니다. - 그 법규들 코드
{{{1}}}
,{{{2}}}
이름 없는 파라미터(또는 이름 있는 파라미터 값)의 첫 번째 파라미터, 두 번째 파라미터 등으로 대체됩니다.1
,2
, 등)을 s라고 합니다.
매개 변수 값이 할당되지 못하면 아무런 교체, 이 것을 의미하지 않은 경우 값 매개 변수 파라미터에에 통과되 값이경우 치환되지 않습니다 않은 할당되지 열릴 예정이다.이는 파라미터에 대한 값이 전달되지 않은 경우입니다. xxx=
, 식의 값,식의 값.{{{xxx}}}
템플릿 내에는 문자 그대로 {{xx}}, 사용자가 예상한 '공백'이 아닙니다.디폴트 파라미터 값을 지정함으로써 보다 직관적인 동작을 실현할 수 있습니다.이 작업은 파이프 구문을 사용하여 수행합니다.{{{xxx dflt}}}
기본값을 지정합니다 기본 값을 지정합니다.dflt
매개 변수에 대해 명명된 매개 변수 지정된에 xxx=
그리고 ,그리고.{{{1 dflt}}}
기본값을 지정합니다 기본 값을 지정합니다.dflt
첫번째 이름을 밝히지 않은 매개 변수에 대해.첫 번째 이름 없는 파라미터의 경우.수시로, 이 대부분의 경우 이는 다음과 같은 늘 기본값을 지정하기 위해 사용됩니다 같은 null기본 값을 지정하기 위해 사용된다.{{{1 }}}
★★★★★★★★★★★★★★★★★」{{{xxx }}}
기본 값의 이 가명들이 특별한 경우이다.파라미터 에일리어스는 특별한 기본값입니다.들어 파라미터가 「」라고 하는 . 1=
, text=
, , , , 입니다. message=
Wikitext의 파라미터의 입니다.{{{message {{{text {{{1 }}}}}}}}}
사용할 수 있습니다.되어 있는 , 「 」를 참조해 주세요.message
, 그 에 "Priority"가 이어집니다.text
마지막으로 이름 없는 첫 번째 파라미터를 사용합니다. 해당 Wikitext는 Wikitext로 됩니다. message=A text=B
가 , Wikitext 로 됩니다.A
이중괄호 구문과 삼중괄호 구문은 여러 번 사용되기 때문에 표현이 애매할 수 있습니다.이러한 모호성을 해소하기 위해 공간을 포함하는 것이 도움이 되거나 필요할 수 있습니다.를 들어, 「」라고 하는 것은,{{ {{{xxx}}} }}
★★★★★★★★★★★★★★★★★」{{{ {{xxx}} }}}
5개의 교정기를 연속해서 입력하는 것보다 더 인간적으로 조작할 수 있습니다.그러나 템플릿 확장에 불필요한 공백이 나타나지 않도록 주의하십시오.
특수한 경우: XML 스타일의 오프닝 태그 내의 파라미터
는 라라터 in로 둘러싸여 .<nowiki>
태그. 실제 XML 스타일의 시작 태그 내에 배치되어 있는 경우에도 태그는 확장되지 않습니다.따라서 템플릿 내에서는 다음 기능이 작동하지 않습니다.
- <ref name=sam{sam}}> 스 <, 아sam(sam)... </ref>
이치노''를 할 수 .{{#tag:}}
예를 들어, 에서 사용되는 파서 함수{{sfn}}
<ref>...</ref>
요소. 도움말도 참조하십시오.마법의 단어 format포맷.그 때문에, 다음의 예가 기능합니다.
- {{#tag: ★ 스미스, 아담(1776)...= { } } 이름 = {{ { }} } } } } }
주의: URL을 너무 많이 확장했습니다.
파라미터의 값이 URL인 경우(또는 URL로 끝나는 경우), 링크를 클릭하면 오류 또는 오류가 발생하도록 해당 URL 뒤에 링크가 하나 이상 초과 확장되어 Wikipedia에 표시되는지 확인합니다.소프트웨어에 의한 처리 후 사용자 또는 사용자가 URL을 제공했는지, 자동 처리에 의해 생성된 것인지 여부에 관계없이 소프트웨어 공간(하드 공간 또는 비브레이킹 공간이 아님)이 URL 뒤에 있는지 확인하십시오.소스 코드에는 처리 중에 폐기된 공간이 포함되거나 생성되거나 공간이 없을 수 있습니다.소스 코드를 수정합니다(아마도 URL 뒤에 소프트스페이스를 강제로 표시하도록 합니다.그{{spaces}}
을 사용하다
시스템 변수 및 조건부 논리
템플릿 코드는 도움말에 설명된 변수 및 파서 함수를 사용하는 경우가 많습니다.템플릿 동작을 만들기 위한 마법 단어는 환경(현재 시간 또는 네임스페이스 등) 또는 템플릿에 전달되는 매개 변수 값에 따라 달라집니다.또한 산술 계산에도 사용할 수 있지만 루프 및 변수 할당과 같은 특정 표준 프로그래밍 기능은 사용할 수 없습니다.완전한 문자열 조작도 사용할 수 없습니다.이러한 기능을 제공하는 템플릿이 일부 작성되었지만 비효율적이고 불완전합니다.
가장 자주 사용되는 변수와 함수는 다음과 같습니다.자세한 내용은 도움말을 참조하십시오.MediaWiki 페이지의 매직 워드와 풀 문서 mw:도움말: 마법 단어 및 mw:도움말: 내선번호:파서 기능
★★★ | 된 텍스트(「」) | ★★ |
---|---|---|
텍스트 " " " " | {{uc: Heavens to BETSY! }} | |
" " " " | {{lc: Heavens to BETSY! }} | ★★★★★★★★★★★★★★★★★★! |
이름 | {{NS: 1 }} | 하세요. |
URL Wikipedia URL 받기 | {{fullurl: pagename }} | en..org/wiki/Pagename //en.wikipedia.org/wiki/Pagename |
파서 함수
★★★ | 된 텍스트(「」) | ★★ |
---|---|---|
의 스트링( 파라미터 | {{#ifeq: yes yes Hooray...! Darn...! }} | 만!! |
{{#ifeq: yes no Hooray...! Darn...! }} | ★★★★★★★★★★★★★★★★★★! | |
파라미터것이 포함되어 있는지 합니다. | {{#if: {{{param }}} Hooray...! Darn...! }} | ★★★★★★★★★★★★★★★★★★! |
하기 ][4의 3자리까지] | {{#expr: ( pi * 4 ^ 2 ) round 3 }} | 50.265 |
[1230 ] | {{#ifexpr: 1.23E+3 mod 2 Odd Even }} | 지어도. |
★★★ | 된 텍스트(「」) | " ( " " " " " " " " ) |
---|---|---|
「」 | {{PAGENAME}} | " " |
{{FULLPAGENAME}} | :: " " " | |
네임스페이스 " " " " " | {{NAMESPACE}} | . |
된 사용자 수 " " " " | {{NUMBEROFUSERS}} | 44,232,286 |
카테고리 수 | {{PAGESINCATEGORY:"Weird Al" Yankovic albums}} | 20 |
버전 " " " " | {{CURRENTVERSION}} | 1.39.0-wmf.22(511db43) |
리비전 타임스탬프 | {{REVISIONTIMESTAMP}} | 20220105212432 |
{{PAGENAME}}
★★★★★★★★★★★★★★★★★」{{NAMESPACE}}
변수는 컨텍스트에 따라 템플릿 동작을 변경할 때 특히 유용하고 자주 사용됩니다.들어 링크 템플릿,를 청소가 템플릿은 합니다.{{NAMESPACE}}
page, 될 수 있는 그가 필요한 페이지로 분류되지 않도록 입니다.
템플릿 중첩
템플릿에는 다른 템플릿이 포함될 수 있습니다.보통 템플릿이라고 불립니다.템플릿이 처리되면 네스트된 템플릿에 의해 생성된 Wikitext가 네스트된 템플릿으로 변환되므로 최종 제품은 기본적으로 가장 깊이 네스트된 템플릿에서 처리됩니다.응용은 꽤 간단하지만 주목할 만한 요령과 트릭이 수반됩니다.
매개 변수 값을 중첩된 템플릿에 전달하려면 매개 변수 태그를 중첩된 템플릿의 매개 변수 중 하나의 값으로 배치합니다.
- §:
- 에는 A가 들어 있습니다.
"the quick brown {{B {{{3}}} }} jumps over..."
[ Template ](템플릿)을 선택합니다.A' 템플릿:B의 첫 번째 위치 파라미터로 전달한 후 구문의 일부로 B에 의해 생성된 Wikitext를 반환합니다. - 에는 A가 들어 있습니다.
"the quick brown {{B waldo={{{3}}} }} jumps over..."
"Template" "Template" :A' 템플릿:월도라고 합니다.
템플릿 파라미터 자체는 조건부로 선택할 수 있습니다.
- §:
- 에는 A가 들어 있습니다.
the quick brown {{B {{{3}}}=fox}} jumps over...
Template의 로 "단어를 합니다.A 서 、 「 fox 」 、 「 Template 」 。'A'는 'A'로, 'A'는 'A'가 아니라 'A'는 'B'는 'A'는 'B'로 되어 있습니다. {{#if: test string value if test string is not empty {{#if: test string value if test string is not empty value if test string is empty (or only white space) }} }}
템플릿은 자신을 호출할 수 있지만 무한 루프를 방지하기 위해 1회 반복 후 중지됩니다.
하지 않는 중괄호가 포함되어 ( 「」의 경우와 ).{{lb}}}
: 일치하지 않는 괄호는 처리 중에 텍스트로 취급되며 네스트템플릿의 괄호 해석에는 영향을 주지 않습니다.단, 네스트된 템플릿이 대체될 경우 치환이 먼저 처리되며, 이로 인해 네스트된 템플릿에서 중괄호가 해석되는 방식이 변경됩니다.이 방법은 실용적으로는 거의 사용되지 않지만 예기치 않은 오류가 발생할 수 있습니다.
m:도움말:고급 템플릿 및 m:도움말:자세한 내용은 Wikitext를 재귀적으로 변환합니다.또, 이러한 페이지에는, 다음과 같은 비정상적인 콜에 관한 정보도 표시됩니다.{{template {{{parameter }}} }}
포함 제어: 포함 안 함, 포함만, 포함만
기본적으로 템플릿이 변환(또는 대체)되면 템플릿 페이지의 Wikitext(코드) 전체가 대상 페이지에 포함됩니다.그러나 템플릿 코드의 어느 부분을 포함할지를 지정하는 태그를 사용하여 이 동작을 수정할 수 있습니다.이를 통해 템플릿의 설명서 또는 카테고리 등 템플릿 페이지 자체에만 표시되도록 의도된 정보가 변환되지 않도록 할 수 있습니다.또한 코드 일부를 변환하지만 템플릿 페이지 자체에서는 처리하지 않을 수도 있습니다(예: 템플릿에 적용되지 않는 대상 페이지에 적용되는 카테고리).태그는 다음과 같습니다.
<noinclude>...</noinclude>
– 태그 간의 텍스트는 템플릿이 변환(치환)될 때 포함되지 않고 템플릿 페이지에서 처리됩니다.일반적으로 템플릿의 문서화에 사용됩니다.<onlyinclude>...</onlyinclude>
– 태그 사이에 표시되는 것 이외에는 페이지에 아무것도 변환(치환)되지 않도록 지정합니다.<includeonly>...</includeonly>
– 태그 사이의 텍스트는 변환(치환)되지만 템플릿 자체 페이지에서 처리되지 않습니다.
위 wik wik wik wik wik | 여기서 렌더링되는 내용(소스 페이지) | 트랜스코드된 내용(대상 페이지) |
---|---|---|
<noinclude> text1 </noinclude> text2 | text1 text2 | text2 |
<onlyinclude> text1 </onlyinclude> text2 | text1 text2 | text1 |
<includeonly> text1 </includeonly> text2 | text2 | text1 text2 |
<onlyinclude><includeonly> text1 </includeonly></onlyinclude> text2 | text2 | text1 |
이러한 블록을 사용할 때 가장 일반적인 문제는 불필요한 공간이나 회선일 수 있습니다.이러한 태그의 효과는 이전 줄이나 이전 표시 문자가 아닌 첫 번째 각도 괄호 바로 전에 시작된다는 것을 기억해야 합니다. 마찬가지로 효과는 다음 줄이나 다음 표시 문자가 아니라 마지막 각도 괄호 바로 뒤에 끝납니다.를 들면, '먹다'와 같이요.
<includeonly>
- < only>: <sublic only>
only <timeout only><noinclude>
- >}}}<noinclude>
<br></includeonly>
<noinclude>
- >{snoclude}<snoclude>
- 만>{{facebooks만>
<br>
는 서로 할 수 는 (페이지에 ) 네스트 할 수 것은, 「 할 수 없다」, 「네스트 할 수 있다」의 「네스트 할 수 있다」의 「네스트 할 수 있습니다.<onlyinclude>
네스트; 네스트<includeonly>
★★★★★★★★★★★★★★★★★」<noinclude>
태그는 전혀 의미가 없습니다. 태그는 .음음음 construct construct construct construct construct construct <onlyinclude>
<includeonly>
디폴트</onlyinclude>
</includeonly>
가 예상대로 동작하지 않습니다.HTML/XML에 표준인 "첫 번째 열기, 마지막 닫기" 규칙을 사용합니다.
문제와 회피책
- 템플릿 또는 파서 함수에 의해 생성된 첫 번째 문자가 4개의 Wiki 마크업 문자 중 하나일 경우:
:
,;
,*
,#
:템플릿 태그가 없는 경우에도 행의 선두에 있는 것처럼 처리됩니다[g].이를 통해 템플릿에 다양한 종류의 목록을 작성할 수 있습니다.템플릿은 목록에 대해 항상 올바른 위치에 있지 않을 수 있습니다.이를 방지하려면 다음 중 하나를 사용합니다.<nowiki />
마크업 전 또는 HTML 엔티티 사용:
,;
,*
, , , , 입니다.#
각각 다음과 같다.합니다.HTML 엔티티는, 「」, 「HTML」, 「HTML」, 「HTML」, 「HTML」, 「HTML」, 「HTML」,<nowiki />
중 될 때 합니다.이 문제는 템플릿콜의 파라미터 값이 4개의 문자 중 하나로 시작될 때 자주 발생합니다. - 부모 템플릿이 대체될 때 서브템플릿도 대체될지 여부를 제어하는 방법 등 템플릿 대체와 관련된 문제에 대해서는 다음 도움말을 참조하십시오.대체.
- " " "
{{Trim}}
이 경우 문제가 발생할 경우 이름 없는 파라미터 값에서 초기 또는 최종 공백을 제거할 수 있습니다.이렇게 하면 이름 있는 파라미터 값은 자동으로 삭제됩니다. - 다음 될 수 .
- 파서는 서버 리소스를 보호하고 무한 루프를 방지하기 위해 깊이 변환 중첩 및 확장된 템플릿을 사용한 페이지 크기에 일정한 제한을 가합니다.이로 인해 매우 복잡한 템플릿을 사용할 때, 특히 같은 페이지에 여러 개의 템플릿이 있는 경우 페이지가 끊어질 수 있습니다.자세한 내용은 WP:템플릿 제한서버상의 페이지 전체 로드는 생성된HTML에서 페이지를 검사하고 다음 페이지를 검색함으로써 확인할 수 있습니다.
NewPP limit report
comments.comments.comments. - 「 」를하지 주세요.
=
하여 기사 내에 에 의해, Wikimarkup이 됩니다.★★★★★★★★★★★★★★★★,[edit]
이 링크는 트랜스코드된 경우 편집하기 위해 템플릿을 혼란스럽게 엽니다.-
[edit]
에 합니다.<includeonly>__NOEDITSECTION__</includeonly>
.
-
문서
템플릿을 분류하고 적절한 사용법을 문서화하면 다른 편집자가 더 쉽게 찾고 사용할 수 있습니다.
.<noinclude>...</noinclude>
'태그'를. 일반적으로 개구부를<noinclude>
불필요한 공백이 넘어가지 않도록 코드 종료 직후에 공백이나 줄 바꿈 없이 태그를 지정합니다.
복잡한 템플리트의 경우 문서(카테고리 포함)는 종종 템플리트 페이지("템플릿:XXX/doc") 이는 관리자가 아닌 다른 사용자가 정보를 편집할 수 있는 많은 보호된 템플릿에도 적용됩니다.이것은, 다음의 데이터 베이스의{{Documentation}}
에 있는 과 "Detail" 내의 템플릿<noinclude>...</noinclude>
태그. "/doc" 서브페이지가 존재하지 않는 경우 링크를 통해 서브페이지를 만들 수 있습니다.
분류
템플릿 포함별로 페이지 분류
일부 템플릿은 특정 카테고리에 대상 페이지를 배치하기 위해 변환된 코드에 카테고리 정의를 포함합니다.이 작업은 유지관리 카테고리에서 종종 수행됩니다(이렇게 기사를 일반 콘텐츠 카테고리로 분류하는 것은 권장되지 않습니다).할 때는 '아까운가보다'를 해야 할 도 있습니다.<includeonly>...</includeonly>
태그로 템플릿 자체를 카테고리에서 제외합니다.카테고리를 적용하기 위한 템플릿을 개발, 테스트, 샌드박스화 또는 데모하는 동안 각 카테고리를 테스트카테고리(X1, X2, 또는 X3)로 일시적으로 치환하거나 카테고리화를 억제합니다(템플릿의 카테고리 억제 참조).
템플릿 분류
★★★★★★★★★★★★★★★★★★★」[[Category:Some-topic templates]]
문서 페이지( inside(내부)에.<noinclude>...</noinclude>
태그 지정)을 사용하여 트랜슬레이징 페이지가 오염되지 않도록 합니다.
에일리어스
에일리어스는 리다이렉트로 작성할 수 있습니다.예를 들어 Template:Tsh "템플릿"으로 리다이렉트합니다.템플릿 바로가기그런 다음 글을 쓸 수 있습니다.{{tsh foo}}
{{Template shortcut foo}}
공백과 대문자만 다른 템플릿에일리어스를 준비하는 것이 좋습니다.예를 들어 다음과 같은 템플릿이 있습니다.{{See Wiktionary}}
이고 Wiktionary는 를 리다이렉트 위키사전{{See wiktionary}}
사용자가 대신 후자를 입력할 수 있기 때문에 "w"가 작을 수 있습니다.
템플릿 제한
"확장 후 포함 크기" 제한.브라우저에서 보기 위해 HTML로 템플릿을 렌더링하거나 확장할 때 메모리를 사용합니다.이것은 "post-expand include size"라고 불리며 2,048,000 바이트의 제한이 있습니다.이 크기는 HTML 출력에 보이지 않는 코멘트로 포함되어 있습니다.브라우저의 뷰 소스 기능을 사용하여 원시 HTML을 표시하고 "newpp"를 검색합니다.리포트는 다음과 같습니다.
제한 NewPP " " " 수: 후 크기: 63476/2048000 바이트 크기:: 9517/2048000 바이트 수: 가 2 2 : 2/500 -->
이 예에서는 템플릿 확장이 2,048,000바이트의 사용 가능한 메모리 중 63,476바이트를 사용하고 있습니다.
디스플레이 문제페이지에 너무 많은 템플릿이 포함된 경우 확장 후 포함 크기가 제한을 초과할 수 있습니다.이 경우 제한 후의 템플릿은 전개되지 않고 Wikilink(Template:Template name 등)로 표시됩니다.인용 템플릿이나 플래그 템플릿이 너무 많이 포함된 것이 일반적인 원인입니다.이 문제를 해결하려면 템플릿을 대체하거나 템플릿을 삭제하거나 페이지를 분할합니다.
비렌더링 트랜슬레이션은 여전히 제한에 해당합니다.예를 들어, 다음 항목만 포함하는 페이지입니다.{{#if:{{:Main Page}}}}
출력은 전혀 없더라도 포스톨 후의 사이즈는 그대로입니다.
Scribunto 모듈에도 동일하게 적용됩니다.예를들면,{{#invoke:Test main}}
시험은 간단했습니다.
. Current Frameget Current Frame ('' 현재 프레임) ) : ( ) : :"{msgnw: 인인페" "" "" } 。 이이 됩니다-- 이이삭 、 0 이이이 。 = ) 합니다.} .p.main()는 반환값입니다.
루아 프로그래밍 언어
2013년 2월부터 Lua 프로그래밍 언어는 Scribunto MediaWiki 확장을 통해 사용할 수 있습니다.Lua 코드를 템플릿에 포함할 수 있습니다.{{#invoke:}}
Scribunto MediaWiki 확장 기능Lua 소스 코드는 모듈이라고 불리는 페이지에 저장되며 이러한 개별 모듈은 템플릿페이지에서 호출됩니다.예를 들어 Module:예를 들어 코드를 사용하여 호출할 수 있습니다.{{#invoke:Example hello}}
'헬로 월드'라는 텍스트를 인쇄합니다.
템플릿 검색
위에 링크된 이 인덱스를 사용하는 대신 Special을 사용하여 템플릿 이름 공간을 검색할 수 있습니다.아래 검색 상자:
「 」를 참조해 주세요.
도움말 페이지
- : 요: :
- Magic (매직워드) : "Magic Words" (영어)
- : strings( 조작)
- Metatemplating (: Metatemplating)
- WP: ★★★★★★★★★★★★★★★★★★★★★★★★★」
- WP: ★★★★★★★★★★★★★★★★」
- WP: ★★★★★★★★★★★★★★★★★★★★★★」
- 샌드박스 및
- WP: TemplateData: VisualEditor에서 사용되는 표준화된 템플릿 설명
- WP: Wiki 프로젝트 ★★★
- :: " " " "
- : 계산: 계산: 계산
- :: " " " " "
- : m m: m m
- 해피멜론//템플릿
- :ExpandTemplatesmw: ExpandTemplates
- 도움말mw:Parser 파능기
- : 매직워드: 매직워드: 매직워드
- 도움말 mw: 템플릿
Mediawiki 매뉴얼 페이지
- $: 동 $ : $wgEnableScaryTranscling
- Nonincludable Namespacesmw:$wg Noncludable Namespacesmw:$wg Noncludable Namespacesmw
- mw:.displays.displays
- Manual mw: : 파서 서함
스페셜 페이지
- WP: 대부분의 페이지에서 변환된 데이터베이스 보고서/템플릿 - 리다이렉트를 통한 트랜슬레이션은 카운트되지 않음
- 스페셜:All pages(네임스페이스 10): 템플릿네임스페이스의 모든 페이지
- : : ExpandTemplatesExpand템플릿
- 스페셜:[Unused templates] : 트랜스코드되지 않은 템플릿(단, 치환에 사용할 수 있음)
기타 백엔드 페이지
- 도움말: 사용자 스타일: CSS 및 JS 페이지
- 도움말: 시스템메시지: MediaWiki 네임스페이스 페이지
- m: 프로젝트 포털: 다국어 포털페이지
- WP: 도서 소스—스페셜에서 사용:서적 자원
- :: " " " "
- : 예
비고
- ^ 이 허용되지 않는 Wiki에 됩니다.
$wgNonincludableNamespaces
. - ^ 예: ,음음, some some, some some some some some)
{{Requested move}}
.reason=
가시 출력으로 지정합니다.이치노 - ^ 새로운 Wikitext 자체를 검토해야 하고 소스 편집 중에는 새로운 Wikitext 자체를 미리 볼 수 없으므로 페이지를 미리 보는 것은 Wikitext에서 템플릿 대체 결과를 나타내지 않습니다.
- ^ 파서가 별도로 처리하는 다른 템플릿콜 또는 기타 항목 내에 등호 부호가 있는 경우에는 적용되지 않습니다.
- ^ 다시 말하지만 파이핑된 Wikilink 등 별도로 해석된 다른 항목 내에 있는 경우에는 해당되지 않습니다.
- ^ 이전 버전의 경우 하위 템플릿 트리는 템플릿의 현재 상태에 따라 구성됩니다.
- ^ 이것들은 Parser.php의 함수로 정의되어 있습니다.