Navigacija

Vartotojų tinkle

Prisijungusių svečių: 63
Prisijungusių narių: 0
Prisijungusių narių nėra

Registruoti nariai: 25,957
Naujausias narys: keistuole

Naujausi straipsniai

Paskutiniai nariai

Nepas22:23:56
keistuole 2 savaitės
Gizmis 3 savaitės
Reikalas 3 savaitės
Rytis13 savaitės
MaFetas17 savaitės
ozzWANTED18 savaitės
saulyzas20 savaitės
TOMIJUS21 savaitės
Jaunelis37 savaitės
lanis37 savaitės
And2s38 savaitės
Memento Mori43 savaitės
Quwqkibor45 savaitės
asirija49 savaitės
tomeem51 savaitės
weberiz54 savaitės
mRokass57 savaitės
kartoonas58 savaitės
grunskiz61 savaitės

Informacija:


OS: Unknown
Naršyklė: Nežinoma
IP: 3.143.9.5
Naujienų: 529
Straipsnių: 235
Temų: 52,589
Postų: 522,539
Postų pask. parą: 0
Shout'ų pask. parą: 0
P.S.C. pask. parą: 0
Nuorodų kataloge: 13

Lankomumo Statistika

Peržiūrų šiandien: 22

Iš viso peržiūrų: 22948724

Prisijungti

REGISTRUOTIS
Nario vardas

Slaptažodis



Pamiršai slaptažodį?
Paprašyk naujo

Aktyvuoti save

Šaukykla

Jei norite rašyti žinutes, turite prisijungti.

Nepas
2025 Bal. 9 17:04:13
drovus

Nepas
2025 Bal. 9 17:04:08
drovus

Gizmis
2025 Kov. 15 14:03:50
OMG, smagu matyt sita puslapi veikianti

ozzWANTED
2024 Lap. 30 15:11:14
Taip, vis dar up šypsosi

MaFetas
2024 Lap. 13 22:11:57
hey how, geras dar veikiantis saitas?

Šaukyklos archyvas

Apklausa

Ar esate patenkinti lietuviško vertimo kokybe?

Taip!

Taip, bet yra ką taisyti (parašysiu komentaruose)

Ne

Norėdamas balsuoti turite prisijungti.
Archyvas
Reklama 400x60
Navigacijos turbinimas
Sveiki, nesenai pasidariau, ir noriu pasidalinti patirtimi, kaip padaryti navigaciją, ar dar kur nors galima pritaikyti, kad pvz esate naujienose, jums navigacijoje Naujienos bus kitokios spalvos, ar dar kito. Dėmesio šiame straipsnyje parodysiu kaip dirbti, kai esate forume, kokioje nors kategorijoje ir kt.



