TWeak 5 Odesláno: 5. Březen, 2010 Share Odesláno: 5. Březen, 2010 Základní Pojmy * PHP Funkce Funkce v PHP se používají na scripty, které bude soubor obsahovat vícekrát. Nás bude dále zajímat jen text v „zakroucených závorkách“ ( {} ). function nazev_funkce ($promenna_funkce) {obsah_funkce} * Proměnné Proměnné se na začátku souboru definují nějakou hodnotou, kterou následně pomocí proměnné můžeme zapsat kamkoli do kódu. Poznáme je podle dolaru ( $ ) a nějakého textu. $nazev_promenne = „hodnota_promenne“; * Podmínky Co dělají podmínky snad vysvětlovat nemusím… Fungují na principu: Jestli se splní podmínka, proveď tohle. Pokud ne, udělej toto. if (podmínka) {příkaz, pokud je podmínka splněná} else {příkaz který se provede, pokud se podmínka nesplní} * Header = Hlavička Footer = Patička Strůktura theme.php Struktura Kde najdu header? A jak upravím patičku? Na jednoduchou otázku, jednoduchá odpověd. Každý theme.php má na začátku definované proměnné, se kterými dále pracuje. Jsou to: * $body_text = základní barva textu * $body_bg = základní barva pozadí * $theme_width = šířka stránky * $theme_width_l = šířka levého panelu * $theme_width_r = šířka pravého panelu Dále je struktura: hlavička, tělo stránky, patička, struktura novinek (news.php), struktura článku (articles.php), opentable, closetable, openside, closeside, opensidex, closesidex, trablebreak. Probereme si je všechny. Header Nachází se v function ! function render_header ($header_content) { … } Zde začíná tabulka celého webu, která obsahuje proměnnou na šířku stránky. Tato tabulka začíná () ve footeru. V této základní tabulce jsou 3 další. Ta první je právě tabulka, ve které je header. Můžeme do ní další tabulky přidávat, nebo ji klidně celou smazat. Body Tělo stránky v theme.php nemá žádnou funkci. Je mezi Headerem a Footerem. V theme.php není definován. Footer Najdeme ho v function ! funkcion render_footer ($license = false) { … } Zde končí naše základní tabulka celého webu. Je zde PHP-Fusion copyright a počítadlo přístupů (counter). Pokud ho chcete odstranit, nezapomeňte odstranit vše, co k němu patří, tedy všechny uvozovky, závorky atp. Struktůra novinek a článkú Jsou hned pod footerem v function render_news ($subject, $news, $info) { … } a function render_article ($subject, $article, $info) { … } Tyto funkce definují tabulku, ve které jsou novinky a články. Jsou to 3 řádky: nadpis, obsah novinky či článku a informace o něm. Informace obsahují standardně kolik je u něj komentářů, kdo novinku nebo článek přidal a pod. Rovněž zde všechno můžeme upravit. Můžeme si přidat nový řádek, například s odkazy na přidání článku na linkuj.cz a jemu podobné. Opentable a Closetable Nachází se hned pod definováním novinek a článků v function opentable ($title) { … } a function closetable () { … } Tato funkce se používá na otevření a zavření tabulky u obsahových panelů stránky (news.php, articles.php atp.). Je to skoro to samé jako openside a closeside, ale s tím rozdílem, že openside má jiný css styl v prvním řádku tabulky (proto se někdy stane, že když si dáte nějaký panel doprostřed stránky, má jiné pozadí pod nadpisem než nadpisy novinek). Pokud chcete vložit nový panel doprostřed stránky, nahraďte funkci openside funkcí opentable. Openside a Closeside Hned pod closetable v function openside ($title) { … } a function closeside () { … } Ve funkci openside se otevírá tabulka ( openside(„name“); echo „content“; closeside(); * openside otevírá tabulku a nový řádek na název panelu * name s následně zapíše do databáze, do které přijde požadavek na vypsaní názvu panelu. Tento název se na stránce uloží do proměnné $title. * do uvozovek v echu si napíšeme, co chceme, aby bylo napsáno v panelu. Tento text je ve výstupu standardní obsah jednoho řádku tabulky. * closeside tabulku zavírá () S tímto vším se dá experimentovat. Před name si například můžeme vložit obrázek. Pokud chceme, aby se obrázek měnil automaticky podle názvu panelu, tak postačí opět jednoduchá proměnná: . Pokud pojmenujeme obrázek stejně jako panel, pak všechno půjde. Opensidex a Closesidex Hned pod closeside v function opensidex ($title) { … } a function closesidex () { … } Je to naprosto to samé jako openside a closeside až na dynamičnost. Opensidex má napravo tlačítko, které po zmáčknutí způsobí zatáhnutí panelu. Opět si s tímto můžeme pohrát. Buňka s mačkacím tlačítkem: „.panelbutton($state,$boxname).“ Proměnná $state napovídá, v jakém stavu je panel (zatažený nebo vytažený, on nebo off). $boxname je název panelu. Všimněte si, že toto je také funkce. funkce s názvem panelbutton. Její definici můžeme naleznout v /includes/theme_functions_include.php. Tablebreak Poslední definovaná funkce. Na tomto není co zkoumat. Jednoduše zavře tabulku. Já se s tím zatím v praxi nesetkal. DIV a CSS Mnoho lidí začíná být s tabulkami nespokojená a přechází k DIV přes CSS. Ani v PHP-Fusion tohle není problém, avšak nikdy neodstraníme všechny tabulky. Pokud se do tohoto chcete pustit, tak stačí vytvořit jeden velký DIV na web, který začne v headeru a skončí v footeru. samotný header a footer si můžete udělat dalšími DIVy. Já doporučuji udělat si celou stránku v DIVu jen tak na nečisto, zatím nic nekouskovat a nakonec so vše jen poskládat do theme.php. Zatažení celé strany webu Když jde zatáhnout jeden panel, proč ne rovnou celá strana webu? Jestli například chcete na web umisťovat široké obrázky, určitě se bude hodit mznost roztáhnout obsahovou část. Ale jak to provést. Já si jednoduše na celém webu udělal jen jeden obrovský panel, do kterého jsem dával další panely. Kód na zatahovací tlačítko („.panelbutton($state,$boxname).“) jsem si vložil do headeru a nyní mi vše šlape. Pozor! Aby vám toto fungovalo, musíte mít šířku obsahové části na 100%. Jinak se automaticky neroztáhne. Pouze pro členy a Administratory Chcete si vložit do headeru tlačítko Registrovat!, ale chcete, aby ho viděli jen neregistrovaní? To se dá vyřešit jednoduchou podmínou. Ta zní: if (iMEMBER) {věc, která se napíše, pokud je dotyčný registrovaný} else {a toto se provede, pokud dotyčný registrovaný není} takže pro úplnost dokončím můj příklad s registračním tlačítkem: if (iMEMBER) {echo “”;} else {echo „“;} Na stránce se poté členovi nic neukáže (v echu nic není) a všem ostatním se ukáže obrázek s odkazem na registraci. Toto je asi tak vše. Tak ja to jdu kutit a vy pozorně čtěte Zdroj: Google.Com => PHP Fusion Theme.php (Hledejte) Link to comment Share on other sites More sharing options...
Guest Frodo Odesláno: 6. Březen, 2010 Share Odesláno: 6. Březen, 2010 Good TuT!!! :thumbup: Link to comment Share on other sites More sharing options...
Patrony 0 Odesláno: 6. Březen, 2010 Share Odesláno: 6. Březen, 2010 Pěkný, taky bych to tu mohl napsat z hlavy a 2x víc než tu toho máš. Máš tu jen takovej přehled, teď z toho udělej pořádnej návod, seš jen krůček daleko jinak velmi pěkné, musel jsi to dlouho psát :thumbup: Link to comment Share on other sites More sharing options...
TWeak 5 Odesláno: 6. Březen, 2010 Author Share Odesláno: 6. Březen, 2010 Patrony jak jsem pochopil tvůj koment, tak to znamená že ty je očividně umíš. Mohl bys přispět. Link to comment Share on other sites More sharing options...
Guest Frodo Odesláno: 28. Březen, 2010 Share Odesláno: 28. Březen, 2010 Btw kde se nastavuje třeba Písmo v menu? Vim ze v css souboru ale nevim co je přesně menu Link to comment Share on other sites More sharing options...
Guest D3luX Odesláno: 28. Březen, 2010 Share Odesláno: 28. Březen, 2010 Nice tut musim povedat Link to comment Share on other sites More sharing options...
_Killer_ 1 Odesláno: 28. Březen, 2010 Share Odesláno: 28. Březen, 2010 pekne ale bv php fusion som l*ma lepsie my ide phpbb Link to comment Share on other sites More sharing options...
Guest Odesláno: 28. Březen, 2010 Share Odesláno: 28. Březen, 2010 killer":1x9ir88p]pekne ale bv php fusion som l*ma lepsie my ide phpbb ale phpbb je forum ne web Link to comment Share on other sites More sharing options...
killbill 21 Odesláno: 28. Březen, 2010 Share Odesláno: 28. Březen, 2010 Navod je obsahlej velice se ti poved musel si fakt hodne dlouho psat Link to comment Share on other sites More sharing options...
biohazard545 0 Odesláno: 28. Březen, 2010 Share Odesláno: 28. Březen, 2010 Cashis_CZ díky ze si to napísal , presne toto som hladal ... Link to comment Share on other sites More sharing options...
Recommended Posts