2013-03-01 4 views
2

다른 템플릿에서 매개 변수를 상속받는 템플릿을 가져올 수 있습니까? 질문을 표현할 수있는 더 좋은 방법을 생각할 수 없기 때문에 예를 들려주세요.MediaWiki 템플릿은 매개 변수를 상속합니다.

"테스트 페이지"라는 페이지에 사용되는 두 개의 템플릿 {{test1}}{{test2}}이 있다고 가정 해보십시오.

틀 : Test1 파일 :

{{{par1}}}<br> 
{{{par2}}}<br> 
{{test2}} 
<!--{{test2|par3={{{par3}}}|par4={{{par4}}}}}--> 

틀 : Test2를 :

{{{par3}}}<br> 
{{{par4}}}<br> 

테스트 페이지 : 나는 사장님 것이 무엇 그래서

{{test1|par1=aaa|par2=bbb|par3=ccc|par4=ddd}} 

Template:Test1에 주석 라인을 포함하는 것이 일을

aaa 
bbb 
ccc 
ddd 

일반적인 방법 : 일이 가지고있는 전자 그것을 디스플레이가 있습니다. 거기에 자동으로 매개 변수를 전달하는 어쨌든 있나요? 이 평범한 것을 위해, 그것은 명백하게 par3={{{par3}}}라고 말하는 것이 문제가 아니지만 템플릿이 훨씬 복잡 해지면 정말 도움이 될 수 있습니다. 모든 팁을 가장 높이 평가합니다.

답변

2

설명하려고하는 것은 인수 전달입니다. 아니요, 미디어 위키 템플릿만으로는 불가능합니다.

개발중인 새로운 Lua 엔진 (최종적으로 코어의 일부가 될 것을 목표로하는 Extension : Lua로 테스트 할 수 있음)이이를 가능하게하는 것으로 보입니다.

+0

Darnit. 답변과 추가 정보를 보내 주셔서 감사합니다! – Zack

1

당신은 test1

{{test2|{{{arg1}}}={{{par1}}}|{{{arg2}}}={{{par2}}}}} 

을 사용하고

{{test1|arg1=par1|arg2=par2|par1=foo|par2=bar}} 

로 전화를하지만 당신은 아마 루아 대기에 의해 정신의 공정한 금액을 절약 할 수 있습니다. (이미 작은 Wikipedias에 배포되었고 3 월에 배포 될 예정이므로 오래 기다릴 필요가 없습니다.)

0

먼저 Test2 템플릿을 매개 변수없이 호출하면 의미가 없습니다. {{test2}} (매개 변수 없음)로 호출했습니다.

페이지 전역 변수가 필요한 경우에는 Mediawiki Variables 플러그인을 사용하는 것이 좋습니다. http://www.mediawiki.org/wiki/Extension:Variables

또한, 이러한 {{{PAR1 |}}}와 같은 수직 막대와 "기본"템플릿 매개 변수에 좋은 방법입니다 또는 {{{PAR2 | 없음}}}. 그렇지 않으면 매개 변수가 주어지지 않으면 결과로 나오는 위키 텍스트는 중괄호가있는 매개 변수 이름이됩니다. 예를 들어 : {{{par1 |}}}은 해당 매개 변수가 주어지지 않으면 공백 문자열을 반환하지만 매개 변수가없는 경우 {{{par1}}}은 실제로 문자열로 "{{{par1}}}"을 생성합니다 아마도 유용하지 않을 것입니다.

템플릿 TEST1이된다 :

{{{par1|}}}<br/> 
{{#vardefine: par2|{{{par2|}}} }} 
{{test2}} 
돌아 가기 변수를 사용하여 내 예

, 나는 당신의 예를 적응 (PAR1은 TEST1 템플릿으로가는 주장이다 PAR2은 TEST2 템플릿으로가는 인수입니다)

템플릿 test2는 다음과 같습니다.

{{#var:par2}}<br/> 
관련 문제