Hyeongeo:틀

틀:도움말
틀:문서 편집 도움말
미디어위키의 **틀** 기능은 여러 문서들 간에 공통적인 부분이 있을 때, 그 부분을 따로 모아서 편집하기 쉽게 만들어 주는 기능입니다.

## 기본 사용법

일반적으로 **틀:**이라는 틀 이름공간이 앞에 붙고, 사용할 때에는 {{틀 이름}}과 같이 사용합니다. 틀데이터를 통해 시각편집기에서 틀에 대한 자세한 설명을 볼 수 있습니다.

풀기 문법을 사용하여 서버의 부하를 줄여줄 수 있습니다(`{{풀기:생물 분류}}`). 하지만 복잡한 틀을 풀어쓰면 대용량의 문서 편집시 더욱 악영향을 줄 수도 있습니다.

## 사용되는 예

* 문서에 자주 사용되는 정보를 간단하게 표시하는 경우
	+ {{토막글}}, {{동음이의}} 등의 틀이 이에 해당됩니다.
* 같은 주제를 가진 글의 목록
	+ {{아시아}}, {{대륙}} 등의 틀이 이에 해당됩니다.
* 같은 주제, 같은 양식을 사용하는 문서들을 간단하게 관리하려는 경우
	+ {{인물 정보}} 등의 틀이 이에 해당됩니다.

## 기본 틀

틀:참고
미디어위키에는 기본적으로 내장되어 있는 틀이 있습니다.

