Šablona:Kotva/doc

Z Wikiverzity

Šablona slouží k vložení HTML kotvy - pojmenovaného místa v textu stránky, na které je potom možno odkazovat z té samé stránky pomocí kódu [[#název kotvy]] nebo pomocí [[Stránka#Název kotvy]] z jiné stránky. Odkaz tedy funguje stejně jako odkazy na nadpisy přes automaticky generované obsahy. Tato šablona však umožňuje stejným způsobem ručně odkazovat:

  • jiná místa v článku, než jsou kapitoly,
  • nebo vedle standardního odkazu na kapitolu nabídnout též alternativní, který se liší od text nadpisu
  • a navíc se nezmění při přejmenování kapitoly.

Kotvy nejsou v režimu čtení vidět, tudíž jejich využití není právě intuitivní a stojí za zvážení, není-li detailnější členění do kapitol vhodnějším řešením.

Použití[editovat]

Označení[editovat]

Kotva na nadpis[editovat]

K nadpisům principiálně kotvy ani není potřeba vkládat: Pro nadpisy jsou vygenerovány automaticky, viz mechanismus klikatelných obsahů na vršcích delších stránek.

Šablonu nevkládejte přímo do nadpisu kapitoly, nýbrž těsně nad něj:

{{Kotva|Název}}
== Nadpis ==

K použití snad leda by byl potřeba jiný identifikátor pro klik, navíc konstatní, nicméně i pak o takovém je potřeba dát vědět i ostatním a vůbec cíl nějak udržovat, tedy trvá otázka: Proč vlastně? Stále je lepší využít nějaký oficiálnější mechanismus, tentokrát přes přesměrování [[Stránka#kotva]] se znakem # v odkazu na cíl.

Totiž odkazy na kotvy zapsané "natvrdo" přímo do stránky se špatně udržují: Při první změně názvu článku či kapitoly (například při přejmenování/přesunu článku) přestanou fungovat. Naproti tomu oprava redirectů je standardní součástí procesu přesouvání, tedy i jejich odkazy se běžně rovnou opravují.

Kotva na pojem v textu[editovat]

Vložení kotev na pojmy v textu:

a) ; nadpisek{{Kotva|Název}}
b) "...se utkali{{Kotva|utkali}} v roce..."

Opět je lepší pro takové místo či odstavec vytvořit podkapitolu nižší úrovně a zase využít mechanismu kapitol a šablony {{redirect}} k označení odkazovacího místa i pro ostatní.

Více kotev najednou[editovat]

Šablona umí vložit až 10 kotev najednou:

{{kotva|z11|z22|z33}}

Zde by se vložily tři kotvy.

Nezadaná kotva[editovat]

Při chybném volání vůbec bez určené kotvy se do stránky vloží chybové hlášení:

{{kotva|}}

Šablona „Kotva>Seznam“ požaduje hodnotu v parametru „1“, ta ale chybí! (neprázdný spojitý seznam v nepojmenovaných parametrech)

Přeskočená kotva[editovat]

Při volání sice s vyplněnými identifikátory vícera kotev, když ale je některá přeskočena, vytvoří se jen ty počáteční: Předpokládá se souvislá řada, další nesouvisle vyplněné jsou ignorovány.

{{kotva|z11|z22||z44}}

Zde by se vložily dvě kotvy.

Odkázání[editovat]

Na vloženou kotvu lze odkázat:

  • pomocí [[#Název-kotvy]] nebo [[#Název-kotvy|text odkazu]] ze stejného článku,
  • pomocí [[Jméno článku#Název-kotvy]] nebo [[Jméno článku#Název-kotvy|text odkazu]] z jiných článků či přesměrování.

Doporučení k použití[editovat]

Někdy může být kotva pro místní odkazování v rámci stránky vhodnější než přímo názvy kapitol, protože výslovné kotvy zůstanou platné, i pokud bude kapitola přejmenována nebo stránka přesunuta. Na druhou stranu však šablona zesložiťuje kód, používejte ji proto jen v odůvodněných případech. Tuto šablonu {{kotva}} tedy používejte, když už, tak raději jen k odkazům [[#kotva]] v rámci jedné stránky.

Naproti tomu pro odkazování mezistránkově "stačí jen" místní cílové kotvy zveřejnit, odkazující stránka už si pak odkazy zařídí u sebe. Než komplikovat práci editorům ostatních stránek dlouhými odkazy, případně je nutit funkčnost odkazu ověřovat, je lepší pro ně odkazovací cíle již připravit:

  • Vložit vnořený podtitulek, novou podkapitolu. (než ručně vytvářet novou kotvu, neviditelnou)
  • Na kotvu, například podkapitoly, vytvořit přesměrování s prostým názvem bez znaku #. (Tento znak a určení kotvy ať jsou schovány až uvnitř definice redirectu.)
  • Do světa pak oznámit připravené přesměrování, typicky šablonou {{redirect}}. (neoznamovat jen samotnou syrovou kotvu, polotovar)

Tedy skutečně, příprava kotvy, aby se na ni odkazovalo i mezistránkově, a to systematicky, dá trochu práce navíc.

Vlastnosti kotvy[editovat]

Unikátnost[editovat]

Aby odkaz zafungoval správně, předpokládá se, že je kotva s daným názvem v celém článku nanejvýše jedna: Každá kotva ve stránce musí mít vlastní unikátní název, aby každá mohla zafungovat, což je na odpovědnosti editora. Technicky duplicita názvu dvou kotev strojům žádné potíže nezpůsobí, zato uživatel se dokliká vždy jen na první cílovou kotvu s takovým identifikátorem, na první takovou instanci: Na žádný další výskyt už se mechanismus dohledávání nedostane.

Diakritika a velikost písmen[editovat]

Identifikátor kotvy rozlišuje velikost písmen i diakritiku. Při ručním definování kotvy: Jaké "id" tedy má wikipedista definovat, aby bylo správné?

Při použití kotvy z kapitoly, kde jsou mezery, jsou pak v URL tyto mezery nakonec nahrazeny podtržítky "_". Při použití pak fungují oba odkazy: jak s mezerami, tak s podtržítky místo mezer: [[stránka článková#Kapitola_několikátá]]. Ačkoli lze potržítkované odkazy na kotvy na WP občas najít, zjevně když kotvu někdo překopíroval z URL. Vlastně ale jde o chybu: I v odkazech na víceslovné názvy stránek máme mezery, přesto se nepíší s %20 jako bývá v URL. V kotvách a i odkazech na ně je správné používat mezery, tedy dodržet skutečné názvy kapitol.

MediaWiki[editovat]

MediaWiki kotvy plně podporuje: Umí je na ně jak odkazovat [[stránka článková#Kapitola několikátá]], tak je i generovat. MediaWiki každému nadpisu rovnou definuje i kotvu o stejném názvu: Se stejnou velikostí písmen, diakritikou i mezerami. Editor tedy o identifikátorech nepotřebuje rozhodovat, ba ani o nich uvažovat či polemizovat: Automaticky generované kotvy není potřeba zpochybňovat.

MediaWiki umožňuje na jednu kapitolu a jednu její kotvu odkazovat mnoha různými redirecty, tyto navíc mají relativně krátké názvy. Naproti tomu snaha o přímé ruční definování několika kotev do jednoho místa vyžaduje spoustu práce jak s jejich vytvářením v cílové stránce, tak jejich udržování v tom textu, například při každé další editaci daného odstavce. A protože lze text editovat nejen jako zdrojový text, nýbrž dnes WP umožňuje i WYSIWYG, je ruční neviditelná kotva uprostřed textu jen přiděláváním práce: Například i při reformulaci textu.

Navíc i z pohledu odkazujících stránek je potřeba předem znát cílovou kotvu a sestavit z ní odkaz: Tedy vepsat nejen název cílové stránky, také pro někoho možná neobvyklý znak # a pak ještě text pro ID kotvy, ať už ho zjistí jakkoli...

Než vytvářet ruční reference a pak je i ručně udržovat, je systematičtější využít automatické kotvy kapitol a odkazovat na ně: Buď napřímo, což je opět náročné na ruční práci editorů, jak při odkazování, tak při opravách po přesunech stránek či přejmenování kapitol, anebo lze na kapitoly odkazovat přes kotvy pomocí redirektů: Texty odkazů jsou kratší, bez speciálního znaku, a i systematicky udržovatelné: Pokud by byla odkazovaná kapitola přejmenována a kotva v odkazu přestala fungovat, stále funguje alespoň odkaz na stránku. Neaktuální kotvu z přesměrování na kapitolu pak lze snadno opravit, mj. i díky oznámení {{redirect}}, která nejen ukazuje původní cíl, navíc inspiruje k ověření i ostatních přesměrování, funkcí "Odkazuje sem" po straně.

Technické pozadí[editovat]

Ačkoli je kotva oficiálně definována jako HTML značka Šablona:Tag, software MediaWiki tuto značku nedovoluje použít. Šablona místo celé značky dosahuje obdobného účinku přes atribut Šablona:Tag a skutečnosti, že takto přes "id" lze v HTML kotvu pro odkazování definovat také, u jakékoli značky.

Související šablony[editovat]

  • {{redirect}} – upozornění pod nadpisem, že na danou kapitolu vede přesměrování
  • {{podrobně}}
  • {{různé významy}}

Související články[editovat]

Externí odkazy[editovat]