Pereiti prie turinio

Kokybiškesnis web programavimas - smarty template engine


Rekomenduojami pranešimai

Geras programuotojas yra tas, kuriam ne tas pats, kas dirbs po jo.

 

Jei aš jums papasakosiu, kaip naudojant „Smarty template engine“, tapti nors šiek tiek geresniu savo srities specialistu, ar jums būtų įdomu? Jei taip, tai galime tęsti.

 

Ko jums reikės:

  1. Hostingo, kuriame talpinsite savo svetainę.
  2. „Smarty template engine“ (http://www.smarty.net/download)
  3. 15 min. laiko investicijos, kurios jus padarys pranašesniais prieš kitus.

 

Pradedam:

  1. Atsisiunčiame „Smarty“ biblioteką.
  2. Sukuriame index.php failą.
  3. Sukuriame .htaccess failą.
  4. Sukuriame katalogą templates ir jame failus: header.tpl, main.tpl, footer.tpl, content_success.tpl, content_default.tpl
  5. Sukuriame katalogą pavadinimu „smarty“.
  6. Kataloge „smarty“ sukuriame katalogą „templates_c“ ir jį chmodinam į 777.
  7. Į “smarty” katalogą kopijuojame “libs” katalogą iš parsisiųstos bylos.
  8. .htaccess failo turinys:

RewriteEngine on
RewriteCond %{HTTP_HOST} !www.svetaine.lt [NC]
RewriteRule ^(.*)$ http://www.svetaine.lt/$1 [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ?page=$1&%{QUERY_STRING}

 

Paaškinimas .htaccess failo:

  1. Visad padarau, kad svetainė turėtų www pradžioje.
  2. Jei per url kreipiamasi ne į egzistuojantį failą ar direktoriją, tai visą url užklausą paduodam kintamajam $page

 

Rašome kodą:

<?php
require('smarty/libs/Smarty.class.php');
$smarty = new Smarty();
$smarty->template_dir = 'templates';
$smarty->compile_dir = 'smarty/templates_c';

$url=explode('/',$_GET['page']);
$url=array_filter($url);

if ($url=='pushkis'){
$smarty->assign('content',$smarty ->fetch("content_success.tpl"));
}else{
$smarty->assign('content',$smarty ->fetch("content_default.tpl"));	
}
$smarty->display('main.tpl');
?>

 

Template failų turinys:

header.tpl

<html>
<body>

 

main.tpl

{$content}

 

footer.tpl

</body>
</html>

 

content_success.tpl

Tu šiandien gavau naudingos patirties.

 

content_default.tpl

Čia yra standartinis tekstas

 

Dabar jūs jau galite žengti kitus žingsnius į dar teisingesnį programavimą, nes jūs jau sugebate atskirti loginę programavimo dalį nuo vaizdinės (html). Po metų pertraukos atsidarę savo kodą jūs aiškiai suprasite jį (jei laikysitės bent elementarios kodo rašymo kultūros), nes nebereikės stebėti tokių akibrokštų:

<?
function meniu($data_array){
if (kazkas){
echo „<tr><td>..“
} else{
mysql_query();
}
}
?>

 

Ir pan. siaubukų.

 

Tai turbūt jums nesvarbu, bet šis programavimo stilius man padeda pasiekti efektyvesnių rezultatų.

 

P.S Šiandien IV perpildė mano kantrybę ir naktį migruosiu pas kitą hostingo tiekėją, tai rašyti teko viską word'e, bet turi būti be klaidų. Kitą dieną įmesiu veikiantį pavyzdį, kurį galėsite atsiųsti.

Redagavo pushkis
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...