WordPress – tvorba šablony od A do Z – 7.díl – Archive


Přináším další díl našeho seriálu o tvorbě šablony pro systém WordPress. Mám pěkné zpoždění, tak se ho pokusím dohnat a tento týden přidat díly dva. Uvidím jak na tom budu časově, protože lidi jsou po novém roce jak šílení :-)

V tomto díle se podíváme na archív a jeho využití. Nebudu zacházet do žádných složitostí, byť jsou možnosti samotného archívu velmi rozsáhlé a v některých případech dosti složité a pro ty, kteří WP velmi dobře neznají možná i zmatečné. Proto se pojďme podívat na základní princip Archívu a slibuji Vám, že v dalších dílech se k jeho možnostem několikrát vrátíme.

Kdy se Archive.php volá a jaké data do něj WP posílá

Pokud se kouknete na strukturu WordPressu a podíváte se na pár výpisů, zjistíte, že pokud se nenajdou potřebné soubory, volá se vždy archive.php a následně (pokud neexistuje ani ten) index.php. Dalo by se tedy říct, že archive.php nám bude prezentovat veškeré příspěvky, bez omezení rubriky, zařazení nebo dalších parametrů. Jeho běžným využitím je zobrazovat příspěvky v rámci časové osy (většinou po měsících, ale není to potřeba – lze i po roce nebo klidně i po dnech).

Jak bude soubor archive.php v šabloně vypadat?

Nehledejte v tom zase žádné složitosti, je to jednoduché a funkční…


<?php get_header(); ?>
<div id="content">

        <h1>Archív webových stránek - <?php the_time('F'); ?> <?php the_time('Y'); ?> </h1>
        <?php if (have_posts()) : ?>
	   <?php while (have_posts()) : the_post(); ?>
		<?php get_template_part('loop', 'single'); ?>
	   <?php endwhile; ?>
        <?php endif; ?>

</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

A máme hotový archív. Pokud si teď do našeho sidebaru natáhnete widget – Archive, začne se Vám zobrazovat měsíce a rok s přidanými příspěvky, jako je tomu například na webu Radambuk.cz v pravé části layoutu. Ti, kdo náš seriál sledují pravidelně jistě pochopili, že jako zobrazování výsledků bude použit soubor loop-single.php. Použité funkce the_time() nám zobrazí měsíc (F) a rok (Y), dle zavolaného archívu. Pokud bychom chtěli generovat vlastní link mimo widget, slouží nám k tomu několik funkcí:

get_monthly_link() – Vytvoří nám url link do archive s měsíční výpisem příspěvků.

get_day_link() – Stejné jako u předchozí funkce, ale zobrazí příspěvky v definovaném dni.

get_year_link() – Nebudete jistě překvapeni, když napíšu, že se jedná o stejnou funkci, pouze všechny publikace v rámci definovaného roku.

Pokud byste chtěli vlastní archive a né pouze ten, který nám nabízí widgety, lze využít funkci wp_get_archives(), která je schopna na základě parametrů zobrazit požadovanou sadu linků. Můžeme si tak archiv jednoduše kontrolovat a nejsme omezeni pouze na widget.

Závěrem wordpress dílu

Archiv se zdá být poměrně silným nástrojem, pokud pracujete s projektem, kde využijete třídění publikací pomocí datumu. Není však úplně všemocný a některé věci do něj rozhodně nepatří. K tomu se ale také dostaneme v dalších dílech. V příštím díle se podíváme na možnosti stránkování příspěvků a jiných výsledků.

Tomáš Kocifaj, KTStudio.cz

, , ,

Komentáře jsou uzavřeny.