Straipsnis susideda iš keturių etapų:




  • 1 ETAPAS: CSS PARUOŠIMAS


  • 2 ETAPAS: PHP KODO PARUOŠIMAS


  • 3 ETAPAS: KODO IŠVEDIMAS


  • 4 ETAPAS: APIBENDRINIMAS





  • Nieko nelaukę ir pradedam ;]




  • 1 ETAPAS: CSS PARUOŠIMAS





  • Geriausia yra dirbti su klasėmis, css faile aprašyti 3 klases, mano atveju:



    a.nav

    a:hover.nav

    .uzvaryta





    Testavimo tikslams, kad būtų geriau suprantama aprašau klases jums



    a.nav {

       font-family: Tahoma;

       color: #fff;

       text-decoration: none;

    }



    a:hover.nav {

       font-family: Tahoma;

       color: #000;

       text-decoration: none;

    }



    .uzvaryta {

       font-family: Tahoma;

       color: #000;

       text-decoration: none;

    }





    Viskas atrodys taip, nuoroda bus balta, užvarius pelę pajuoduos, ir kai bus aktyvi taip pat bus juoda.




  • 2 ETAPAS: PHP KODO PARUOŠIMAS





  • Toliau nesvarbu ar dirbsite theme.php faile ar atskirai includintam, render_header() arba includintos navigacijos faile įterpiam šitokias eilutes



    // 1 etapas, forumo nuorodos gavimas

    $PHP_SELF = cleanurl($_SERVER['PHP_SELF']);

    $nuoroda = explode("/",$PHP_SELF);

    // 2 etapas, nuorodos gavimas su ?id=x

    $URI = cleanurl($_SERVER['REQUEST_URI']);

    $nuoroda1 = explode("/",$URI);

    // 3 etapas, gaunam tikslia infusion nuoroda

    $infusion = $nuoroda[1]."/".$nuoroda[2]."/".$nuoroda[3];



    ĮSPĖJIMAS! Jeigu jūsų saitas stovi ne public_html aplanke, o poaplankyje, pvz public_html/fusion/ tada:

    $infusion = $nuoroda[1]."/".$nuoroda[2]."/".$nuoroda[3];



    keiskite į

    $infusion = $nuoroda[2]."/".$nuoroda[3]."/".$nuoroda[4];





    Paaiškinimas:

    1 etapu gauname nuorodą, iš kurios vėliau trauksim ar esame forume

    2 etapu gauname nuorodą, su $_GET reikšmėmis, pvz articles.php?cat_id=1 ir t.t.

    3 etapu gauname tikslią modifikacijos(įskiepio) nuorodą, pvz infusion/CS_demos_panel/CS_demos.php



    Sekantis etapas, gauname tikslią nuorodą



    if(FUSION_SELF == 'news.php') { $class[1] = "uzvaryta"; } else { $class[1] = "nav"; }



    Redagavimas:

    news.php - galite keisti į downloads.php, articles.php, contact.php ir t.t.

    uzvaryta - aktyvios nuorodos klasė, kuri yra aprašyta css faile.

    nav - neaktyvios nuorodos klasė, kuri yra aprašyta css faile.



    Šituo kodu nustatoma ar esate naujienose, jeigu taip $class[1] priskiriama "uzvaryta" reikšmę, kitu atveju paprasta "nav" reikšmė.

    Apie $class[]; paaiškinsiu toliau.



    if ($nuoroda[1] == "forum") { $class[2] = "uzvaryta"; } else { $class[2] = "nav"; }



    Redagavimas:

    forum - galite keisti į administration, forum, infusions, į direktorijas.

    uzvaryta - aktyvios nuorodos klasė, kuri yra aprašyta css faile.

    nav - neaktyvios nuorodos klasė, kuri yra aprašyta css faile.



    Šituo kodu nustatoma ar esate forume, jeigu taip $class[2] priskiriama "uzvaryta" reikšmę, kitu atveju paprasta "nav" reikšmė.

    Galima nustatyti kurioje direktorijoje esate.

    ĮSPĖJIMAS! Jeigu jūsų saitas stovi ne public_html aplanke, o poaplankyje, pvz public_html/fusion/ tada $nuoroda[1] pakeiskite į $nuoroda[2] !!!



    if ($nuoroda1[1] == "news_cats.php?cat_id=0") { $class[3] = "uzvaryta"; } else { $class[3] = "nav"; }



    Redagavimas:

    news_cats.php?cat_id=0 - galite keisti į articles.php?cat_id=X, downloads.php?cat_id=X, ir t.t., nurodyti tikslią nuorodą.

    uzvaryta - aktyvios nuorodos klasė, kuri yra aprašyta css faile.

    nav - neaktyvios nuorodos klasė, kuri yra aprašyta css faile.



    Nustatome tikslią nuorodą, iki kategorijos ar straipsnio, kuriam pritaikome sąlyginį sakinį, šiuo atveju įėjus į news_cats.php?cat_id=0 nuorodai bus priskirta uzvaryta klasė.



    if ($infusion == "infusions/CS_demos_panel/CS_demos.php") { $class[4] = "uzvaryta"; } else { $class[4] = "nav"; }



    Redagavimas:

    infusions/CS_demos_panel/CS_demos.php - galite keisti į infusions/JUSU_INFUSION/JUSU_INFUSION.php

    uzvaryta - aktyvios nuorodos klasė, kuri yra aprašyta css faile.

    nav - neaktyvios nuorodos klasė, kuri yra aprašyta css faile.



    Nustatome tikslią įskiepio nuorodą, jeigu ji sutampa su aktyvia, tai priskiriama uzvaryta klasė.



    Kai dar ką nors sugalvosiu papildysiu šią skiltį.



    $class[]; paaiškinimas

    Kiekvienai nuorodai priskiriame atskirą $class[] reikšmę, pvz news.php priskiriam $class[1], downloads.php $class[2] ir taip toliau, ir kodo išvedime nesumaišykite $class[] reikšmių, kokias priskyrėte tokias ir išveskite.








  • 3 ETAPAS: KODO IŠVEDIMAS







  • Aprašėme kodą, tai ir išveskime jį į ekraną!



    Aš naudosiu includintą failą, kuriame yra išvedami rezultatai, toliau pridėsiu pilną kodą:



    <table align='left' cellspacing='0' cellpadding='0' width='350' border='0'>

    <tr>

    <td>

    <span style='padding-right: 30px;'><a href='".BASEDIR."news.php' class='$class[1]'>Pradinis</a></span>

    <span style='padding-right: 30px;'><a href='".FORUM."index.php' class='$class[2]'>Forumas</a></span>

    <span style='padding-right: 30px;'><a href='".BASEDIR."news_cats.php?cat_id=2' class='$class[3]'>Albumai</a></span>

    <a href='".INFUSIONS."CS_demos_panel/CS_demos.php' class='$class[4]'>CS demos</a>

    </td>

    </tr>

    </table>





    Paaiškinimas:

    Jeigu esate naujienose, Pradinis nuorodai priskiraima uzvaryta klasė, kitu atveju nav klasė.

    Jeigu esate forume, Forumas nuorodai priskiriama uzvaryta klasė, kitu atveju nav klasė.

    Jeigu esate naujienų kategorijoje, Albumai nuorodai priskiriama uzvaryta klasė, kitu atveju nav klasė.

    Jeigu esate įskiepyje, CS demos nuorodai priskiriama uzvaryta klasė, kitu atveju nav klasė.



    Nesumaišykite $class[]; reikšmių !



    GALUTINIS navigacija.php kodas



    <?php



    // forumo nuorodos gavimas

    $PHP_SELF = cleanurl($_SERVER['PHP_SELF']);

    $nuoroda = explode("/",$PHP_SELF);

    // nuorodos gavimas su ?id=x

    $URI = cleanurl($_SERVER['REQUEST_URI']);

    $nuoroda1 = explode("/",$URI);

    // gaunam tikslia infusion nuoroda

    $infusion = $nuoroda[1]."/".$nuoroda[2]."/".$nuoroda[3];





    if(FUSION_SELF == 'news.php') { $class[1] = "uzvaryta"; } else { $class[1] = "nav"; }

    if ($nuoroda[1] == "forum") { $class[2] = "uzvaryta"; } else { $class[2] = "nav"; }

    if ($nuoroda1[1] == "news_cats.php?cat_id=2") { $class[3] = "uzvaryta"; } else { $class[3] = "nav"; }

    if ($infusion == "infusions/CS_demos_panel/CS_demos.php") { $class[4] = "uzvaryta"; } else { $class[4] = "nav"; }

    echo "<table align='left' cellspacing='0' cellpadding='0' width='350' border='0'>

    <tr>

    <td>

    <span style='padding-right: 30px;'><a href='".BASEDIR."news.php' class='$class[1]'>Pradinis</a></span>

    <span style='padding-right: 30px;'><a href='".FORUM."index.php' class='$class[2]'>Forumas</a></span>

    <span style='padding-right: 30px;'><a href='".BASEDIR."news_cats.php?cat_id=2' class='$class[3]'>Albumai</a></span>

    <a href='".INFUSIONS."CS_demos_panel/CS_demos.php' class='$class[4]'>CS demos</a>

    </td>

    </tr>

    </table>";



    ?>





    Includinkit į theme.php render_header dalį ir testuokite laisvai :)



    O kam visgi neaišku, ką aš čia dariau, įdėjau paveikslėlį kuriame pavaizduota navigacija, kai esate forume











    Galbūt pasidarė aiškiau :P






  • 4 ETAPAS: APIBENDRINIMAS







  • Šiuo straipsniu kuo aiškiau norėjau aprašyti nuorodų gavimo kodus, daugeliui atvejų, kadangi ne kartą esu matęs, ir pačiam reikėjo tokio dalyko, kaip sukurti navigaciją, kad atvaizduotų ir esant forume ir kitur, tačiau nepavykdavo, manau kils neaiškumų, tai kas neaišku rašykite į komentarus :) +10 jei ne gaila, ačiū, kad skaitėte, labai nesmerkite, tai mano pirmasis straipsnis, linksmų artėjančių švenčių!



    ©Eizo0x, 2009-12-20

    Straipsnio informacija

    Autorius
    maxas66
    Parašymo data
    2009 gruodžio 20 12:12:56
    Komentarų
    5
    Skaityta
    2059
    Spausdinti Spausdinti
    Komentarai
    iGolf 2009 gruodžio 20 12:12:14
    mldcmerkia akį;)
    kanativas 2009 gruodžio 20 19:12:51
    Geras, išsamus ir turbūt net visiškai "žaliam" suprantamas straipsnis/pamoka.
    Nevo 2009 gruodžio 20 23:12:24
    Šaunuolinas akinanti šypsen
    maxas66 2009 gruodžio 21 16:12:49
    Dėkui, kad komentuojat šypsosi Laikui bėgant parašysiu daugiau straipsnių šypsosi
    tevas 2010 birželio 9 17:06:40
    Šaunuolis mldc.merkia akį
    Rašyti komentarą
    Prisijunkite, norėdami parašyti komentarą.
    Reitingai
    Balsuoti gali tik nariai.

    Prašome prisijungti arba prisiregistruoti.

    Nėra reitingų.