![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 616 Pomógł: 12 Dołączył: 16.07.2006 Skąd: : getCity ( ); Ostrzeżenie: (0%) ![]() ![]() |
witam
mam problem jak rozwiązać następującą kwestię: chcę zrobic taki znacznk: {$nazwa_funkcji: argument} i zeby po wpisaniu w szablon tego, wywołała się funkcja nazwa_funkcji(argument); nie wiem jak to zrobic -------------------- Jeśli my czegoś nie zrobimy, zrobią to za nas inni
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 18 Dołączył: 12.04.2009 Skąd: Rypin Ostrzeżenie: (0%) ![]() ![]() |
Nie napisałeś jaki system szablonów masz na myśli, w smarty takie coś nie jest chyba możliwe...
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 616 Pomógł: 12 Dołączył: 16.07.2006 Skąd: : getCity ( ); Ostrzeżenie: (0%) ![]() ![]() |
jest to taki system szablonów
http://wklej.org/hash/119c63e013/ i teraz mi chodzi o coś innego: miałem na stronie funkcję: <? panele('prawa'); ?> i postanowiłem to zamienić na {$panele.prawa} w funkcji panele('prawa'); mam include do innego pliku i on też może zawierać includy do innych choć nie musi problem polega na tym, że ta funkcja tzn {$panele.prawa) wykonuje się pierwsza, na samym początku, a nie w miejscu, w którym została wstawiona jak temu zaradzić? -------------------- Jeśli my czegoś nie zrobimy, zrobią to za nas inni
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
I po co niepotrzebnie drążysz niepotrzebnie w taką ułomność, jaką jest zamiana <?, ?> na {, }? Jedynie niepotrzebnie zmniejszasz czytelność, elastyczność, wydajność aplikacji, nie zyskując przy tym kompletnie niczego.
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 616 Pomógł: 12 Dołączył: 16.07.2006 Skąd: : getCity ( ); Ostrzeżenie: (0%) ![]() ![]() |
no dobra ale nie takie było pytanie
-------------------- Jeśli my czegoś nie zrobimy, zrobią to za nas inni
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
Funkcje? W TAKIM systemie szablonów? Zapomnij. Porządne systemy szablonów działają na zupełnie innej zasadzie. Tutaj nawet jak Ci się po wielu trudach i walkach uda osiągnąć taki efekt, możesz powiedzieć "dobranoc" wydajności, prostocie i pewnie też niezawodności. Zainstaluj sobie coś normalnego w stylu OPT czy PHPTAL, bo czegoś takiego, co pokazałeś, to nie ma sensu nawet używać. Rozwiążesz jeden problem z funkcjami, za pięć minut znów się pojawisz z kolejnym pytaniem o następną głupotę.
Crozin -> jakieś argumenty czy też jesteś jednym z tych, którzy zawiedli się na archaicznym Smartym (który faktycznie można o kant rozbić) i teraz dla zasady jadą po wszystkich systemach szablonów nawet bez rzucenia okiem lub wygłaszając brednie typu "Zend_View to nie system szablonów" lub "Porównanie systemu szablonów XXX z frameworkiem YYY"? Ten post edytował Zyx 20.12.2009, 21:54:04 -------------------- Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
@Zyx: O Smarty nie ma nawet co dyskutować. Nieco świeższe systemy są nieporównywalnie lepsze (z OPT się nawet swego czasu bawiłem i nie powiem - nie jest zły, ale nie miałem okazji go wykorzystać z jakimś normalnym projekcie). Nie napisałem też, żeby pod żadnym pozorem nie korzystać z takich narzędzi - bo jeżeli komuś ułatwiają i przyśpieszają pracę to jak najbardziej powinien z nich korzystać.
Po prostu jak widzę taki "system szablonów" to profilaktycznie wolę autora odwieść od zamiaru wykorzystania go. ![]() |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 616 Pomógł: 12 Dołączył: 16.07.2006 Skąd: : getCity ( ); Ostrzeżenie: (0%) ![]() ![]() |
no dobra, ale jak byście to zrobili??
-------------------- Jeśli my czegoś nie zrobimy, zrobią to za nas inni
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Normalnie, to co ma się wyświetlać w szablonie dajesz w {} i wszystko. Po co tworzyć kolejny pseudo-język, którego nikt nie będzie umiał wykorzystać nawet jak znajdzie się ktoś na tyle szalony, by tego użyć w swoim projekcie. Wyjścia masz dwa:
1. Używasz znanego systemu tak, aby każdy mógł go bez problemu obsłużyć (np. smarty), gdzie jest support i dokumentacja 2. Używasz swojego systemu, ale PROSTEGO, ja np. używam tylko {zmienna} i jakoś sobie radzę, wydajność też na pewno dzięki temu jest lepsza |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
@Pilsner: i w jaki niby sposob wyswietlasz cos w stylu: jezeli uzytkownik jest zalogowany to wyswietl link do profilu, jezeli nie, to "Witaj gosciu"?
PS. Przepraszam za brak polskich znakow, nie mam chwilowo mozliwosci pisania inaczej. |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 616 Pomógł: 12 Dołączył: 16.07.2006 Skąd: : getCity ( ); Ostrzeżenie: (0%) ![]() ![]() |
no dobra tak chcę zrobić, ale jak przypiszę do np {$panele.gora} funkcje panele('gora') to kod wykona się wcześniej bo tam są różne includy
ak to obejść -------------------- Jeśli my czegoś nie zrobimy, zrobią to za nas inni
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Cytat i w jaki niby sposob wyswietlasz cos w stylu: jezeli uzytkownik jest zalogowany to wyswietl link do profilu, jezeli nie, to "Witaj gosciu"? - trochę inwencji, dziele kod HTML na sekcje, np. news przyklejony a zwykły to będą dwa różne templaty i tak całość będzie scalona w jeden monstrualny templat całej strony, jedyna różnica jest taka, że stworzenie PA do tego jest bardziej skomplikowane (bo trzeba templat podzielić na kilka, no ale czego się nie robi dla finalnego użytkownika). Projektując system trzeba mieć na uwadze, że chłopcy z Demokratycznej Republiki Konga, którzy będą stawiać na tym powiedzmy dużo wartościowych serwisów muszą to ogarniać bez problemu, czasem jak człowiek widzi skomplikowane templaty gdzie warstwy ifów i pętle idą w dziesiątki to się zastanawia, czy temu to miało służyć? Potem pojawiają się skórki i spece od nich, bo przecież nikt się nie będzie uczył pseudo-języka, spotykałem się nawet z opiniami, że kiedyś kod HTML był w plikach .php i było łatwo, wiadomo co było trzeba zmienić i w jakim pliku etc.Oczywiście jeśli jest dużo dynamicznego kodu HTML to bez uciekania się do systemów typu SMARTY ani rusz, ale jakiś prosty system artykułów czy dodawania stron? Tak czy inaczej templat trzeba stworzyć i od tego się nie ucieknie. Tak np. standardowe menu rozwijane jest zbudowane (fragment): http://img.org.pl/obrazek/cZGlTxX16u3.html Do tego oczywiście opis każdego elementu i listy zmiennych tak, że nawet kompletny laik to zrozumie a jak dasz pętle + masę warunków w smarty to zaraz zaczną się pytania typu "chciałbym zrobić menu na tabeli, do jakiego specjalisty mam się udać, może być pediatra?" Ten post edytował Pilsener 21.12.2009, 21:58:55 |
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 616 Pomógł: 12 Dołączył: 16.07.2006 Skąd: : getCity ( ); Ostrzeżenie: (0%) ![]() ![]() |
no dobrze, ale ja w dalszym ciągu nie uzyskałem odpowiedzi na moje pytanie
-------------------- Jeśli my czegoś nie zrobimy, zrobią to za nas inni
|
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
A ja widzę, że uzyskałeś:
Cytat Funkcje? W TAKIM systemie szablonów? Zapomnij. Porządne systemy szablonów działają na zupełnie innej zasadzie. Tutaj nawet jak Ci się po wielu trudach i walkach uda osiągnąć taki efekt, możesz powiedzieć "dobranoc" wydajności, prostocie i pewnie też niezawodności. Zainstaluj sobie coś normalnego w stylu OPT czy PHPTAL, bo czegoś takiego, co pokazałeś, to nie ma sensu nawet używać. Rozwiążesz jeden problem z funkcjami, za pięć minut znów się pojawisz z kolejnym pytaniem o następną głupotę. Pilsener -> dlatego powinno się używać systemów, które mają składnię zoptymalizowaną pod czytelność w kodzie HTML ![]() Ten post edytował Zyx 22.12.2009, 08:27:34 -------------------- Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 13:46 |