<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>david.binda</title>
	<atom:link href="http://david.binda.cz/feed" rel="self" type="application/rss+xml" />
	<link>http://david.binda.cz</link>
	<description>Váš WordPress odborník...</description>
	<lastBuildDate>Thu, 17 May 2012 07:24:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Chybičky na serveru iPrima.cz</title>
		<link>http://david.binda.cz/chybicky-na-serveru-iprima-cz</link>
		<comments>http://david.binda.cz/chybicky-na-serveru-iprima-cz#comments</comments>
		<pubDate>Mon, 24 Oct 2011 10:14:42 +0000</pubDate>
		<dc:creator>Binda</dc:creator>
				<category><![CDATA[Přístupnost a použitelnost]]></category>

		<guid isPermaLink="false">http://david.binda.cz/?p=443</guid>
		<description><![CDATA[Při každodenním surfování po internetu se setkávám s menšími či většími prohřešky proti použitelnosti a přístupnosti. Dnes jsem zavítal také na server české komerční televize Prima. Chyba v zobrazení hlavního navigačního menu Hned na úvodní stránce jsem si všiml chyby &#8230; <a href="http://david.binda.cz/chybicky-na-serveru-iprima-cz">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Při každodenním surfování po internetu se setkávám s menšími či většími prohřešky proti použitelnosti a přístupnosti. Dnes jsem zavítal také na server <a href="http://www.iprima.cz">české komerční televize Prima</a>.</p>
<h2>Chyba v zobrazení hlavního navigačního menu</h2>
<p>Hned na úvodní stránce jsem si všiml chyby v hlavní navigaci. Poslední položka se nevešla na řádek a byla tak hozena na další. Hádám, že to nebyl autorův záměr, navíc odstranění chyby nevyžaduje žádné zásadní zásahy do kódu &#8211; stačí nadřazený prvek sémantického seznamu (chválím) rozšířit o 10px. Více viz následující screenshoty.</p>
<p>Chyba se týká položky Videoarchiv</p>
<div id="attachment_444" class="wp-caption alignnone" style="width: 310px"><a href="http://david.binda.cz/wp-content/uploads/2011/10/chyba.jpg"><img class="size-medium wp-image-444 " title="chyba" src="http://david.binda.cz/wp-content/uploads/2011/10/chyba-300x175.jpg" alt="Zobrazení titulnní stránky serveru iprima.cz s poslední položkou hlavního menu odskočenou na další řádek." width="300" height="175" /></a><p class="wp-caption-text">Chyba se týká položky Videoarchiv hlavního navigačního menu.</p></div>
<p>Příčinou je málo široký nadřezený element:</p>
<div id="attachment_445" class="wp-caption alignnone" style="width: 310px"><a href="http://david.binda.cz/wp-content/uploads/2011/10/pricina.jpg"><img class="size-medium wp-image-445" title="pricina" src="http://david.binda.cz/wp-content/uploads/2011/10/pricina-300x176.jpg" alt="Vizualizace šířky elementu nadřazeného jednotlivým položkám menu." width="300" height="176" /></a><p class="wp-caption-text">Příčina chyby v zobrazení hlavního navigačního menu</p></div>
<p>Řešení je prosté. Stačí elementu ul s třídou &#8220;menu&#8221; přiřadit šířku 500px, namísto stávajících 490px:</p>
<div id="attachment_446" class="wp-caption alignnone" style="width: 310px"><a href="http://david.binda.cz/wp-content/uploads/2011/10/opraveno.jpg"><img class="size-medium wp-image-446" title="opraveno" src="http://david.binda.cz/wp-content/uploads/2011/10/opraveno-300x176.jpg" alt="Zobrazení titulní stránky serveru iprima.cz s opraveným hlavním navigačním menu." width="300" height="176" /></a><p class="wp-caption-text">Element ul stačí rozšířit o pouchých 10px.</p></div>
<h2>Prohřešky proti přístupnosti videoarchivu televize Prima</h2>
<p>Nejzásadnější a také jediný prohřešek, který budu zmiňovat, je rozdíl barev pozadí a popředí. Vše je snad na první pohled jasné z přiloženého screenshotu:</p>
<div id="attachment_449" class="wp-caption alignnone" style="width: 310px"><a href="http://david.binda.cz/wp-content/uploads/2011/10/pristupnost-iprima.jpg"><img class="size-medium wp-image-449" title="pristupnost-iprima" src="http://david.binda.cz/wp-content/uploads/2011/10/pristupnost-iprima-300x175.jpg" alt="Snímek obrazovky videoarchivu serveru iprima.cz" width="300" height="175" /></a><p class="wp-caption-text">Šedivé písmo na černém pozadí je opravdu nečitelné.</p></div>
<p>Pro formálnost snad jen uvedu, že poměr svítivosti a kontrastu barev popředí a pozadí je 1,42:1, kdežto minimální požadovaný, dle nižší úrovně AA, je 3:1. Z prvního poměru lze jasně vyčíst, že barvy jsou hodně podobné!</p>
<p>Hover efekt sice přístupnosti z probíraného úhlu pohledu neodporuje, ale při ovládání webu klávesnicí už k žádnému hover efektu nedojde. Když jsou navíc adresy označeny číselným kódem, nikoli pěkným url s názvem pořadu, ztratí se uživatel klávesnice hned po několika stiscích klávesy &#8220;tab&#8221;.</p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavid.binda.cz%2Fchybicky-na-serveru-iprima-cz&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" class="fbframe" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://david.binda.cz/chybicky-na-serveru-iprima-cz/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress a prázdné hledání</title>
		<link>http://david.binda.cz/wordpress-a-prazdne-hledani</link>
		<comments>http://david.binda.cz/wordpress-a-prazdne-hledani#comments</comments>
		<pubDate>Fri, 07 Oct 2011 14:13:12 +0000</pubDate>
		<dc:creator>Binda</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://david.binda.cz/?p=441</guid>
		<description><![CDATA[WordPress má, minimálně od verze 3.0, starší jsem na svém localhostu nainstalovanou nenašel, zajímavou vlastnost. A sice, že pokud stisknete tlačítko &#8220;Hledat&#8221;, a to ať myší či přes klávesnici, bez toho, aniž byste zadali hledaný výraz, načte se stránka čerpající &#8230; <a href="http://david.binda.cz/wordpress-a-prazdne-hledani">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>WordPress má, minimálně od verze 3.0, starší jsem na svém localhostu nainstalovanou nenašel, zajímavou vlastnost. A sice, že pokud stisknete tlačítko &#8220;Hledat&#8221;, a to ať myší či přes klávesnici, bez toho, aniž byste zadali hledaný výraz, načte se stránka čerpající ze šablony pro index.php, namísto toho, aby došlo k užití šablony search.php.</p>
<p>Co to má za následek? To, že se uživateli namísto zprávy o tom, že hledání bylo neúspěšné, což mi, a nejen mě, přijde jako logické chování, zobrazí výpis příspěvků na blogu stejně, jako by šlo o stránku s výpisem příspěvků &#8211; nedojde ani k přesměrování na úvodní stránku.</p>
<p>Ovšem každý problém má své řešení. Když jsem na toto narazil, chvíli jsem o této problematice něco hleda a narazil jsem na <a href="http://wordpress.org/support/topic/blank-search-sends-you-to-the-homepage#post-1772565">polovičaté řešení uživatele spitzerg</a>. Ten přišel s jednoduchým filtrem, který stačí vložit do souboru functions.php:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">add_filter<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'request'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'my_request_filter'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">function</span> my_request_filter<span style="color: #009900;">&#40;</span> <span style="color: #000088;">$query_vars</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span> <span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span> <span style="color: #000088;">$_GET</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'s'</span><span style="color: #009900;">&#93;</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #990000;">empty</span><span style="color: #009900;">&#40;</span> <span style="color: #000088;">$_GET</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'s'</span><span style="color: #009900;">&#93;</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000088;">$query_vars</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'s'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot; &quot;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$query_vars</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Ovšem toto není dostačující. Tím, že se vyhledávací řetězec změní z prázdného na mezeru, dojde sice k přesměrování na šablonu search.php, ovšem mezi výsledky se objeví všechyn stránky, jelikož nějakou tu mezeru snad každý příspěvek obsahuje.</p>
<p>Je nutné tedy modifikovat také kód souboru šablony search.php. V šabloně Twenty Eleven vypadá obsah tohoto souboru takto:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #009933; font-style: italic;">/**
 * The template for displaying Search Results pages.
 *
 * @package WordPress
 * @subpackage Twenty_Eleven
 * @since Twenty Eleven 1.0
 */</span>
&nbsp;
get_header<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
		&lt;section id=&quot;primary&quot;&gt;
			&lt;div id=&quot;content&quot; role=&quot;main&quot;&gt;
&nbsp;
			<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
				&lt;header class=&quot;page-header&quot;&gt;
					&lt;h1 class=&quot;page-title&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #990000;">printf</span><span style="color: #009900;">&#40;</span> __<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'Search Results for: %s'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'twentyeleven'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'&lt;span&gt;'</span> <span style="color: #339933;">.</span> get_search_query<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'&lt;/span&gt;'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/h1&gt;
				&lt;/header&gt;
&nbsp;
				<span style="color: #000000; font-weight: bold;">&lt;?php</span> twentyeleven_content_nav<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'nav-above'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
				<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #666666; font-style: italic;">/* Start the Loop */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
				<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">while</span> <span style="color: #009900;">&#40;</span> have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> the_post<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
					<span style="color: #000000; font-weight: bold;">&lt;?php</span>
						<span style="color: #666666; font-style: italic;">/* Include the Post-Format-specific template for the content.
						 * If you want to overload this in a child theme then include a file
						 * called content-___.php (where ___ is the Post Format name) and that will be used instead.
						 */</span>
						get_template_part<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'content'</span><span style="color: #339933;">,</span> get_post_format<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
					<span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
				<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endwhile</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
				<span style="color: #000000; font-weight: bold;">&lt;?php</span> twentyeleven_content_nav<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'nav-below'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
			<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">else</span> <span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
				&lt;article id=&quot;post-0&quot; class=&quot;post no-results not-found&quot;&gt;
					&lt;header class=&quot;entry-header&quot;&gt;
						&lt;h1 class=&quot;entry-title&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> _e<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'Nothing Found'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'twentyeleven'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/h1&gt;
					&lt;/header&gt;&lt;!-- .entry-header --&gt;
&nbsp;
					&lt;div class=&quot;entry-content&quot;&gt;
						&lt;p&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> _e<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'Sorry, but nothing matched your search criteria. Please try again with some different keywords.'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'twentyeleven'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/p&gt;
						<span style="color: #000000; font-weight: bold;">&lt;?php</span> get_search_form<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
					&lt;/div&gt;&lt;!-- .entry-content --&gt;
				&lt;/article&gt;&lt;!-- #post-0 --&gt;
&nbsp;
			<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endif</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
			&lt;/div&gt;&lt;!-- #content --&gt;
		&lt;/section&gt;&lt;!-- #primary --&gt;
&nbsp;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> get_sidebar<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
<span style="color: #000000; font-weight: bold;">&lt;?php</span> get_footer<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Náš problém vyřeší úprava první podmínky tak, aby nevyhodnocovala pouze to, zda-li náš řetězec odpovídá nějakému výsledku, ale také to, zda-li náš řetězec neobsahuje pouhou mezeru:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #009933; font-style: italic;">/**
 * The template for displaying Search Results pages.
 *
 * @package WordPress
 * @subpackage Twenty_Eleven
 * @since Twenty Eleven 1.0
 */</span>
&nbsp;
get_header<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
		&lt;section id=&quot;primary&quot;&gt;
			&lt;div id=&quot;content&quot; role=&quot;main&quot;&gt;
&nbsp;
			<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> get_search_query <span style="color: #339933;">!=</span> <span style="color: #0000ff;">&quot; &quot;</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
...</pre></div></div>

<p>A tím je problém WordPress s prázdným vyhledáváním zobrazujícím výpis příspěvků vyřešen kompletně.</p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavid.binda.cz%2Fwordpress-a-prazdne-hledani&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" class="fbframe" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://david.binda.cz/wordpress-a-prazdne-hledani/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress a obsah rozdělen do více sloupců</title>
		<link>http://david.binda.cz/wordpress-a-obsah-rozdelen-do-vice-sloupcu</link>
		<comments>http://david.binda.cz/wordpress-a-obsah-rozdelen-do-vice-sloupcu#comments</comments>
		<pubDate>Fri, 07 Oct 2011 13:53:43 +0000</pubDate>
		<dc:creator>Binda</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://david.binda.cz/?p=436</guid>
		<description><![CDATA[V případě, že vytváříte web, kde má být obsah příspěvků či stránek rozdělen do více sloupců, můžete zkusit připravit vlastní řešení s pomocí elementů div a nebo se spolehnout na plugin. Plugin je v tomto případě mnohem pohodlnější řešení, navíc &#8230; <a href="http://david.binda.cz/wordpress-a-obsah-rozdelen-do-vice-sloupcu">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>V případě, že vytváříte web, kde má být obsah příspěvků či stránek rozdělen do více sloupců, můžete zkusit připravit vlastní řešení s pomocí elementů div a nebo se spolehnout na plugin. Plugin je v tomto případě mnohem pohodlnější řešení, navíc lze kód pluginu nakopírovat přímo do souboru functions.php a nespoléhat se na to, že jej nezapomenete nainstalovat, pokud tuto funkcionalitu chcete zabudovat přímo do šablony. Pokud již šablonu máte hotovou a jen chcete využít možnost rozdělení obsahu do sloupců, kopírování do souboru functions.php není nutné.</p>
<h2>Instalace pluginu na rozdělení do více sloupců</h2>
<p>Asi nejjednodušším a dobře fungujícím pluginem je plugin <a href="http://wordpress.org/extend/plugins/magazine-columns/">Magazine columns</a> od autora <a href="http://bavotasan.com/">c.bavota</a>. Není nutné jej stahovat z WordPress <a href="http://wordpress.org/extend/plugins">Plugin Directory</a>, rozbalovat a nahrávat jej skrze FTP do adresáře /wp-content/plugins. Je k nalezení také skrze instalaci pluginů v administraci WordPressu, kdy stačí vyhledat &#8220;magazine columns&#8221; a dát instalovat.</p>
<h2>Použití pluginu pro rozdělení obsahu do více sloupců</h2>
<p>Jakmile je zmíněný plugin nainstalovaný a aktivovaný, stačí při psaní příspěvku či stránky přepnout z Visual do HTML (dvě záložky nad hlavním oknem pro tvorbu příspěvků) a vložit kód &lt;!&#8211;column&#8211;&gt; za místo, kde chcete obsah zalomit do dalšího sloupce. Přepnutí do módu editace HTML je nutný, jinak WordPress sám automaticky převede značky do html entit a ty nebudou poté správně rozpoznány a plugin nebude fungovat. Sloupců lze takto vytvořit maximálně 5. Tedy značku užít 4x.</p>
<h3>Použití sloupců pouze na části obsahu příspěvku/stránky ve WordPressu</h3>
<p>Autor myslel i na situaci, kdy chcete do sloupců rozdělit pouze jednu část obsahu. V tom případě je nutné vložti více značek do kódu, ale nejde o nic komplikovaného. Opět úpravu provádíme v HTML módu.</p>
<p>Na místo, odkud chceme sloupce používat vložímě kód &lt;!&#8211;startcolumns&#8211;&gt; a na místo, kde chceme se sloupci přestat potom &lt;!&#8211;stopcolumns&#8211;&gt;. Obsah mezi těmito značkami rozdělíme do sloupců pomocí již zmíněného kódu &lt;!&#8211;column&#8211;&gt;.</p>
<p>Zdrojový kód pluginu neumožňuje vytvořit na jedné stránce více než jednu část, která je rozdělena do sloupců, bohužel.</p>
<h2>Nedostatky pluginu pro více sloupců a jejich odstranění</h2>
<p>Plugin má jednu nevýhodu. Ne všichni ji musí nutně zaznamenat, ovšem pokud v obsahu, který rozdělujete do více sloupců chcete použít napřípklad plugin NexGen Gallery, nebude vám fungovat.</p>
<p>Vlastně nebude fungovat žádný plugin, který využívá <a href="http://codex.wordpress.org/Shortcode_API">technologii shortcode ( [shortcode] )</a>.</p>
<p>Příčinou je autorova nesprává práce s filtry, jak správně poznamenal uživatel lukeyates1981, který také <a href="http://wordpress.org/support/topic/plugin-magazine-columns-this-plugin-needs-a-fix-and-here-it-is#post-2291314">zveřejnil způsob, jak tento bug odstranit</a>.</p>
<p>Abyste se nemuseli prodírat jeho popisem chyby a popisem jak chybu odstranit, přikládám zde již opravený zdrojový kód pluginu verze 1.0.4 ke stažení: <a href="http://david.binda.cz/wp-content/uploads/2011/10/magazine-columns.php_.zip">magazine-columns.php</a></p>
<p>Soubor stačí rozbalit a přepsat jím stávající soubor magazine-columns.php v adresáří /wp-content/plugins/magazine-columns/</p>
<p>Dejte ovšem pozor, při případné aktualizaci pluginu, ať již manuální či automaticky staženou, dojde k přepsání této opravy. Pro případ, že by autor aktualizoval plugin a chybu neopravil, bude nutné znovu stávající soubor přepsat.</p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavid.binda.cz%2Fwordpress-a-obsah-rozdelen-do-vice-sloupcu&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" class="fbframe" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://david.binda.cz/wordpress-a-obsah-rozdelen-do-vice-sloupcu/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Použitelnost a přístupnost stránky Skype.com</title>
		<link>http://david.binda.cz/pouzitelnost-a-pristupnost-stranky-skype-com</link>
		<comments>http://david.binda.cz/pouzitelnost-a-pristupnost-stranky-skype-com#comments</comments>
		<pubDate>Tue, 13 Sep 2011 08:35:47 +0000</pubDate>
		<dc:creator>Binda</dc:creator>
				<category><![CDATA[Přístupnost a použitelnost]]></category>

		<guid isPermaLink="false">http://david.binda.cz/?p=429</guid>
		<description><![CDATA[V rámci psaní o přístupnosti a použitelnost se budu pravidelně snažit psát o &#8220;velkých&#8221; webových prezentacích a jejich chybičkách či prohřešcích proti použitelnosti a přístupnosti. Nepůjde vysloveně o audity ani případové studie, ale o krátká zamyšlení na téma &#8220;Použitelnost a &#8230; <a href="http://david.binda.cz/pouzitelnost-a-pristupnost-stranky-skype-com">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>V rámci psaní o přístupnosti a použitelnost se budu pravidelně snažit psát o &#8220;velkých&#8221; webových prezentacích a jejich chybičkách či prohřešcích proti použitelnosti a přístupnosti. Nepůjde vysloveně o audity ani případové studie, ale o krátká zamyšlení na téma &#8220;Použitelnost a přístupnost webových stránek&#8221;.</p>
<p>Dnes se podíváme na stránku <a href="http://skype.com" title="Webová prezentace služby Skype">http://skype.com</a>.</p>
<h2>Ke stažení: Verze pro Windows</h2>
<p>Ti z vás, kdo nepoužíváte Linux jakožto svůj operační systém si prvního nedostatku, který zmíním, nevšimnete. Ačkoli je prezentace Skype.com schopna zjistit vámi používaný jazyk a nabídnout vám svou prezentaci ve vašem jazyce, není již schopna zjistit operační systém, který používáte. To vede k tomu, že ačkoli jsem připojen z Linuxu, nemohu rovnou stáhnout Skype ve verzi pro můj operační systém. Přitom <a href="http://www.killersites.com/community/index.php?/topic/2562-php-to-detect-browser-and-operating-system/" title="Detekce operačního systému pomocí PHP">řešení je velmi jednoduché</a>.</p>
<p>Ano, lze namítnout, že získání použitého OS z user agent stringu může být zavádějící &#8211; lze jej podvrhnout. Ale troufám si tvrdit, že drtivá většina uživatelů svůj user agent string nepodvrhuje. Navíc i kdyby user agent string podvrhovalo 10% uživatelů, vyplatí se skript pro zvývajících 90% nasadit.</p>
<h2>Aktivní plocha odkazů</h2>
<p>S prvním zmíněným nedostatkem souvisí i tento. Když již použiji odkaz <a href="http://www.skype.com/intl/cs/get-skype/other-downloads/" title="Skype ve verzích pro alternativní operační systémy">Ostatní soubory ke stažení</a>, ze kterého mohu snad jen tušit, že se pod ním skrývají verze pro další operační systémy &#8211; určitě by nebylo na škodu zvolit lepší text informující o dalších verzích, například &#8220;Verze pro další operační systémy&#8221; či &#8220;Používáte jiný operační systém?&#8221; (ano, jsou tam ke stažení i další soubory, ale stejně nevím, co si pod tím představit) &#8211; dostanu se na stránku, kde má každý operační systém svůj obrázek.</p>
<p>Uživatele přímo svádí neklikat na text &#8220;Skype pro &#8230;&#8221;, ale na logo svého operačního systému. Ovšem chyba lávky &#8211; obrázek není klikatelný. Na odhalení této &#8220;chyby&#8221; nemusí mít člověk přehršel zkušeností s použitelností a přístupností. Lze použít i software, který odhalí, kam uživatelé klikají. Lze jmenovat třeba <a href="http://www.labsmedia.com/clickheat/index.html" title="Tepelná mapa kliknutí na webové stránce">open source projekt ClikHeat</a>.</p>
<p>Doplnění: Klikací obrázky skype na své prezentaci dokonce již používá. Asi se jen zapomnělo na zmiňovanou stránku. Porovnej: <a href="http://www.skype.com/intl/cs/welcomeback/">http://www.skype.com/intl/cs/welcomeback/</a> a <a href="http://www.skype.com/intl/cs/get-skype/other-downloads/">http://www.skype.com/intl/cs/get-skype/other-downloads/</a></p>
<p>To je pro dnešek vše. Jak jsem psal v úvodu, nejde o komplexní případovou studii ani analýzu, ale o pár postřehů, ze kterých se lze něco přiučit.</p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavid.binda.cz%2Fpouzitelnost-a-pristupnost-stranky-skype-com&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" class="fbframe" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://david.binda.cz/pouzitelnost-a-pristupnost-stranky-skype-com/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jak nainstalovat šablonu</title>
		<link>http://david.binda.cz/jak-nainstalovat-sablonu</link>
		<comments>http://david.binda.cz/jak-nainstalovat-sablonu#comments</comments>
		<pubDate>Tue, 25 Jan 2011 13:04:35 +0000</pubDate>
		<dc:creator>Binda</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[WordPress Manuál]]></category>

		<guid isPermaLink="false">http://david.binda.cz/?p=377</guid>
		<description><![CDATA[Šablona, nebo také vzhled, je vlastně složka obsahující soubory, které definují vzhled vašeho webu nebo blogu. WordPress je specifický tím, že většina přídavných funkcí může být implementována přímo do šablony. Při úpravě webu se prakticky nikdy nedostaneme k úpravě jádra &#8230; <a href="http://david.binda.cz/jak-nainstalovat-sablonu">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Šablona, nebo také vzhled, je vlastně složka obsahující soubory, které definují vzhled vašeho webu nebo blogu. WordPress je specifický tím, že většina přídavných funkcí může být implementována přímo do šablony. Při úpravě webu se prakticky nikdy nedostaneme k úpravě jádra systému, ale vystačíme si, a to bohatě, s úpravou souborů šablonu.</p>
<p>Každá šablona musí obsahovat aspoň soubor style.css (v případě tzv. child themes) a index.php (v případě parent theme). To ale začínající uživatele nemusí moc zajímat.</p>
<p>Čili změnit vzhled, a v případě speciálních šablon třeba také rozšířit funkcionalitu, můžeme skrze šablony. Takových šablon (anglicky theme, případě themes v plurálu) najde na internetu spousty. Začít můžeme oficiální sbírkou na stránkách WordPressu: <a href="http://wordpress.org/extend/themes/">http://wordpress.org/extend/themes/</a></p>
<p>Jinak můžeme samozřejmě využít služeb nějakého <a href="http://lmgtfy.com/?q=wordpress+themes">internetového vyhledávače a šablon najít ještě mnohem víc</a> (omlouvám se, kdyby vtípek někoho urazil <img src='http://david.binda.cz/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ). Ne všechny jsou ale zdarma (ačkoli WordPress samotný zdarma je). Existují tedy i komerčně prodávané šablony.</p>
<p>Ty většinou bývají široce škálovatelné a někteří tvůrci k nim poskytují i podporu, po nějaký ten měsíc.</p>
<h2>Jak nainstalovat vybranou šablonu z oficálního katalogu WordPressu</h2>
<p>Oficiální katalog šablon můžeme procháze přímo z administrace webu, do které se dostaneme po zadání adresy webové stránky /wp-admin čili například www.mojestranka.cz/wp-admin. Uživatelské jméno a heslo jste si zadali při instalaci, nebo vám bylo administrátorem vytvořeno později a zasláno emailem.</p>
<p>V administraci, v levém panelu, je boxík Vzhled (ang. Apperance) a jako první položka jsou Šablony (Themes). Po přejití na tuto stránku uvidíte všechny dostupné šablony, které jsou již instalované. Nahoře na stránce jsou poté dvě záložky, z nichž jedna, &#8220;Správa šablon&#8221; (Manage Themes), je aktivní. Druhou neaktivní je &#8220;Instalace šablon&#8221; (Install themes).</p>
<p>A přávě na druhé záložce máme k dispozici WordPress katalog šablon. Vyhledávat v něm můžete dle názvu, autora či štítku, ale také lze okruh vyhledávání zúžit dle zaškrtaných vlastností.</p>
<p>Vyhledané šablony se vám seřadí podobně jako na předchozí záložce. Máte na výběr, u každé z nalezených šablon, dva odkazy. Náhled a Instalovat.</p>
<p>Odkaz náhled vám otevře javascriptové pop-up okno, ve kterém si můžete prohlédnout šablonu běžící na testovací instalaci WordPressu. Odkaz Instalovat otevře také pop-up okno v němž znovu stisknutím tlačítka &#8220;Instalovat&#8221; nahrajete šablonu na váš web. Po nahrání máte na nové stránce, na kterou jste stisknutím tlačítka instalovat v pop-up okně přešli, na výběr ze tří odkazů: Náhled, Aktivovat a Zpět do Instalátoru.</p>
<p>Posledně jmenovaný odkaz snad není třeba vysvětlovat a první jmenovaný jsme si již také vysvětlili. Ovšem v tomto případě již v pop-up okně neuvidíte testovací stránku WordPressu, ale váš web tak, jak bude po nasazení šablony vypadat. Tedy uvidíte v šabloně váš obsah. Což je před nasazením nové šablony velmi výhodné pro kontrolu, jestli je šablona plně funkcí dle vašich představ. Můžete totiž procházet celým webem s novou šablonou. Podíváte se jak jsou vypisovány rubriky, příspěvky a stránky. </p>
<p>Snad si jen dovolím jeden užitečný tip. Pakliže na odkaz &#8220;Náhled&#8221; clicknete pravým tlačítkem myši a otevřete si odkaz v novém panelu, nebudete limitovaní rozměry pop-up okna, což může být někdy flustrující a ne zcela přehledné.</p>
<p>No a již jsem to nastínil. Prostřední odkaz slouží k nasazení vaší šablony na váš web. Po stisknutí tohoto odkazu již nebudete muset nic potvrzovat a aktivujte vybranou šablonu. Samozřejmě nemusíte šablonu aktivovat ihned. Můžete šablonu aktivovat také později ze záložky &#8220;Správa šablon&#8221;, kde jsou všechny nainstalované šablony. </p>
<p>Čili je rozdíl mezi instalovanou a aktivovanou šablonou. Instalovaná šablona je připravená na vašem webu k aktivaci, nasazené, skrze odkaz &#8220;Aktivovat&#8221;. A aktivovaná šalobna je již aktivována a web se zobrazuje skrze vzhled v ní nadefinovaný. Aktivní šablona se na záložce &#8220;Správa šablon&#8221; zobrazuje sama na řádku vlevo nahoře.</p>
<h2>Instalace šablony skrze FTP</h2>
<p>Tuto metodu využijete, pakliže jste svou šablonu nenašli v oficiálním katalogu a nebo vám nefunguje instalace skrze instalátor.</p>
<p>Pakliže máte instalovaný WordPress, tak jste se s FTP již pravděpodobně setkali. Předpokládám, že někde máte uložená nebo poznamenaná hesla k FTP serveru a umíte se skrze FTP k vašemu webu připojit.</p>
<p>Pokud tak učiníte, dostanete se do rootu webu (pokud nemáte FTP nastaveno jinak). Je nutné, pokud není WordPress nainstalovaný na rootu webu, přejít do kořenové složky instalace WordPressu. Jak ji poznáte? Jde o složku se souborem, mimo jiné, wp-config.php a složka wp-content a wp-includes. Někdy musíte přejít do složky public nebo public-html a v ní poté třeba ještě do složky wp, wordpress, blog a podobně.</p>
<p>Pakliže jste tedy v kořenové složce instalace WordPressu, přejděte do  adresáře wp-content a v něm do adresáře themes.</p>
<p>V tomto adresáři jsou již adresáře jednotlivých šablon. Každá šablona musí mít svůj adresář. A ten se klidně může jmenovat jinak než se šablona jmenuje v adminstraci WordPressu. Název pro administraci se totiž bere ze souboru style.css.</p>
<p>Pokud jste tedy stáhli šablonu z nějakého webu, pravděpodobně v nějakém .zip či .rar archívu, musíte tuto šablonu u vás na počítači rozbaliz a zajistit, aby byla v nějakém adresáři (někdo tento útvar nazývá také složkou). A v adresáři již přímo musí být soubory typu index.php, style.css, single.php, category.php. Čili nesmí být tyto soubory vnořeny ještě do dalšího adresáře.</p>
<p>Takovou složku pak celou uploadujete skrze FTP do /wp-content/themes. Opět je důležité aby soubory byly ve složce (čili aby nebyly přímo v wp-content/themes, ale třeba /wp-content/themes/moje-sablona) a aby nebyly vnořeny hlouběji. Čili v adresáři /wp-content/themes/moje-sablona bude již přímo soubor index.php, style.php, popřípadě category.php nebo single.php.</p>
<p>Pakliže jste takto šablonu nahráli na váš web a má nastavená příslušná práva (aspoň 664 &#8211; práva se nastavují většinou clicknutím pravého tlačítka myši na soubor nebo celý adresář a v pop-up menu bývá upravit práva či něco podobného) objeví se v administraci (Vzled->Šablony a záložka Správa šablon). Opět si ji můžete prohlédnout nebo aktivovat. Vlastně jen uděláte to, co v první metodě udělal WordPress sám. Šablonu stáhl, rozbalil a nahrál do příslušného adresáře (mimo adresář wp-content/themes WordPress žádné šablony neregistruje).</p>
<h2>Nastavení šablony</h2>
<p>Jak jsem již poznamenal, některé šablony různých nastavení. Ovšem není to podmínkou a už vůbec ne pravidlem. Pokud jste si ale stáhli šablonu s tím, že ji můžete upravovat, bylo to avizováno tvůrcem, poté hledejte v administaci, v levém panelu buď položku Nastavení v boxíku Vzhled a nebo rovnou celý nový boxík (klidně až úplně dole) s názvem vámi nainstalované a aktivované (před aktivací nelze zakto šablonu nastavovat) šablony a v něm již buou příslušné položky (např. nastavení).</p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavid.binda.cz%2Fjak-nainstalovat-sablonu&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" class="fbframe" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://david.binda.cz/jak-nainstalovat-sablonu/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Speciální šablona pro všechny příspěvky v konkrétní kategorii</title>
		<link>http://david.binda.cz/specialni-sablona-pro-vsechny-prispevky-v-konkretni-kategorii</link>
		<comments>http://david.binda.cz/specialni-sablona-pro-vsechny-prispevky-v-konkretni-kategorii#comments</comments>
		<pubDate>Sat, 15 Jan 2011 15:50:02 +0000</pubDate>
		<dc:creator>Binda</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://david.binda.cz/?p=368</guid>
		<description><![CDATA[O různých zobrazení vybraných příspěvků, stránek a kategorií jsem napsal již dva články: Speciální šablona pro konkrétní rubriku, stránku či příspěvek Dvě různé WordPress šablony na jednom blogu Pokud ale chceme pro všechny příspěvky v dané kategorii užít rozdílný layout, &#8230; <a href="http://david.binda.cz/specialni-sablona-pro-vsechny-prispevky-v-konkretni-kategorii">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>O různých zobrazení vybraných příspěvků, stránek a kategorií jsem napsal již dva články:</p>
<p><a href="http://david.binda.cz/specialni-sablona-pro-konkretni-rubriku-stranku-ci-prispevek">Speciální šablona pro konkrétní rubriku, stránku či příspěvek</a><br />
<a href="http://david.binda.cz/dve-ruzne-wordpress-sablony-na-jednom-blogu">Dvě různé WordPress šablony na jednom blogu</a></p>
<p>Pokud ale chceme pro všechny příspěvky v dané kategorii užít rozdílný layout, a vůbec jinou šablonu, se slug a id si moc nevystačíme. V tom případě budeme muset využít komplikovanější techniky.</p>
<p>Musíme si vytvořit &#8220;prakticky prázný&#8221; soubor single.php, který bude obsahovat pouze rozhodovací algoritmus. Na to využijeme WordPress funkce <a href="http://codex.wordpress.org/Function_Reference/in_category">in_category()</a> a <a href="http://codex.wordpress.org/Function_Reference/get_template_part">php funkce get_template_part()</a>.</p>
<p>Obsah bude následující, v případě, že chceme speciální šalonu pro příspěvky v rubrice &#8220;speciální&#8221; a &#8220;moje kategorie&#8221;. Jako parametr funkce in_category uvedeme pole obsahující &#8220;slug&#8221;, čili název v URL, kýžené kategorie:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> 
<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> in_category<span style="color: #009900;">&#40;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'specialni'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'moje-kategorie'</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
 get_template_part<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'single'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'specialni'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span>
 get_template_part<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'single'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'normalni'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Přičemž soubor single-normalni.php bude obsahovat původní obsah souboru single.php. Popřípadě, pokud do této doby neexistoval single.php, obsah souboru index.php. A soubor single-specialni.php bude obsahovat upravený kód vašeho speciálního zobrazení všech příspěvků v kategorii speciální a moje kategorie.</p>
<p>Pozor, soubor single-normalni.php a single-specialni.php musí obsahovat get_header() a get_footer(), jako každý jiný tradiční soubor WordPress šablony. Jen, dle tohoto článku, upravený soubor single.php tyto funkce obsahovat nesmí.</p>
<p>Jak vytvářet speciální hlavičky a patičky a sidebary jsem probíral v <a href="http://david.binda.cz/dve-ruzne-wordpress-sablony-na-jednom-blogu">předchozím článku</a>.</p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavid.binda.cz%2Fspecialni-sablona-pro-vsechny-prispevky-v-konkretni-kategorii&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" class="fbframe" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://david.binda.cz/specialni-sablona-pro-vsechny-prispevky-v-konkretni-kategorii/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Dvě různé WordPress šablony na jednom blogu</title>
		<link>http://david.binda.cz/dve-ruzne-wordpress-sablony-na-jednom-blogu</link>
		<comments>http://david.binda.cz/dve-ruzne-wordpress-sablony-na-jednom-blogu#comments</comments>
		<pubDate>Sat, 15 Jan 2011 15:37:45 +0000</pubDate>
		<dc:creator>Binda</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://david.binda.cz/?p=366</guid>
		<description><![CDATA[Tento článek volně navazuje na můj předchozí článek s názvem: Speciální šablona pro konkrétní rubriku, stránku či příspěvek. V něm je představeno řešení č. 1, kdy pro kategorii, příspěvek nebo stránku vytvoříme speciální šablonu pomocí tzv. template slugs, kdy vestavěná &#8230; <a href="http://david.binda.cz/dve-ruzne-wordpress-sablony-na-jednom-blogu">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Tento článek volně navazuje na můj předchozí článek s názvem: <a href="http://david.binda.cz/specialni-sablona-pro-konkretni-rubriku-stranku-ci-prispevek">Speciální šablona pro konkrétní rubriku, stránku či příspěvek</a>.</p>
<p>V něm je představeno řešení č. 1, kdy pro kategorii, příspěvek nebo stránku vytvoříme speciální šablonu pomocí tzv. <a href="http://codex.wordpress.org/Template_Hierarchy#The_Template_Hierarchy_In_Detail">template slugs</a>, kdy vestavěná hierarchie užitích šablon, vždy nejdříve kontroluje o jaký obsah se jedná (například kategorie, stránka) a poté hledá existující šablonu v konkrétním pořadí.</p>
<p>Pro kategorii s názvem &#8220;Moje Kategorie&#8221; a s id=3 vypadá rozhodovací proces takto:</p>
<p>1) jde o kategorii? Ano<br />
2) Existuje v šabloně soubor s názvem category-moje-kategorie.php? Ano, tak jej použij. Ne, bod 3<br />
3) Existuje v šabloně soubor s názvem category-3.php? Ano, tak jej použij. Ne, bod 4.<br />
4) Existuje v šabloně soubor s názvem category.php? Ano, tak jej použij. Ne, bod 5.<br />
5) Existuje v šabloně soubor s názvem archive.php? Ano, tak jej použij. Ne, bod 6.<br />
6) Použij soubor index.php (ten v každé šabloně musí existovat, a pokud neexistujte v child-template tak v parent template uričtě ano).</p>
<p>Problematiku demonstruje i <a href="http://codex.wordpress.org/Template_Hierarchy#Visual_Overview">obrázek umístěný v kodexu</a>. Ten obsahuje rozhodovací procesy pro všechny druhy obsahu WordPressu.</p>
<p>Takže již víme, že pro vytvoření speciální šablony pro jednu konkrétní rubriku nám stačí nakopírovat soubor category.php (nebo archive.php či index.php &#8211; podle toho který v naší šabloně existuje) a přejmenovat jej buď do tvaru se slugem (čili názvem v pěkné url &#8211; s pomlčkami namísto mezer a bez diakritiky) a nebo s id. No a poté již můžeme upravovat či zcela od píky vytvářet speciální zobrazení.</p>
<h2>Úprava hlavičky, patičky a sidebaru</h2>
<p>No, ale co když chceme upravit také hlavičku, patičku či sidebar? Na to nám slouží parametr funkcí <a href="http://codex.wordpress.org/Function_Reference/get_header">get_header()</a>, <a href="http://codex.wordpress.org/Function_Reference/get_footer">get_footer()</a> a <a href="http://codex.wordpress.org/Function_Reference/get_sidebar">get_sidebar()</a>.</p>
<p>Všem třem funkcím lze shodně přidat do jejich volání parametr s názvem, který poté zobrazí konkrétní soubor. Čili pokud chceme mít speciální šablonu pro hlavičku v naší template kategorie, upravíme volání funkce get_header(); v šabloně naší speciální kategorie. Třeba v souboru category-moje-kategorie.php.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> get_header<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'moje-kategorie'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Tato funkce bude hledat soubor s názvem header-moje-kategorie.php. Analogicky můžeme volat i další dvě zmíněné funkce:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">get_footer<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'moje-kategorie'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//hledá soubor footer-moje-kategorie.php</span>
get_sidebar<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'moje-kategorie'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//hledá soubor sidebar-moje-kategorie.php</span></pre></div></div>

<p>Tím si můžeme zcela přizpůsobit výpis obsahu jedné konkrétní kategorie, stránky či příspěvku.</p>
<p>Snad jen jako poznámku pod čarou berte informaci, že pokud chceme rozdílné zobrazení homepage od kategorie či příspěvku, stačí vytvořit v šabloně soubory category.php a single.php a případně z nich volat jinou hlavičku, patičku a sidebar.</p>
<p>Něco jiného je když cheme vytvořit speciální šablonu pro stránku, která je volitelná z administrace. Ovšem tím jsem se již zabýval v <a href="http://david.binda.cz/specialni-sablona-pro-konkretni-rubriku-stranku-ci-prispevek">předchozím článku</a>.</p>
<p>Jak vytvořit speciální šablonu pro všechny příspěvky v jedné konkrétní kategorii rozebírám v <a href="http://david.binda.cz/specialni-sablona-pro-vsechny-prispevky-v-konkretni-kategorii">jiném článku</a>.</p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavid.binda.cz%2Fdve-ruzne-wordpress-sablony-na-jednom-blogu&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" class="fbframe" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://david.binda.cz/dve-ruzne-wordpress-sablony-na-jednom-blogu/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WordPress otázky a odpovědi</title>
		<link>http://david.binda.cz/wordpress-otazky-a-odpovedi-1</link>
		<comments>http://david.binda.cz/wordpress-otazky-a-odpovedi-1#comments</comments>
		<pubDate>Fri, 14 Jan 2011 21:01:11 +0000</pubDate>
		<dc:creator>Binda</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://david.binda.cz/?p=360</guid>
		<description><![CDATA[Na českém internetu existují doposud tři poradny pro WordPress. Ve všech třech případech jde ale spíš o diskusní fóra než o servery typu stackoveflow, kde můžete odpovědi na otázky hodnotit a zpětně tedy dohledat nejlepší odpověď na konkrétní otázku. Diskusní &#8230; <a href="http://david.binda.cz/wordpress-otazky-a-odpovedi-1">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Na českém internetu existují doposud tři poradny pro WordPress. Ve všech třech případech jde ale spíš o diskusní fóra než o servery typu stackoveflow, kde můžete odpovědi na otázky hodnotit a zpětně tedy dohledat nejlepší odpověď na konkrétní otázku.</p>
<p>Diskusní fóra, jakožto prostředek podpory WordPressu, a vůbec jakéhokoli softwaru, nejsou zkrátka to pravé ořechové. Na takovém WordPress fóru se jen těžko orientujete v otázkách a řešení a přeci jen jde o software zaměřený jiným směrem &#8211; o diskusní fórum.</p>
<p>Samozřejmě vím, že technické zázemí úspěšnou službu nedělá. V případě otevřené podpory pro opensource software, kterým WordPress je, jde především a hlavně o komunitu. Vím a věřím, že WordPress poradna, umístěná na adrese: <a href="http://podpora.dgx.cz/wordpress/">http://podpora.dgx.cz/wordpress/</a>, či WordPress fórum, umístěné na <a href="http://forum.cwordpress.cz">http://forum.cwordpress.cz</a>, má silnou a zdravou komunitu. O WordPress poradnu na serveru <a href="http://www.separatista.net/forum/">http://www.separatista.net/forum/</a> se zas starají odborníci, kteří mají za sebou práci na české lokalizaci WordPressu.</p>
<p>Nechci dělat konkurenci těmto třem zmíněným WordPress poradnám, ale chci ukázat že WordPress poradna nemusí být fórem a že vše může fungovat i jinak. </p>
<p>Doufám, že si můj nově spuštěný projekt WordPress poradny na adrese: <a href="http://david.binda.cz/wordpress-otazky-a-odpovedi/">http://david.binda.cz/wordpress-otazky-a-odpovedi/</a> najde své příznivce.</p>
<p>Projekt spouštím tak trochu nepřipraven, hlavně co se překladů týče. Ty nejsou zcela kompletní a tu a tam tedy narazíte na nějakou tu anglickou větu, ovšem jakmile bude trochu víc času, zapracuji na dokonalejších a kompletnějších překladech. Také se budu snažit, ze začátku intenzivněji, tento projekt podpořit svou účastí na zodpovídání položených otázek.</p>
<p>Takže, podpořte tento nový projekt a <a href="http://david.binda.cz/wordpress-otazky-a-odpovedi/">položte otázku</a>.</p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavid.binda.cz%2Fwordpress-otazky-a-odpovedi-1&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" class="fbframe" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://david.binda.cz/wordpress-otazky-a-odpovedi-1/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vytvoření WordPress šablony z vašeho statického HTML webu &#8211; 2.díl</title>
		<link>http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-2-dil</link>
		<comments>http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-2-dil#comments</comments>
		<pubDate>Wed, 12 Jan 2011 09:30:16 +0000</pubDate>
		<dc:creator>Binda</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://david.binda.cz/?p=349</guid>
		<description><![CDATA[V přechozím článku jsem vysvětloval, jak zajistit aspoň základní funkcionalitu šablony. Tento článek na předchozí navazuje a ukážu v něm, jakým způsobem přidat možnost rozdílných zobrazení pro titulní stránku, stránku příspěvku a stránku kategorie, jak přidat widgetized sidebar a podporu &#8230; <a href="http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-2-dil">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>V přechozím článku jsem vysvětloval, jak zajistit aspoň základní funkcionalitu šablony. <a href="http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-1-dil">Tento článek na předchozí navazuje</a> a ukážu v něm, jakým způsobem přidat možnost rozdílných zobrazení pro titulní stránku, stránku příspěvku a stránku kategorie, jak přidat widgetized sidebar a podporu pro uživatelská menu.</p>
<p>Přečtěte si také: <a href="http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-1-dil">První díl věnovaný úvodu do vytváření WordPress šablon ze statického HTML</a></p>
<h2>Rozdílné zobrazení pro příspěvek, kategorii a titulní stránku</h2>
<p>WordPress umožňuje použít pro různé druhy obsahu užít různé soubory šablony a tím snadno zajistit rozdílné zobrazení. Ovšem snad všechny webové stránky mají nějaké části společné, minimálně jde o hlavičku a patičku. WordPress na to pamatuje a umožňuje vytvořit samostatný soubor s patičkou a s hlavičkou, a to v širším smyslu. Čili nejde jen o sekci &lt;head&gt;, ale také o grafické záhlaví, popřípadě i navigační menu.</p>
<h3>header.php a footer.php</h3>
<p>Pro to, abychom při změně záhlaví webu nemuseli vždy měnit více souborů, ale změnu sme mohli provést jen na jednom souboru, máme k dispozici soubor header.php a <a href="http://codex.wordpress.org/Function_Reference/get_header">funkci get_header();</a></p>
<p>V našem <a href="http://www.freecsstemplates.org/preview/perplex/">demonstračním HTML kódu</a> se bude na většině podstránek opakovat celé záhlaví (navigační menu a fialový obdélník s logem), včetně sekce &lt;head&gt;. Čili ze souboru index.php můžeme do nově vytvořeného souboru header.php přesunout celou následující část zdrojového kódu:</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&nbsp;
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
&lt;!--
Design by Free CSS Templates
http://www.freecsstemplates.org
Released for free under a Creative Commons Attribution 2.5 License
&nbsp;
Name       : Perplex  
Description: A two-column, fixed-width design for 1024x768 screen resolutions.
Version    : 1.0
Released   : 20110110
&nbsp;
--&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;content-type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
&lt;title&gt;&lt;?php bloginfo('name'); ?&gt; &lt;?php wp_title(); ?&gt;&lt;/title&gt;
&lt;meta name=&quot;keywords&quot; content=&quot;&quot; /&gt;
&lt;meta name=&quot;description&quot; content=&quot;&quot; /&gt;
&lt;link href=&quot;&lt;?php bloginfo('template_url'); ?&gt;/style.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; /&gt;
&lt;?php wp_head(); ?&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div id=&quot;header&quot;&gt;
	&lt;div id=&quot;menu&quot;&gt;
		&lt;ul&gt;
			&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;first&quot;&gt;Homepage&lt;/a&gt;&lt;/li&gt;
			&lt;li class=&quot;current_page_item&quot;&gt;&lt;a href=&quot;#&quot;&gt;Personal Blog&lt;/a&gt;&lt;/li&gt;
			&lt;li&gt;&lt;a href=&quot;#&quot;&gt;About Us&lt;/a&gt;&lt;/li&gt;
			&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Contact Us&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	&lt;/div&gt;
	&lt;!-- end #menu --&gt;
&lt;/div&gt;
&lt;!-- end #header --&gt;
&lt;div id=&quot;logo&quot;&gt;
	&lt;h1&gt;&lt;a href=&quot;#&quot;&gt;Perplex &lt;/a&gt;&lt;/h1&gt;
	&lt;p&gt;&lt;em&gt; template design by &lt;a href=&quot;http://www.freecsstemplates.org/&quot;&gt;Free CSS Templates&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;hr /&gt;
&lt;!-- end #logo --&gt;</pre></div></div>

<p>A do nově vytvořeného souboru footer.php zas následující část:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&lt;div id=&quot;footer&quot;&gt;
	&lt;p&gt;Copyright (c) 2011 Sitename.com. All rights reserved. Design by &lt;a href=&quot;http://www.freecsstemplates.org/&quot;&gt;Free CSS Templates&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;!-- end #footer --&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_footer<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;/body&gt;
&lt;/html&gt;</pre></div></div>

<p>Na místo, kde v souboru index.php byly přesunuté části, umístíme php funkce get_header() pro volání souboru s hlavičkou a get_footer() pro volání souboru s patičkou. A jelikož tyto obě části byly na začátku, respektive na konci kódu, umístíme tato volání na začátek souboru, respektive konec souboru.</p>
<p>Čili soubor index.php bude vypadat, na našem demonstračním HTML, takto:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> get_header<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;div id=&quot;page&quot;&gt;
	&lt;div id=&quot;page-bgtop&quot;&gt;
		&lt;div id=&quot;page-bgbtm&quot;&gt;
&lt;div id=&quot;content&quot;&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span>have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #666666; font-style: italic;">/* existují příspěvky pro danou stránku */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">while</span> <span style="color: #009900;">&#40;</span>have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> the_post<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* zpracuj následujícím kódem každý jeden příspěvek */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
			&lt;div <span style="color: #000000; font-weight: bold;">&lt;?php</span> post_class<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">/* přidá třídu */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> id=&quot;post-<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_ID<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&quot;&gt;
				&lt;h2&gt;&lt;a href=&quot;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_permalink<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">/* trvalý odkaz na příspěvek */</span><span style="color: #000000; font-weight: bold;">?&gt;</span>&quot; rel=&quot;bookmark&quot; title=&quot;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_title_attribute<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_title<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* titulek příspěvku */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/a&gt;&lt;/h2&gt;
				&lt;small&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_time<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'j. F. Y'</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">/* datum publikace */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> &lt;!-- by <span style="color: #000000; font-weight: bold;">&lt;?php</span> the_author<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> --&gt;&lt;/small&gt;
&nbsp;
				&lt;div class=&quot;entry&quot;&gt;
					<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_content<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Celý článek &amp;raquo;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* to nejdůležitější, zobrazí obsah příspěvku*/</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
				&lt;/div&gt;
&nbsp;
				&lt;p class=&quot;postmetadata&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_tags<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Tags: '</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">', '</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'&lt;br /&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> Categories: <span style="color: #000000; font-weight: bold;">&lt;?php</span> the_category<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">', '</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> | <span style="color: #000000; font-weight: bold;">&lt;?php</span> edit_post_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Edit'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">' | '</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>  <span style="color: #000000; font-weight: bold;">&lt;?php</span> comments_popup_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'No Comments &amp;#187;'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'1 Comment &amp;#187;'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'% Comments &amp;#187;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/p&gt;
			&lt;/div&gt;
&nbsp;
		<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endwhile</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* konec zpracování každého jednoho příspěvku */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
		&lt;div class=&quot;navigation&quot;&gt;
			&lt;div class=&quot;alignleft&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> next_posts_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'&amp;laquo; Další články'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/div&gt;
			&lt;div class=&quot;alignright&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> previous_posts_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Předchozí články &amp;raquo;'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/div&gt;
		&lt;/div&gt;
&nbsp;
	<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">else</span> <span style="color: #339933;">:</span> <span style="color: #666666; font-style: italic;">/* žádné příspěvky pro danou stránku neexistují */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
		&lt;h2 class=&quot;center&quot;&gt;Not Found&lt;/h2&gt;
		&lt;p&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> _e<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Sorry, no posts matched your criteria.'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* chybová hláška */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/p&gt;
		<span style="color: #000000; font-weight: bold;">&lt;?php</span> get_search_form<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* přidá vyhledávací formulář */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endif</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;/div&gt;
&lt;div id=&quot;sidebar&quot;&gt;
				&lt;ul&gt;
					&lt;li&gt;
						&lt;h2&gt;Bibendum  ornare &lt;/h2&gt;
						&lt;ul&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Magna lacus bibendum mauris&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Velit semper nisi molestie&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Eget tempor eget nonummy&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Velit semper nisi molestie&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Eget tempor eget nonummy&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
						&lt;/ul&gt;
					&lt;/li&gt;
					&lt;li&gt;
						&lt;h2&gt;Pellenteque ornare &lt;/h2&gt;
						&lt;ul&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Magna lacus bibendum mauris&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Velit semper nisi molestie&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Eget tempor eget nonummy&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Velit semper nisi molestie&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Eget tempor eget nonummy&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
						&lt;/ul&gt;
					&lt;/li&gt;
					&lt;li&gt;
						&lt;h2&gt;Turpis nulla&lt;/h2&gt;
						&lt;ul&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Magna lacus bibendum mauris&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Velit semper nisi molestie&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Eget tempor eget nonummy&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Magna lacus bibendum mauris&lt;/a&gt;&lt;/li&gt;
						&lt;/ul&gt;
					&lt;/li&gt;
				&lt;/ul&gt;
			&lt;/div&gt;
			&lt;!-- end #sidebar --&gt;
		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;
&nbsp;
&nbsp;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> get_footer<span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<h3>Rozdělení šablony pro jednotlivé druhy obsahu</h3>
<p>Tak a když nyní máme oddělenou hlavičku a patičku webu, která tak zůstane vždy stejná na celém našem webu, můžeme přistoupit k samotné diferenciaci.</p>
<p>Přidělování jednotlivých souborů šablon probíhá dle následujícího vzorce graficky znázorněného na stránkách codexu: <a href="http://codex.wordpress.org/Template_Hierarchy#Visual_Overview">http://codex.wordpress.org/Template_Hierarchy#Visual_Overview</a></p>
<p>Z tohoto vzorce vyplývá, že pokud budeme chtít jiné zobrazení pro příspěvek, stačí nakopírovat soubor index.php a přejmenovat jej na single.php, provést požadované úpravy, třeba odstranění odkazu z nadpisu &lt;h2&gt; v rámci cyklu (the loop), a soubor uložit. Obdobně pro kategorii můžeme vytvořit soubor category.php a pro stránku page.php. </p>
<p>Toto lze navíc rozšířit o tzv. slugy, tedy speciální zobrazení pro konkrétní příspěvek, konkrétní stránku a konkrétní kategorii. <a href="http://david.binda.cz/specialni-sablona-pro-konkretni-rubriku-stranku-ci-prispevek">Viz jeden z mých předchozích článků věnovaný této problematice.</a></p>
<p>Ze schématu dále vyplývá, že všechny neexsitující soubory mají fallback na index.php (to je důvod, proč nám u minimální šablony stačí právě tento soubor). </p>
<h2>Widgetized sidebar</h2>
<p>Další specialitkou WordPressu je widgetized sidebar, který umožňuje uživatelům vkládat jednoduše do postranního panelu nejrůznější informace a ovládací prvky.</p>
<p>Pro zpřístupnění tohoto mechanismu budeme potřebovat zavés vedle již existujících souborů WordPress šablony (header.php, footer.php, index.php, style.php a popřípadě single.php, page.php či category.php) další soubor a sice speciální soubor s názvem functions.php, který může obsahovat funkce rozšiřující funkcionalitu WordPressu.</p>
<p>Po vytvoření tohoto souboru v adresáři naší WordPress šabony do něj umístíme, pro zprovozněnní widgetized sidebaru následující kód:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> 
<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #990000;">function_exists</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'register_sidebar'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
register_sidebar<span style="color: #009900;">&#40;</span><span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
	<span style="color: #0000ff;">'name'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'Můj Sidebar'</span><span style="color: #339933;">,</span> <span style="color: #666666; font-style: italic;">//název sidebaru zobrazující se v administraci</span>
	<span style="color: #0000ff;">'id'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'sidebar-$i'</span><span style="color: #339933;">,</span> <span style="color: #666666; font-style: italic;">//id sidebaru pro možnost stylování pomocí css</span>
	<span style="color: #0000ff;">'description'</span><span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'Můj sidebar'</span><span style="color: #339933;">,</span> <span style="color: #666666; font-style: italic;">//popisek sidebaru</span>
	<span style="color: #0000ff;">'before_widget'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'&lt;li&gt;'</span><span style="color: #339933;">,</span> <span style="color: #666666; font-style: italic;">//do jakého kódu obalit každý widget - otevírací kód</span>
	<span style="color: #0000ff;">'after_widget'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'&lt;/li&gt;'</span><span style="color: #339933;">,</span> <span style="color: #666666; font-style: italic;">//uzavírací kód každého widgetu</span>
	<span style="color: #0000ff;">'before_title'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'&lt;h2&gt;'</span><span style="color: #339933;">,</span> <span style="color: #666666; font-style: italic;">//obal pro nadpis widgetu v sidebaru - uvozovací kód</span>
	<span style="color: #0000ff;">'after_title'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'&lt;/h2&gt;'</span> <span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>   <span style="color: #666666; font-style: italic;">//obal pro nadpis widgetu v sidebaru - ukončovací kód</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></td></tr></table></div>

<p>Tím si tedy v administraci zpřístupníme sidebar s názvem Sidebar a můžeme do něj přidávat widgety. Ale to ještě není všechno. Ještě potřebujeme sidebar nějak zobrazit. K tomu slouží následující kód, kde v uvozovkách u funkce dynamic_sidebar() je název definovaný ve functions.php :</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #339933;">!</span><span style="color: #990000;">function_exists</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'dynamic_sidebar'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">||</span> <span style="color: #339933;">!</span>dynamic_sidebar<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Můj Sidebar'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;!--Zde lze vložit obsah, který se zobrazí v případě, že sidebar nebude naplněn widgety--&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endif</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Čili pakliže někam vložíte tento ḱód, budou se v něm zobrazovat widgety, které nastavíte skrze administraci.</p>
<p>V našem demonstračním ḱódu to bude vypadat takhle (vynechal jsem obsah nad elementem div s id=&#8221;sidebar&#8221;)</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> get_header<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;div id=&quot;sidebar&quot;&gt;
				&lt;ul&gt;
					<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #339933;">!</span><span style="color: #990000;">function_exists</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'dynamic_sidebar'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">||</span> <span style="color: #339933;">!</span>dynamic_sidebar<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Můj Sidebar'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
					&lt;li&gt;
						&lt;h2&gt;Bibendum  ornare &lt;/h2&gt;
						&lt;ul&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Magna lacus bibendum mauris&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Velit semper nisi molestie&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Eget tempor eget nonummy&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Velit semper nisi molestie&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Eget tempor eget nonummy&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
						&lt;/ul&gt;
					&lt;/li&gt;
					&lt;li&gt;
						&lt;h2&gt;Pellenteque ornare &lt;/h2&gt;
						&lt;ul&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Magna lacus bibendum mauris&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Velit semper nisi molestie&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Eget tempor eget nonummy&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Velit semper nisi molestie&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Eget tempor eget nonummy&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
						&lt;/ul&gt;
					&lt;/li&gt;
					&lt;li&gt;
						&lt;h2&gt;Turpis nulla&lt;/h2&gt;
						&lt;ul&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Magna lacus bibendum mauris&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Velit semper nisi molestie&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Eget tempor eget nonummy&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Nec metus sed donec&lt;/a&gt;&lt;/li&gt;
							&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Magna lacus bibendum mauris&lt;/a&gt;&lt;/li&gt;
						&lt;/ul&gt;
					&lt;/li&gt;
				<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endif</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
				&lt;/ul&gt;
			&lt;/div&gt;
			&lt;!-- end #sidebar --&gt; 
<span style="color: #000000; font-weight: bold;">&lt;?php</span> get_footer<span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>No a to je pro zfunkčnění widgetized sidebaru vše. Snad jen ještě pro doplnění upřesním, že stejně jako jsme z hlavního souboru (index.php, single.php a podobně) vyjmuli hlavičku s patičkou, můžeme vyjmout i sidebar. A to jednoduše tak, že veškerý kód, který by se měl v šabloně opakovat a jenž tvoří sidebar, umístíme do souboru sidebar.php (v našem případě od div s id=&#8221;sidebar&#8221; až po komentář &#038;lt&#8211; end #sidebar &#8211;>. A namísto vyjmuté části kódu umístíme volání <a href="http://codex.wordpress.org/Function_Reference/get_sidebar">WordPress funkce get_sidebar</a></p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> get_sidebar<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<h2>Uživatelské navigační menu</h2>
<p>WordPress od verze 3.0 umožňje skrze administraci jednoduše vytvářet navigační menu. Ovšem šablona musí tuto funkcionalitu podporovat. Nyní si ukážeme, jak toto zprovoznit i v naší šabloně. </p>
<p>Při &#8220;porcování&#8221; šablony do jednotlivých souborů se nám navigační menu dostalo do souboru s hlavičkou (header.php). Tam tedy budem provádět úpravy. Ale až poté, co funkci navigačních menu zprovozníme v nám již známém souboru functions.php. Kód pro functions.php:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #990000;">function_exists</span><span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'register_nav_menu'</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	register_nav_menu<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'top-menu'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'Hlavní menu'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>To co je důležité, jsou parametry <a href="http://codex.wordpress.org/Function_Reference/register_nav_menu">WordPress funkce register_nav_menu</a>. Prvním parametrem je umístění menu (bez mezer) a druhým je popis menu. Popis se používá při zobrazení v administraci, umístění je pro vnitřní potřeby šablony. Víc do functions.php přidávat nemusíme.</p>
<p>Dalším krokem je nahrazení doposud statického menu v hlaviče za dynamické. Nahradíme  tedy celý kód menu jednou WordPress funkcí a sice <a href="http://codex.wordpress.org/Function_Reference/wp_nav_menu">funkcí wp_nav_menu</a>, přičemž parametr theme_location se musí shodovat s prvním parametrem <a href="http://codex.wordpress.org/Function_Reference/register_nav_menu">funkce register_nav_menu</a> z functions.php. Parametr menu_id nastavuje atribut id našeho menu, depth ovlivňuje počet úrovní, které se mají vypsat a echo zajistí, že menu bude vypsáno. Více parametrů je v <a href="http://codex.wordpress.org/Function_Reference/wp_nav_menu">dokumentaci funkce wp_nav_menu</a>:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_nav_menu<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'theme_location=top-menu&amp;menu_id=top-menu&amp;depth=1&amp;echo=1'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Více o problematice naleznete tradičně v codexu:<br />
<a href="http://codex.wordpress.org/Navigation_Menus">http://codex.wordpress.org/Navigation_Menus</a></p>
<h2>Závěrem</h2>
<p>Tento navazující článek (<a href="http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-1-dil">přečtěte si také první díl</a>) snad již vyčerpal téma základy tvorby WordPress šablon. V současnosti mě nenapadá, co by případně melo být obsahem dalšího dílu, jelikož všechny další úpravy šablon jsou již velmi specifické. Ale pokud vás nějaká tematika zajímá, nestyďte se a přihlašte se o ní v diskusi pod článkem.</p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavid.binda.cz%2Fvytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-2-dil&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" class="fbframe" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-2-dil/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vytvoření WordPress šablony z vašeho statického HTML webu &#8211; 1.díl</title>
		<link>http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-1-dil</link>
		<comments>http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-1-dil#comments</comments>
		<pubDate>Tue, 11 Jan 2011 14:49:30 +0000</pubDate>
		<dc:creator>Binda</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://david.binda.cz/?p=335</guid>
		<description><![CDATA[Tento článek si klade za cíl pouze uvést do problematiky tvorby WordPress šablon a má být první zastávkou na dlouhé trati pro ty, kteří se rozhodli svůj doposud statický HTML web napsaný v poznámkovém bloku převést na WordPress svépomocí. Demonstrační &#8230; <a href="http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-1-dil">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Tento článek si klade za cíl pouze uvést do problematiky tvorby WordPress šablon a má být první zastávkou na dlouhé trati pro ty, kteří se rozhodli svůj doposud statický HTML web napsaný v poznámkovém bloku převést na WordPress svépomocí. </p>
<p>Demonstrační HTML kódy užité v následujícím článku pochází ze <a href="http://www.freecsstemplates.org/preview/perplex/">šablony perplex ze serveru freecsstemplates.org</a></p>
<p>Nejjednodušší WordPress šablona se musí sestávat aspoň ze souboru index.php a ideálně také ze souboru style.css. WordPress si všímá pouze šablon umístěných v adresáři /wp-content/themes/ a každá šablona musí být umístěna ještě ve vlastním adresáři. Čili při vytváření naší šablony si založíme adresář my_template a do ní vytvoříme dva soubory index.php a style.css.</p>
<p>Takže zatím máme v adresáři /wp-content/themes/my_template dva prázdné soubory index.php a style.css.<br />
Do souboru style.css, na jeho začátek, vložíme následující obsah, kterým si zajistíme to, že šablona se bude v administraci hlásit jako <strong>Moje Šablona 1.0 od Já</strong> :</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">/*
Theme Name: Moje Šablona
Description: Můj první pokus o WordPress šablonu
Author: Já
Version: 1.0
*/</span></pre></div></div>

<p>Dále by se do souboru style.css slušelo nakopírovat <a href="http://codex.wordpress.org/CSS#WordPress_Generated_Classes">WordPress Generated Classes</a>, se kterými WordPress automaticky počítá, aspoň co se WYSIWYG editoru týká a obsah našeho stávajícího css souboru.</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #6666ff;">.aligncenter</span><span style="color: #00AA00;">,</span> div<span style="color: #6666ff;">.aligncenter</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">block</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin-left</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">auto</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin-right</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">auto</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #6666ff;">.alignleft</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span> <span style="color: #000000; font-weight: bold;">left</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #6666ff;">.alignright</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span> <span style="color: #000000; font-weight: bold;">right</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #6666ff;">.wp-caption</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">background-color</span><span style="color: #00AA00;">:</span> <span style="color: #cc00cc;">#f3f3f3</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span> <span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#ddd</span><span style="color: #00AA00;">;</span>
	-khtml-border-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">3px</span><span style="color: #00AA00;">;</span>
	-moz-border-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">3px</span><span style="color: #00AA00;">;</span>
	-webkit-border-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">3px</span><span style="color: #00AA00;">;</span>
	border-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">3px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* optional rounded corners for browsers that support it */</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding-top</span><span style="color: #00AA00;">:</span> <span style="color: #933;">4px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">text-align</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">center</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #6666ff;">.wp-caption</span> img <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span> <span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #6666ff;">.wp-caption</span> p.wp-caption-<span style="color: #993333;">text</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">font-size</span><span style="color: #00AA00;">:</span> <span style="color: #933;">11px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">line-height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">17px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span> <span style="color: #933;">4px</span> <span style="color: #933;">5px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>No a do souboru index.php nakopírujeme html kód úvodní stránky stránky našeho webu (velmi pravděpodobně jde o soubor index.html).</p>
<p>No a nyní se již musíme vrhnout na úpravy našeho původního HTML kódu a okořenit jej o nějaké ty php příkazy, kterým WordPress rozumí.</p>
<h2>Úpravy sekce head</h2>
<p>Nejdříve začneme s úpravou hlavičky. Sekce head by vždy měla obsahovat, těsně před svým ukončením, čili před tagem &lt;/head&gt;, volání <a href="http://codex.wordpress.org/Function_Reference/wp_head">funkce wp_head()</a>.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code"><pre class="php" style="font-family:monospace;">&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;content-type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
&lt;title&gt;Perplex   by Free CSS Templates&lt;/title&gt;
&lt;meta name=&quot;keywords&quot; content=&quot;&quot; /&gt;
&lt;meta name=&quot;description&quot; content=&quot;&quot; /&gt;
&lt;link href=&quot;style.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; /&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_head<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;/head&gt;</pre></td></tr></table></div>

<p>V kódu je funkce wp_head() volána na řáku 8. Jde o funkci, kterou využívají prakticky všechny pluginy, její vynechání by tedy znamenalo znemožnění jejich fungování.</p>
<p>Dále budeme chtít nalinkovat náš css soubor. Ve výše uvedeném příkladě máme relativní odkaz na style.css. Ačkoli je název shodný (a to je pouze náhoda, že mnou vybraná demonstrační šablona má tento název pro soubor s css styly) nebude nám tento odkaz fungovat. Musíme jej doplnit o celou cestu z rootu webu k našemu souboru style.css. Opět to zajistí php funkce, tentokráte funkce <a href="http://codex.wordpress.org/Function_Reference/bloginfo">bloginfo()</a>:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code"><pre class="php" style="font-family:monospace;">&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;content-type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
&lt;title&gt;Perplex   by Free CSS Templates&lt;/title&gt;
&lt;meta name=&quot;keywords&quot; content=&quot;&quot; /&gt;
&lt;meta name=&quot;description&quot; content=&quot;&quot; /&gt;
&lt;link href=&quot;<span style="color: #000000; font-weight: bold;">&lt;?php</span> bloginfo<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'template_url'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>/style.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; /&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_head<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;/head&gt;</pre></td></tr></table></div>

<p>Všimněte si změny na řádku 7, kdy sme doplnili jak volání funkce bloginfo, tak lomítko před název našeho souboru se styly. Funkce bloginfo totiž vrací něco v tomto smyslu &#8220;http://example/home/wp/wp-content/themes/parent-theme&#8221; (bez uvozovek) a tudíž by bez námi doplněného lomítka vypadala adresa poté takto: &#8220;http://example/home/wp/wp-content/themes/parent-themestyle.css&#8221; ale my chceme takovouto adresu: &#8220;http://example/home/wp/wp-content/themes/parent-theme/style.css&#8221;.</p>
<p>Tak nyní bychom snad chtěli ještě mít možnost ovlivňovat titlek stránky, tag &lt;title&gt;. To nám zajistí <a href="http://codex.wordpress.org/Function_Reference/wp_title">funkce wp_title()</a>, ideálně v kombinaci s nám již známou <a href="http://codex.wordpress.org/Template_Tags/bloginfo">funkcí bloginfo()</a>. Změnu provedeme na řádku 4 následujícího kódu, přičem smažeme &#8220;natvrdo&#8221; vložený titulek bývalé HTML statickéh stránky:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code"><pre class="php" style="font-family:monospace;">&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;content-type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
&lt;title&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> bloginfo<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'name'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> <span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_title<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/title&gt;
&lt;meta name=&quot;keywords&quot; content=&quot;&quot; /&gt;
&lt;meta name=&quot;description&quot; content=&quot;&quot; /&gt;
&lt;link href=&quot;<span style="color: #000000; font-weight: bold;">&lt;?php</span> bloginfo<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'template_url'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>/style.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; /&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> wp_head<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;/head&gt;</pre></td></tr></table></div>

<p>Titulek stránky při zobrazení příspěvku poté bude vypadat nějak takto: <strong>My WordPress Blog » Hello world!</strong>. Kde My WordPress Blog je název blogu, který lze upravit v administraci a Hello world! je název příspěvku, který lze nastavit při editaci příspěvku. Na titulní stránce bude zobrazeno jen <strong>My WordPress Blog</strong>. <a href="http://codex.wordpress.org/Function_Reference/wp_title#Examples">Pakliže chcete jiné pořadí nebo jiný oddělovač názvu blogu od názvu příspěvku, podívejte se do dokumentace.</a></p>
<p>Tím bychom byli s úpravami hlavičky, aspoň pro základní fungování naší nové WordPress šablony, hotovi. Dále se vrhneme na úpravu patičky, která je o dost jednodušší a po níž nám chybí již &#8220;jen&#8221; to hlavní, motor zobrazování obsahu vytvořený skrze administraci.</p>
<h2>Úprava patičky &#8211; funkce wp_footer()</h2>
<p>Stejně  jako je velmi důležitá, pro fungování pluginů, funkce wp_head() v hlavičce, je důležitá i <a href="http://codex.wordpress.org/Function_Reference/wp_footer">funkce wp_footer()</a> v patičce webu. Přesněji její umístění těsně před uzavírajícím &lt;/body&gt; tagem:</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">.
.
.
&lt;?php wp_footer(); ?&gt;
&lt;/body&gt;
&lt;/html&gt;</pre></div></div>

<h2>The Loop &#8211; zobrazování obsahu vytvořeného v administraci</h2>
<p>Základním kamenem každé WordPress šablony je cyklus (anglicky loop), který se stará o výpis všech článků, které odpovídají dané kategorii (či zobrazení hlavní stránky) a nebo jen zobrazení jednoho jediného příspěvku. V případě jednoho příspěvku (single post) proběhne cyklus pouze jednou, ale stále je nutné, aby vše bylo zapsáno v cyklu. Základní <a href="http://codex.wordpress.org/The_Loop">WordPress cyklus</a> vypadá takto:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">while</span> <span style="color: #009900;">&#40;</span> have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> the_post<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
...
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endwhile</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">else</span><span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;p&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> _e<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Sorry, no posts matched your criteria.'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/p&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endif</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></td></tr></table></div>

<p>Čili nejdříve se otestuje, jestli jsou vůbec pro danou stránku (kategorii, příspěvek, titulní stránku) vůbec nějaké příspěvky k zobrazení(řádek 1). A pakliže ne(řádek 5), vyhodí se chybová hláška (řádek 6).<br />
Pakliže nějaké příspěvky ale jsou, spustí se cyklus while, který proběhne pro každý jednotlivý příspěvek (řádek 2).</p>
<p>Ve výše uvedeném zdrojovém kódu cyklu samozřejmě něco chybí. A sice způsob, jakým se má příspěvek zpracovat. Způsob zpracování je ve zmíněném kódu nahrazen třemi tečkami. Na jejich místo přijde samotný kód. Příkladem budiž the loop z defaultní šablony WordPressu 2.9 :</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span>have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #666666; font-style: italic;">/* existují příspěvky pro danou stránku */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">while</span> <span style="color: #009900;">&#40;</span>have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> the_post<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* zpracuj následujícím kódem každý jeden příspěvek */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
			&lt;div <span style="color: #000000; font-weight: bold;">&lt;?php</span> post_class<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">/* přidá třídu */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> id=&quot;post-<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_ID<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&quot;&gt;
				&lt;h2&gt;&lt;a href=&quot;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_permalink<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">/* trvalý odkaz na příspěvek */</span><span style="color: #000000; font-weight: bold;">?&gt;</span>&quot; rel=&quot;bookmark&quot; title=&quot;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_title_attribute<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_title<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* titulek příspěvku */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/a&gt;&lt;/h2&gt;
				&lt;small&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_time<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'j. F. Y'</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">/* datum publikace */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> &lt;!-- by <span style="color: #000000; font-weight: bold;">&lt;?php</span> the_author<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> --&gt;&lt;/small&gt;
&nbsp;
				&lt;div class=&quot;entry&quot;&gt;
					<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_content<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Celý článek &amp;raquo;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* to nejdůležitější, zobrazí obsah příspěvku*/</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
				&lt;/div&gt;
&nbsp;
				&lt;p class=&quot;postmetadata&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_tags<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Tags: '</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">', '</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'&lt;br /&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> Categories: <span style="color: #000000; font-weight: bold;">&lt;?php</span> the_category<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">', '</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> | <span style="color: #000000; font-weight: bold;">&lt;?php</span> edit_post_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Edit'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">' | '</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>  <span style="color: #000000; font-weight: bold;">&lt;?php</span> comments_popup_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'No Comments &amp;#187;'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'1 Comment &amp;#187;'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'% Comments &amp;#187;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/p&gt;
			&lt;/div&gt;
&nbsp;
		<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endwhile</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* konec zpracování každého jednoho příspěvku */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
		&lt;div class=&quot;navigation&quot;&gt;
			&lt;div class=&quot;alignleft&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> next_posts_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'&amp;laquo; Další články'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/div&gt;
			&lt;div class=&quot;alignright&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> previous_posts_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Předchozí články &amp;raquo;'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/div&gt;
		&lt;/div&gt;
&nbsp;
	<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">else</span> <span style="color: #339933;">:</span> <span style="color: #666666; font-style: italic;">/* žádné příspěvky pro danou stránku neexistují */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
		&lt;h2 class=&quot;center&quot;&gt;Not Found&lt;/h2&gt;
		&lt;p&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> _e<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Sorry, no posts matched your criteria.'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* chybová hláška */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/p&gt;
		<span style="color: #000000; font-weight: bold;">&lt;?php</span> get_search_form<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* přidá vyhledávací formulář */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endif</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></td></tr></table></div>

<p>Takže jak bylo řečeno, každá šablona musí mít tento (nebo samozřejmě nějakým způsobem upravený) cyklus ve svém těle.</p>
<p>Již máte přesunuté css předpisy do souboru style.css a ten je správně nalinkován z hlavičky (sekce &lt;head&gt;) a v hlavičce máte také titulek webu s titulkem příspěvku a hook pro pluigny. Hook máte také vv patičce webu a výše zmíněným cyklem, nahradíte hlavní obsahovou část vaší šabony. V demonstrační HTML stánce jde o obsah divu s id=&#8221;content&#8221;:</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&lt;div id=&quot;content&quot;&gt;
				&lt;div class=&quot;post&quot;&gt;
					&lt;div class=&quot;post-bgtop&quot;&gt;
						&lt;div class=&quot;post-bgbtm&quot;&gt;
							&lt;h2 class=&quot;title&quot;&gt;&lt;a href=&quot;#&quot;&gt;Welcome to Perplex &lt;/a&gt;&lt;/h2&gt;
							&lt;p class=&quot;meta&quot;&gt;&lt;span class=&quot;date&quot;&gt;Sunday, January 26, 2011&lt;/span&gt; 7:27 AM Posted by &lt;a href=&quot;#&quot;&gt;Someone&lt;/a&gt;&lt;/p&gt;
							&lt;div class=&quot;entry&quot;&gt;
								&lt;p&gt;This is &lt;strong&gt;Perplex &lt;/strong&gt;, a free, fully standards-compliant CSS template designed by &lt;a href=&quot;http://www.freecsstemplates.org/&quot;&gt;Free CSS Templates&lt;/a&gt;, released for free under the &lt;a href=&quot;http://creativecommons.org/licenses/by/2.5/&quot;&gt;Creative Commons Attribution 2.5&lt;/a&gt; license.  You're free to use this template for anything as long as you link back to &lt;a href=&quot;http://www.freecsstemplates.org/&quot;&gt;my site&lt;/a&gt;. Enjoy :)&lt;/p&gt;
								&lt;p&gt;Sed lacus. Donec lectus. Nullam pretium nibh ut turpis. Nam bibendum. In nulla tortor, elementum ipsum. Proin imperdiet est. Phasellus dapibus semper urna. Pellentesque ornare, orci in felis. &lt;/p&gt;
							&lt;/div&gt;
						&lt;/div&gt;
					&lt;/div&gt;
				&lt;/div&gt;
				&lt;div class=&quot;post&quot;&gt;
					&lt;div class=&quot;post-bgtop&quot;&gt;
						&lt;div class=&quot;post-bgbtm&quot;&gt;
							&lt;h2 class=&quot;title&quot;&gt;&lt;a href=&quot;#&quot;&gt;Lorem ipsum sed aliquam&lt;/a&gt;&lt;/h2&gt;
							&lt;p class=&quot;meta&quot;&gt;&lt;span class=&quot;date&quot;&gt;Sunday, January 26, 2011&lt;/span&gt; 7:27 AM Posted by &lt;a href=&quot;#&quot;&gt;Someone&lt;/a&gt;&lt;/p&gt;
							&lt;div class=&quot;entry&quot;&gt;
								&lt;p&gt;Sed lacus. Donec lectus. Nullam pretium nibh ut turpis. Nam bibendum. In nulla tortor, elementum vel, tempor at, varius non, purus. Mauris vitae nisl nec   consectetuer. Donec ipsum. Proin imperdiet est. Phasellus &lt;a href=&quot;#&quot;&gt;dapibus semper urna&lt;/a&gt;. Pellentesque ornare, orci in consectetuer hendrerit, urna elit eleifend nunc, ut consectetuer nisl felis ac diam. Etiam non felis. Donec ut ante. In id eros.&lt;/p&gt;
								&lt;p&gt;Mauris vitae nisl nec metus placerat consectetuer. Donec ipsum. Proin imperdiet est. Sed lacus. Donec lectus. Nullam pretium nibh ut turpis. Nam bibendum. In nulla tortor, elementum vel, tempor at, varius non, purus. Mauris vitae nisl nec metus placerat consectetuer. Donec ipsum. Proin imperdiet est. Phasellus &lt;a href=&quot;#&quot;&gt;dapibus semper urna&lt;/a&gt;. Pellentesque ornare, orci in consectetuer hendrerit, urna elit eleifend nunc, ut consectetuer nisl felis ac diam. &lt;/p&gt;
							&lt;/div&gt;
						&lt;/div&gt;
					&lt;/div&gt;
				&lt;/div&gt;
				&lt;div class=&quot;post&quot;&gt;
					&lt;div class=&quot;post-bgtop&quot;&gt;
						&lt;div class=&quot;post-bgbtm&quot;&gt;
							&lt;h2 class=&quot;title&quot;&gt;&lt;a href=&quot;#&quot;&gt;Lorem ipsum sed aliquam&lt;/a&gt;&lt;/h2&gt;
							&lt;p class=&quot;meta&quot;&gt;&lt;span class=&quot;date&quot;&gt;Sunday, January 26, 2011&lt;/span&gt; 7:27 AM Posted by &lt;a href=&quot;#&quot;&gt;Someone&lt;/a&gt;&lt;/p&gt;
							&lt;div class=&quot;entry&quot;&gt;
								&lt;p&gt;Mauris vitae nisl nec metus placerat consectetuer. Donec ipsum. Proin imperdiet est. Sed lacus. Donec lectus. Nullam pretium nibh ut turpis. Nam bibendum. In nulla tortor, elementum vel, tempor at, varius non, purus. Mauris vitae nisl nec metus placerat consectetuer. Donec ipsum. Proin imperdiet est. Phasellus &lt;a href=&quot;#&quot;&gt;dapibus semper urna&lt;/a&gt;. Pellentesque ornare, orci in consectetuer hendrerit, urna elit eleifend nunc, ut consectetuer nisl felis ac diam. &lt;/p&gt;
								&lt;p&gt; In nulla tortor, elementum vel, tempor at, varius non, purus. Mauris vitae nisl nec metus placerat consectetuer. Donec ipsum. Proin imperdiet est. Phasellus &lt;a href=&quot;#&quot;&gt;dapibus semper urna&lt;/a&gt;. Pellentesque ornare, orci in consectetuer hendrerit, urna elit eleifend nunc, ut consectetuer nisl felis ac diam. &lt;/p&gt;
							&lt;/div&gt;
						&lt;/div&gt;
					&lt;/div&gt;
				&lt;/div&gt;
			&lt;/div&gt;</pre></div></div>

<p>Po nahrazení bude vypadat takto:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&lt;div id=&quot;content&quot;&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span>have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #666666; font-style: italic;">/* existují příspěvky pro danou stránku */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">while</span> <span style="color: #009900;">&#40;</span>have_posts<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> the_post<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* zpracuj následujícím kódem každý jeden příspěvek */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
			&lt;div <span style="color: #000000; font-weight: bold;">&lt;?php</span> post_class<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">/* přidá třídu */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> id=&quot;post-<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_ID<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&quot;&gt;
				&lt;h2&gt;&lt;a href=&quot;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_permalink<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">/* trvalý odkaz na příspěvek */</span><span style="color: #000000; font-weight: bold;">?&gt;</span>&quot; rel=&quot;bookmark&quot; title=&quot;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_title_attribute<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_title<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* titulek příspěvku */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/a&gt;&lt;/h2&gt;
				&lt;small&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_time<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'j. F. Y'</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">/* datum publikace */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> &lt;!-- by <span style="color: #000000; font-weight: bold;">&lt;?php</span> the_author<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> --&gt;&lt;/small&gt;
&nbsp;
				&lt;div class=&quot;entry&quot;&gt;
					<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_content<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Celý článek &amp;raquo;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* to nejdůležitější, zobrazí obsah příspěvku*/</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
				&lt;/div&gt;
&nbsp;
				&lt;p class=&quot;postmetadata&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> the_tags<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Tags: '</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">', '</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'&lt;br /&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> Categories: <span style="color: #000000; font-weight: bold;">&lt;?php</span> the_category<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">', '</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span> | <span style="color: #000000; font-weight: bold;">&lt;?php</span> edit_post_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Edit'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">' | '</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>  <span style="color: #000000; font-weight: bold;">&lt;?php</span> comments_popup_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'No Comments &amp;#187;'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'1 Comment &amp;#187;'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'% Comments &amp;#187;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/p&gt;
			&lt;/div&gt;
&nbsp;
		<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endwhile</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* konec zpracování každého jednoho příspěvku */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
		&lt;div class=&quot;navigation&quot;&gt;
			&lt;div class=&quot;alignleft&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> next_posts_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'&amp;laquo; Další články'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/div&gt;
			&lt;div class=&quot;alignright&quot;&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> previous_posts_link<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Předchozí články &amp;raquo;'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/div&gt;
		&lt;/div&gt;
&nbsp;
	<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">else</span> <span style="color: #339933;">:</span> <span style="color: #666666; font-style: italic;">/* žádné příspěvky pro danou stránku neexistují */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
		&lt;h2 class=&quot;center&quot;&gt;Not Found&lt;/h2&gt;
		&lt;p&gt;<span style="color: #000000; font-weight: bold;">&lt;?php</span> _e<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Sorry, no posts matched your criteria.'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* chybová hláška */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/p&gt;
		<span style="color: #000000; font-weight: bold;">&lt;?php</span> get_search_form<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">/* přidá vyhledávací formulář */</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endif</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;/div&gt;</pre></div></div>

<h2>Závěrem</h2>
<p>Tímto způsobem vytvořená šablona nebude využívat všech možností WordPressu. Bude jen a pouze zobrazovat obsah, který vytvoříte přes administraci (a to dokonce jen a pouze na příspěvky). Zobrazování seznamu kategorií, widgetized sidebar, uživatelsky vytvořená menu a další ze skvělých funkcí WordPressu se musí ještě dokódovat.</p>
<p>Stejně tak je tato šablona stejná pro všechny druhy obsahu (příspěvek, vyhledávání, rubrika, titulní stránka). Pro různá zobrazení pro různé druhy obsahu je nutné šablony rozdělit na více souborů.</p>
<p>To všechno bude ale obsahem až <a href="http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-2-dil">příštího článku</a>.</p>
<p><strong>Update:</strong><br />
Přečtěte si také <a href="http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-2-dil">druhý díl</a></p>
<h2>Reference a další čtení:</h2>
<p><a href="http://codex.wordpress.org/Templates">http://codex.wordpress.org/Templates</a><br />
<a href="http://codex.wordpress.org/Theme_Development">http://codex.wordpress.org/Theme_Development</a><br />
<a href="http://codex.wordpress.org/Site_Design_and_Layout">http://codex.wordpress.org/Site_Design_and_Layout</a><br />
<a href="http://codex.wordpress.org/Template_Hierarchy">http://codex.wordpress.org/Template_Hierarchy</a><br />
<a href="http://codex.wordpress.org/Template_Tags">http://codex.wordpress.org/Template_Tags</a><br />
<a href="http://codex.wordpress.org/The_Loop">http://codex.wordpress.org/The_Loop</a></p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdavid.binda.cz%2Fvytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-1-dil&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" class="fbframe" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://david.binda.cz/vytvoreni-wordpress-sablony-z-vaseho-statickeho-html-webu-1-dil/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