* {{CURRENTMONTHNAME}}
* {{CURRENTDAY}}
* {{CURRENTDAYNAME}}
* {{CURRENTTIME}}
* {{PAGENAME}}
* {{FULLPAGENAMEE}}
* {{NUMBEROFARTICLES}}
* {{NUMBEROFADMINS}}
* 현재 달 이름: 1월
* 현재 날짜: 24
* 현재 날 이름: 수요일
* 현재 시각(UTC): 13:54
* 문서 이름 (이름공간 제외): Hyeongeo:틀
* 문서 이름 (이름공간 포함: Hyeongeo:%ED%8B%80
* 문서 수: 110
* 관리자 수: 1

## 매개변수

틀에 매개변수를 사용할 수도 있습니다. 매개변수를 넘겨 주려면 다음과 같이 사용합니다.

{{틀 이름|매개변수1|매개변수2}}
이 때, 각각의 매개변수 사이에 파이프 문자(|)를 사용하여 구분합니다. 또한, 매개변수 사이의 공백은 무시됩니다. 따라서, 다음과 같이 사용할 수도 있습니다.

{{틀 이름
}}
이와 같은 방식은 매개변수가 많이 들어가는 경우에 유용합니다.

몇몇 틀은 매개변수에 이름을 사용하는 경우도 있습니다.

{{틀 이름|변수이름=매개변수값}}
만약 매개변수 이름이나 매개변수 값에 특수한 문자가 들어가는 경우에는 퍼센트 인코딩이나 {{!}} 틀을 사용해야 할 수도 있습니다.

* 파이프 문자가 매개변수 자체에 포함되는 경우 이것이 틀 매개변수를 구분하는 문자로 잘못 처리될 수 있습니다.

* 다음과 같이 파이프 문자가 매개변수로서의 다른 틀 안에 들어있거나 위키링크 안에 들어가 있는 경우에는 문제가 되지 않으므로 그대로 사용해도 됩니다.

`{{틀1 | {{틀2 | 매개변수1 }} }}` (올바른 예.)
`{{틀1 | [[hyeongeo:틀 | 틀]] }}` (올바른 예.)
* 매개변수로 쓰인 URL 주소에 파이프 문자가 포함되었을 경우에는 그대로 쓰면 잘못 처리되므로 다음과 같이 퍼센트 인코딩을 사용해야 합니다.

`{{웹 인용 | 제목=예문 | url=http://example.org/pipe_%7C_pipe }}` → 틀:웹 인용 (올바른 예.)
`{{웹 인용 | 제목=예문 | url=http://example.org/pipe_|_pipe }}` → 틀:웹 인용 (잘못된 예, 주소 일부가 잘림.)
* 틀의 매개변수 안에 위키 표(테이블)가 들어가는 경우 표에서는 파이프 문자 대신 {{!}}틀을 사용해야 합니다. 위키 표를 쓰지 않고 `<table>`같은 HTML 코드를 그대로 사용하는 방법도 있으나, HTML코드가 잘못 쓰일 경우 문서 전체에 문제를 야기할 수 있으므로 주의해야 합니다. 반대로 표 안에 틀이 들어갈 경우에는 파이프 문자를 그대로 써도 됩니다. 다음의 예를 참고하세요.

```
}}
```

```
{{{!}}
{{!}}이름{{!}}{{!}}특징
{{!}}-
{{!}}사과{{!}}{{!}}맛있다
{{!}}}
}}
```

```
```

* 매개변수 값에 등호(=)가 들어가면 틀에서 '이름 있는 매개변수'로 인식하기 때문에 잘못 처리될 수 있습니다. 이를 해결하려면 순서에 따라 매개변수에 1, 2, … 순으로 이름을 지정해 입력하면 됩니다. 다음은 틀을 이용해 'a=b=c'라는 문자열의 앞 4글자를 취하는 예입니다.

`{{Str left | a=b=c | 4}}` → 틀:Str left (잘못된 예, 제대로 나오지 않음.)
`{{Str left | 1=a=b=c | 2=4}}` → 틀:Str left (매개변수 이름을 순서대로 1, 2로 지정하여 해결.)
## 틀 만들기

틀을 만들거나 고칠 때에는 틀의 이름 앞에 **틀:**을 붙인 문서를 만들면 됩니다. 예를 들어,
{{토막글}} 틀을 편집하고 싶을 때는 틀:토막글을 편집하면 됩니다.

### 매개변수

틀 내부에서 매개변수를 이용하려면 {{{1}}}와 같이, 각 매개변수의 순서 값을 중괄호 세 개로 감싸줍니다. 만약 틀을 사용할 때

{{사용하려는 틀|123|456}}
와 같이 사용하였다면, {{{1}}}에는 123, {{{2}}}에는 456의 값이 들어가게 됩니다.

매개변수에 이름을 붙인 경우에는 {{{매개변수 이름}}}과 같이 사용하면 됩니다.

{{사용하려는 틀|값1=123|값2=456}}
{{{값1}}}=123, {{{값2}}}=456
해당 매개변수가 입력되지 않았을 때 기본적으로 출력되는 문구를 만들고 싶다면, {{{1|안녕}}}와 같이 중괄호 뒤에 버티컬 바를 붙여주면 됩니다. 이 경우 1이 입력되지 않았을 때 '안녕'이 출력됩니다.
만일 어떤 매개변수를 여러 가지 방식으로 호출하고 싶다면, {{{group| {{{묶음|}}} }}}와 같이 중괄호 세개를 내부에 추가해주면 됩니다.

### 설명 쓰기

틀이 들어가는 문서에 삽입되지 않는, 틀 자체에 대한 설명을 쓰려면 다음과 같이 합니다.

1. 틀의 내용을 <onlyinclude></onlyinclude>로 감쌉니다.
2. 그 아래에 틀 자체에 대한 설명이나 분류, 인터위키 등을 추가합니다.

문서에 삽입되지만 틀 설명에서 보이지 않게 하고 싶은 내용은 <includeonly></includeonly>로 감쌉니다.

이 문법기능에 대해 자세한 내용은 아래의 #끼워넣기 문법을 참고하세요.

다른 언어판에서 틀을 도입할 때 위의 예를 따르지 않고

```
}}

```

와 같이 쓰기도 합니다. 저 방식이 |가 값을 감싸서 깔끔해 보이기도 하지만, 실제 편집에 end키를 사용하기 어려워지고 마지막 변수 뒤에 불필요한 |가 또 들어간다는 문제가 있습니다. 따라서 위의 예시를 쓰는 것이 더 좋습니다.

### 끼워넣기 문법

틀이나 문서의 이름을 중괄호 “{{ }}”로 감싸주면 틀이나 문서의 전체, 또는 일부를 다른 문서에 끼워 넣을(Transclude) 수 있습니다. HTML 문법의 iframe(inner frame)과 PHP 문법의 `include("문서경로")`와 비슷한 기능을 갖습니다. 끼워 넣을 부분을 지정하려면 onlyinclude, includeonly, noinclude의 미디어위키 전용 태그를 쓰면 됩니다. 이 세 태그는 모두 속성값은 갖지 않으며, 모두 시작 태그와 마침 태그를 필요로 합니다.

onlyinclude
틀을 사용할 때 끼워 넣을 부분을 지정합니다. 이 태그를 사용하지 않으면 기본값으로 문서 전체가 들어갑니다. 세 태그 중 가장 빈번하게 쓰며, 일부러 줄바꿈을 넣을 때 말고는 끼워 넣을 부분의 바로 곁에 붙여주는 것이 좋습니다.
includeonly
틀을 다른 문서에 끼워 넣을 때에만 나타날 부분을 지정합니다. 둘러보기 틀과 같은 특정 분야에 대한 목록 틀을 끼워 넣었을 때, 자동으로 문서를 분류하는 용도로 자주 씁니다.
noinclude
끼워넣기를 할 때 포함하지 않을 부분을 지정합니다. 틀 자체의 분류나 설명에 씁니다. onlyinclude를 썼다면 나머지 부분을 굳이 noinclude로 감쌀 필요는 없습니다.
## 같이 보기

* hyeongeo:문서 끼워넣기
* hyeongeo:틀 목록
* 분류:hyeongeo 틀
* hyeongeo:틀 설명문서
* hyeongeo:틀데이터

틀:Hyeongeo 기술 도움말