![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 518 Pomógł: 18 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Zrobilem prosta stronke, ktora obsluguje nastepujace adresy url (wpisywane z palca): www.strona.pl www.strona.pl/en www.strona.pl/en/ www.strona.pl/content/tytul,30,20.htm www.strona.pl/content/en/tytul,30,20.htm pytanie: w jaki sposob moge automatycznie generowac tego typu linki? - interesuje mnie generowanie linkow w dynamicznym kontencie oraz w statycznym layoucie. Najwiekszy problem mam z tym, ze w statycznym layoucie chcialem umiescic 3 flagi ktorymi przelaczalbym jezyki. kazda flaga dodawalaby do urla zmienna lang lub zmieniala jej aktualna wartosc. Routing zrobiony jest na regexach i wyglada tak:
System postawiony jest na najnowszym Zendzie i Smarty3 Tak sie domyslam ze polaczenie ze smarty troche utrudnia gdyz nie moge uzyc $this->url(), ale oczywiscie moge sie mylic czy ktos ma pomysl jak to ugryzc ? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
Niedawno ktoś pytał o to samo. Rozwiązaniem jest plugin dla systemu Smarty.
Zresztą to właśnie Ty o to pytałeś. Uzyskałeś odpowiedź, więc po co drugi taki temat? |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 518 Pomógł: 18 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
juz mowie dlaczego pisze
plugin faktycznie dziala (dzialal) z tym ze na podstawowym routerze i podstawowych routingach. Jesli ja zdefiniowalem sobie nowe routy to zrobil sie klopot bo plugin ich nie rozpoznaje. zrobilem wiec taki myk:
dzieki temu uzyskalem dodatkowa zmienna ktora steruje routingiem. niby jest dobrze i to o co mi chodzilo - ale to dziala tylko na stronie glownej np.: www.strona.com wtedy linki ladnie i poprawnie sie generuja. jesli natomiast jestem juz gdzies glebiej w serwisie np.: www.strona.com/content/en/tytul,30,20.htm to na takiej stronie link wyglada tak: http://www.strona.com/content/en/content/e...tytul,32,30.htm a powinno http://www.strona.com/content/en/totytul,32,30.htm http://www.strona.com/content/en/de a powinno http://www.strona.com/content/de to tak jakby nowy adres byl doklejany do starego i nie wiem jak to obejsc reset mam ustawiony na true wiec niby powinno byc ok ($route->assemble($urlParams, $route_name, $reset, $encode)(IMG:style_emoticons/default/wink.gif) a nie jest... |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
3 parametr url odpowiada za nazwę routera z którego korzystasz i do którego ma przypasować link.
Pokaż jak osadzasz link. może slash na początku w atrybucie href ? Ten post edytował melkorm 5.07.2011, 12:05:55 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 518 Pomógł: 18 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
link w layoucie wstawiam tak:
i jesli ten kink ogladam z poziomu strony glownej (www.strona.co czyli default/index/index/) to link wyglada poprawnie jesli klikne na link i jestem juz na stronie nie glownej (np: www.strona.com/content/tytul,30,20.htm czyli default/content/index/) to link dokleja sie do juz istniejacego i wyglada tak: http://www.strona.com/content/en/content/e...tytul,32,30.htm a powinien tak: http://www.gengine3.studiogif.com/content/...tytul,32,30.htm |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Cytat może slash na początku w atrybucie href ?
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 518 Pomógł: 18 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
powiem tak:
po pierwsze primo nigdy bym sie nie spodziewal ze rozwiazanie moze byc takie proste ;-) po drugie drugi sposob jaki znalazlem to sprawdzenie tablicy $urlParams w pluginie Smarty. Wywalenie zdublowanych kluczy i wartosci daje ten sam efekt. po trzecie jesli ktos bedzie potrzebowal pluga do smarty w wersji obslugujacej rozne routy chetnie sie podziele raz jeszcze dziekuje i pozdrawiam |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 17:47 |