Шаблон:Namespace detect

Из Википедије, слободне енциклопедије


Padlock.svg

Овај критични шаблон је закључан да би се спречио вандализам (дневник закључавања).

Икона за документацију Документација шаблона[view] [уреди] [историја] [освежи]

Ово је {{namespace detect}} мета-шаблон.

Он помаже другим шаблонима да открију на ком типу странице се налазе.

Овај шаблон детектује и групише све именске просторе Википедије у неколико типова:

main = главни именски простор, Википедијини чланци.
talk = све стране за разговор, као што су оне које почињу као Разговор:, Разговор са корисником:, Разговор о слици: и тако даље.
user, wikipedia, image, mediawiki, template, help, category и portal = Остали именски простори изузев страна за разговор.
other = Сви именски простори који нису спецификовани као параметри овог шаблона. Види објашњење испод.

Напомена! За већину употреба је можда боље да се користе једноставнији шаблони за детектовање именских простора. (Види види још одељак испод.) Овај шаблон је склонији проблемима услед људских грешака као што су погрешно откуцана имена параметара.

Коришћење

Овај шаблон узима један или више параметара који представљају имена типова излистана горе. На пример:

{{namespace detect
| main  = текст за чланак
| talk  = текст за страну за разговор
| other = текст за остале странице
}}

Ако је шаблон позван из главног (неки чланак) именског простора, даће следећи резултат:

текст за чланак

Ако је пак позван са било које друге странице која није у главном нити именском простору за разговор, шаблон ће дати следећи резултат:

текст за остале странице

Горњи пример је учинио да шаблон прикаже неки резултат за све типове страница. Међутим, ако не бисмо користили параметар other или ако бисмо га оставили празног, он не би приказивао ништа на осталим страницама. Следи илустрација:

{{namespace detect
| image    = текст за страницу слике
| category = текст за страницу категорије
| other    =
}}

На свим страницама које не представљају странице слика или категорија, овај шаблон неће дати никакав видљив приказ.

Коришћењем празног параметра, може да се постигне да шаблон не приказује ништа на одређеним типовима страница. На пример:

{{namespace detect
| main  = 
| other = текст за остале странице
}}

Горњи код неће приказати ништа у главном именском простору, али ће вратити следећи резултат на свим другим страницама:

текст за остале странице

Demospace

За тестирање и демонстрацију, овај шаблон може да користи параметар demospace. Demospace узима вредности било ког имена именског простора које овај шаблон користи, укључујући и тип other. Он говори шаблону да се понаша као да се налази на одређеном типу страница. На пример:

{{namespace detect | demospace = main
| main  = текст за чланке
| other = текст за остале странице
}}

Небитно на ком типу страница позовемо овај шаблон, вратиће следећи резултат:

текст за чланке

Може бити згодно да шаблон који позива овај шаблон узима параметар demospace, и шаље га у {{namespace detect}} шаблон. То се постиже на следећи начин:

{{namespace detect 
| demospace = {{{demospace|}}}
| main      = текст за чланке
| other     = текст за остале странице
}}

Ако је параметар demospace празан или недефинисан, овај шаблон ће детектовати тип странице на уобичајен начин.

Технички детаљи

Шаблони имају проблем са усправним цртама (|) унутар параметара, осим ако се усправна црта налази унутар другог шаблона {{име|параметар1}} или унутар линка [[Помоћ:Шаблон|помоћ]]. Стога шаблони имају проблема када им се као улаз проследе викитабеле, осим ако се уместо усправних црта користи помоћни шаблон {{!}}. Ово отежава коришћење викитабела као параметара шаблонима. Уместо тога се често користи класично ХТМЛ означавање за табеле.

Види још

Шаблони за детектовање именског простора, једноставни за коришћење:

  • {{main other}} – За шаблоне за чланке.
  • {{talk other}} – За шаблоне за стране за разговор.
  • {{image other}} – За шаблоне за слике.
  • {{category other}} – За шаблоне за категорије.

Технички детаљи: