Vypsání hlavní stránky

Rudolf Svátek 2016-05-31 22:42

Fajn, takže šablona funguje a už se i vypisuje menu. Zatím tedy když klikneš na nějakou položku z menu, pořád to nefunguje, ale to prozatím nechme tak. Teď si upravíme šablonu tak, že bude vypisovat stránku, která je nastavena pro výpis na hlavní stránce webu.

Takže zase úprava souboru @layout.latte, vytvoření šablony pro výpis domovské stránky a vložení makra pro výpis.

  1. v souboru @layout.latte najdi tu část kódu, která se týké domovské stránky. Podle mě začíná řádky:
    <!---header-wrap--->
    <div class="clear"></div>
    <div class="banner-wrap">
    	<div class="banner"> <img src="{$basePath}/{$theme}/images/banner1.jpg" alt="banner" /> </div>
    	</div>
    <!---banner--->
    <div class="page-wrap">
    	<div class="wrap">
    

    a pak pokračuje dál a končí:

    			<form>
    				<label>
    					<input type="text" class="input_text" name="name" id="name"/>
    				</label>
    				<label>
    					<input type="text" class="input_text" name="name" id="name"/>
    				</label>
    				<label>
    					<textarea class="message" name="feedback" id="feedback"></textarea>
    				</label>
    				<input type="button" class="button" value="Submit" />
    			</form>
    		</div>
    	</div>
    </div>
    <!---page-wrap-end--->
    

    Je trochu otázkou, co nechat v šabloně a co zapisovat jako součást textu v administraci. Nejde se úplně vyhnout tomu, aby přímo v textu stránky nebyly žádné html značky jako defince bloků pomocí DIV, různá nastavení tříd a stylů apod.

  2. Ve složce h00042 vytvož podsložku Homepage. každému modulu se totiž ukládají jeho šablony do zvlášť složky. Ta se jmenuje stejně, jako odpovídající modul. Výpis domovské stránky má na starosti modul Homepage, tak proto ten název složky.

  3. V podsložce Homepage vytvoř nový soubor s názvem default.latte. Jeho obsahem bude:

    {block content}
    <div class="clear"></div>
    <div class="banner-wrap">
    	<div class="banner"> <img src="{$basePath}/{$theme}/images/banner1.jpg" alt="banner" /> </div>
    </div>
    <!---banner--->
    <div class="page-wrap">
    	<div class="wrap">
    		{$page->text()|noescape|components}
    		{if $user->isLoggedIn() && $page->secretText() > ''}
    			{$page->secretText()|noescape|components}
    		{/if}
    	</div>
    	<!---panel-end--->
    	<div class="enquiry-wrap">
    		<div class="title">
    			<h1> Kontaktní formulář</h1>
    		</div>
    		<div class="enquiry-form">
    			{control contactForm}
    		</div>
    	</div>
    </div>
    {/block}
    

    Kdybys potřeboval pomoct se syntaxí Latte, mrkni na její nápovědu. Upozorním ve výpisu výše na řádek č. 4. Tam se vkládá obrázek banner1.jpg. To není úplně dobré řešení, protože jeho změna vyžeduje ruční nahrání obrázku přes FTP do konkrétní složky. Ale jako jednoduchý příklad vytvoření šablony to prosím pro tentokrát přehlédni.

  4. všimni si ve výpisy výše řádku 20 s makrem {control contactForm}. Jak možná tušíš, to způsobí vypsání kontaktního formuláře. Je to další modul a tak i on může mít vlastní šablonu. Pokud tvoříš svou šablonu, nemusíš vytvářet všechny šablony pro jednotlivé moduly. Pokud RS::RS zjistí, že nemáš šablonu třeba pro kontaktní formulář, použije výchozí šablonu. Ale když už jsme v tom, tak

  5. vytvoř soubor s názvem ContactControl.latte a ulož jej do složky h00042. Nebude v žádné podsložce, protože kontaktní formulář můžeš zobrazit kdekoli a ne jen na hlavní stránce. Jeho obsahem bude:

    <form n:name="contactForm">
    	<label n:name="name">
    		<input n:name="name" class="input_text">
    	</label>
    	<label n:name="email">
    		<input n:name="email" class="input_text">
    	</label>
    	<label n:name="subject">
    		<input n:name="subject" class="input_text">
    	</label>
    	<label>
    		<textarea class="message" n:name="message"></textarea>
    	</label>
    	<input n:name="process" class="button">
    </form>
    

    Všimni si, že formulář vypadá naprosto stejně jako v půhodní html šabloně. Jen místo name= je tam n:name=. To je důležité, aby formulář správně fungoval.

Už nám na hlavní stránce zbývá jen vypsat patičku. To bude předmětem dalšího dílu.

 

Komentáře (0)

Přidej svůj komentář

O mně

Jmenuji se Rudolf Svátek. Jsem lektor výpočetní techniky a PHP programátor. Stavím firemní stránky a eshopy. Aby se mi to dělalo pohodlně, vytvořil jsem redakční systém RS::RS, který ti tu nabízím k použití.

Rychlý kontakt na mně

  • Rudolf Svátek
  • Telefon:
    +420 777 828 353
  • Email:
  • Adresa:
    Josefa Hory 1097/5
    736 01 Havířov
    ČR



Tyto stránky používají Cookies. Používáním stránek s tím souhlasíte Další informace