![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie.. Coraz bardziej zagłębiam się w php i ostatnio czytałem dużo o szablonach, itp.
Postanowiłem, że zacznę tworzyć własnego cms (sztuka dla sztuki, żeby się czegoś nauczyć, nabrać doświadczenia). Odpowiednio przygotuję układ katalogów i plików. Chodzi mi teraz po głowie rozwiązanie pewnego problemu. Załóżmy, że przygotuję wstępnie 3 layouty i chciałbym, żeby użytkownik mógł dodwać swoje albo zmieniać na 1 z 3 dostępnych standardowych. Zakładam, że gdzieś w pliku konfiguracyjnym jest napisane, że domyślnie łądowany jest layout numer 1. I co dalej? Piszemy jakąś funkcję, która załąduje ten lay? Ale jak? W jakimś katalogu (np. public_html/layout) znajdują się pliki graficzne, któe wchodzą w skład laya? Jak to ugryźć tak od strony teoretycznej - żebym załapał zasadę.. Ps. Tak naprawdę to po co się stosuje szablony? Po co ludzie piszą własne parsery? Przecież traci się na wydajności (odwołuje się do artykułu na http://webcity.pl - "Budujemy engine") |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 8.01.2006 Skąd: Nowa Sól Ostrzeżenie: (0%) ![]() ![]() |
Cytat Zakładam, że gdzieś w pliku konfiguracyjnym jest napisane, że domyślnie łądowany jest layout numer 1. I co dalej? Piszemy jakąś funkcję, która załąduje ten lay? Ale jak? W jakimś katalogu (np. public_html/layout) znajdują się pliki graficzne, któe wchodzą w skład laya? No tak, załóżmy że masz katalog templates/ i tam masz kolejne katalogi w których są szablony. Teraz dajmy na to że w pliku konfiguracyjnym masz zapisane nazwy szablonów i ścieżki do nich. I teraz każdy użytkownik serwisu ma zapisane w bazie danych lay którego używa. Wystarczy że napiszesz funkcje sprawdzającą jaki to lay i ppodmieniasz ścieżkę domyślnego laya na tek który użuwa dany user. Przykładowo dla pasera szablonów $lay = ... ;pobierasz z bazy nazwe szablonu $tpl->setDir( 'templates/$lay' ); ... |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 19:48 |