tuskun
26.09.2013, 13:05:34
Witam.
Mam taki problem. Na stronie są przyciski, które zmieniają tło za pomocą jquery. Po przejściu na następną podstronę tło powinno zostać takie samo. Nie wiem jak przekazać na nową stronę informację o tle, które jest wybrane. Strona ma być oparta na Wordpress i nie mogę za bardzo dodać nic do adresu url.
Czy ktoś może mi coś podpowiedzieć?
sowiq
26.09.2013, 14:18:31
Musisz gdzieś zapisać informację o wybranym tle. Ja bym to zrobił za pomocą ciastka. Po kliknięciu przycisku dodajesz w JS ciastko z nazwą/identyfikatorem tła i przy kolejnym odświeżeniu strony sprawdzasz w PHP czy masz coś w tym ciastku i odpowiednio reagujesz.
tuskun
26.09.2013, 14:38:03
Też o tym pomyślałem, ale chciałem jeszcze poszukać innego rozwiązania.
A nie można jakoś przesłać wartości przez POST po przejściu do nowej strony, bez klikania w wysyłacz formularza?
Turson
26.09.2013, 14:40:07
Jeśli adres strony masz przesyłany przez GET to będzie łatwo.
Sprawdzasz czy $_GET["podstrona"] jest równa aktualnej stronie i wtedy nadajesz np. inny kolor tła dla przycisku.
sowiq
26.09.2013, 14:41:39
Można za pomocą AJAXa, ale tak czy siak sprowadzi się to do tego, że utworzysz ciastko. Na pewno jednocześnie nie zrobisz dwóch zapytań jednocześnie - wysłanie danych POST i przejście na kolejną stronę po kliknięciu w odnośnik.
PS. No dobra, da się to zrobić naokoło (zamiast zapytania GET zrobić w JS wysyłanie zapytań POST po kliknięciu w odnośnik), ale będzie to niepoprawne rozwiązanie.
tuskun
26.09.2013, 14:44:20
Adresy są budowane przez funkcje wp_nav_menu w wordpressie. Próbowałem w nie ingerować i nie mogę nic dodać na końcu. W dodatku strona będzie używała przyjaznych url co komplikuje trochę użycie $_GET w wordpressie.
Turson
26.09.2013, 14:46:30
W takim razie jest też alternatywa.
Przykładowo masz link strona.com/costam/ehe/kontakt
Sprawdzasz przez preg_match() czy adres URL zawiera słowo "kontakt" i wtedy nadajesz inny styl.
tuskun
26.09.2013, 14:57:03
Tak, tylko ma problem z ingerencją w funkcje wp_nav_menu. Nie mogę znaleźć, gdzie jest ostatecznie generowany link i gdzie mogę coś do niego dodać. W dodatku nowy wordpress v.361 ma zmieniony nieco plik z tą funkcją w porównaniu do poprzedniej wersji i to co znalazłem w necie też nie działa.
sowiq
26.09.2013, 15:11:16
Ale Ty nie chcesz nadawać stylu w zależności od podstrony, tylko w zależności od tego jaki wygląd wybrał sobie użytkownik, tak?
Jeśli tak, to nic Ci nie da ingerencja w parametry URL. User jest na stronie (wszystkie linki nawigacyjne są "neutralne") i klika na zmianę koloru (akcja JS). Po tym klika na któryś link i już jest na kolejnej stronie, bez żadnego parametru w GET.
Nie wiem czemu nie chcesz zastosować najprostszego rozwiązania jakim są ciastka i robić to na około, ale to już nie moje zmartwienie.
A do zmiany zachowania funkcji zaimplementowanych w WP służą filtry. Np. do permalink:
http://codex.wordpress.org/Plugin_API/Filt...e/the_permalink
tuskun
27.09.2013, 13:40:50
sowiq, moja odpowiedź była bardziej na temat ostatniego postu od Turson.
Ale po przespaniu się z tym uznałem, że jedna zastosuje ciasteczka, jak sugerowałeś.
Dzięki, pozdrawiam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.