2. 5. 2014

WAP stránky 3 - karty, cache

Pri prezeraní WAP stránok na mobile je jasné, že viaceré veci zhoršujú pohodlie prezerania stránok
  • zadávanie dlhej adresy
  • zadávanie textu do formulárov
  • dlhá odozva od odkliknutia linky po načítanie

Pre rýchle zadávanie adries je vhodné udržiavať adresu stránky (domény) vrátane podadresárov s čo najkratšími názvami.
Zadávaniu textu do formulárov sa dá vyhnúť predvypĺňaním políčok ktoré sú uhádnuteľné, alebo využívaním výberu z možností (pulldown menu).

Dlhú odozvu však väčšinou nieje možné riešit (väčšinu času potrebuje sieť operátora od telefónu, cez GSM sieť a jeho wml gateway).




Karty


WAP bol pôvodne dizajnovaný pre telefóny s čiernobielym displejom a malým rozlíšením (tak 90x60 pixelov, resp 3 riadky textu s dĺžkou asi 15 znakov). Pre spätnú kompatibilitu je dobré držať veľkosť jednej stránky pod 1,5KB.
Vhodné je preto kôli prehľadnosti a rýchlosti navigácie stránky vytvoriť menu, kde sa návštevník na jednej stránke rozhodne čo ho zaujíma a preklikne sa na inú časť stránky.
Aby navigácia po statickej časti stránky bola dostatočne rýchla, vznikli karty (wml tagy <CARD>).

Karty umožňujú vrámci jedného načítania stránky načítať viaceré linkovateľné stránky naraz. Možno napríklad vytvoriť úvodné menu spolu s časťou kontaktou alebo "o firme" v jednej stránke.

<wml>
<card id="b" title="MENU home">
<p align="center">
<a href="c">vypocet ceny</a><br />
<a href="#a">o firme</a><br />
</p></card>

<card id="a" title="O firme">
<p>
Sidlo firmy:
Bratislavska 234
123 04 Senec
0903111222
</p></card>
</wml>


Pri prehliadaní tak prebehne jedno načítanie pre zobrazenie menu a následný preklik na kontakty bude okamžitý a bez zdržania.

Každá stránka wml obsahuje aspoň jednu kartu, ktorá je zároveň hlavná. Ak je kariet viac, zobrazená je prvá v poradí a následne sa na iné linkuje cez mriežku a ID karty. Rovnako možno skočiť priamo na danú kartu stránky zadaním mriežky a ID na konci adresy.
Karty sú s výhodou použiteľné tiež pre rôzne animácie, informácie pred zobrazením stránky, alebo "help" sekcie.

<wml>
<card id="splash" title="splash">
<onevent type="ontimer">
<go href="#menu"/>
</onevent>
<timer value="50"/>
<p>Vitajte na stránke firmy ABC. <a href="#menu">Vstúp</a></p>
</card>

<card id="menu" title="Firma ABC">
<p>Vyberte si z menu:
...
</p>

</card>
</wml>


Príklad ukazuje použitie "splash" obrazovky, uvítanie sa automaticky prepne po 5 sekundách na stránku menu. Možno to však urýchliť kliknutím na linku "Vstúp".


Cache


Pre rýchlosť odozvy stránky je dôležité správne nastavenie cache a u telefónov je toto nastavenie podstatne dôležitejšie. Je potrebné rátať s preklikávaním sa cez stromovú štruktúru stránky tam a nazad, kde pri správne nastavenej cache nebude zbytočne načítaná rovnaká stránka ako pred minútou. Pritom však pri ďalšej návšteve o pol hodiny budú stránky s dynamickým obsahom vygenerované znova.

Cache sa nastavuje vo wml stránke v sekcii head:

<wml>
<head>
<meta http-equiv="Cache-Control" content="max-age=1800"/>
</head>


Cache tiež možno nastaviť priamo v hlavičke posielanej stránky cez PHP príkaz:
<?php
header("Content-type: text/vnd.wap.wml\n");
header("Cache-Control: max-age=1800\n\n");
print('<?xml version="1.0" encoding="utf-8" ?>');
?>

(pozor, musí byť úplne na začiatku php súboru, bez prázdnych riadkov)

Pre nastavenie cache u statických obrázkov (alebo iných súborov) možno použiť funkcionalitu APACHE web servera, kedy sa v danom adresári s obrázkami vytvorí skrytý súbor .htaccess s obsahom:

# 1 WEEK
<FilesMatch "\.(jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>



Aby toto nastavenie fungovalo, je potrebné mať na hostingu (php.ini) povolené mod_expires a mod_headers moduly (kontrola cez phpinfo() ).

Žiadne komentáre:

Zverejnenie komentára