Co znaczy „własny szablon w motywie”? Chodzi Ci o szablon strony (page template)?
Lokalny host: http://kamcio96.no-ip.org/sklep/ wszystko działa(dostępna jak mam włączony komputer).
Oficjana strona: http://northcraft.maxc.pl/sklep/ nie działa.
Szablony(page template) są takie same.
Dobra, to już ustaliliśmy nomenklaturę i pozbyliśmy się niejasności.
Możesz ten szablon strony udostępnić? (na pastebin – najlepiej)?
http://pastebin.com/HDx5XPGg głowny kod
http://pastebin.com/2SPxx7Em plik do include
(… <– tutaj jest kod tylko do wyswietlania)
Dobra, to po kolei:
1. W szablonie za bardzo nie powinieneś include’ować. (get_template_part
jest znacznie lepiej widziane i bezpieczniejsze)
2. Linki powinny być bezwzględne.
3. Znacznie sensowniej by było, gdyby te przyciski wysyłały to raczej POSTem, a nie GETem.
Jeśli natomiast chodzi o to, dlaczego Ci to nie działa, to obstawiam, że problem polega na tym, że WordPress sam wykorzystuje wartość parametru 'action’ do swoich wewnętrznych rzeczy.
Zmień nazwę tego parametru na inną i sprawdź czy działa poprawnie.
PS. Pomocne może być też wypisanie sobie całej tablicy $_GET (print_r($_GET)
lub var_dump($GET);
).
Możesz dodatkowo w ramach debugowania dodać takie debugowanie w functions.php – wtedy będziesz wiedział, gdzie Ci jakieś parametry znikają.
1. Zrobiłem bez include.
2. Linki już mam bezwzględne.
3. POST jak i GET nie działa nawet przez formularz.
4. Dałem var_dump($_GET) i var_dump($_POST) i nic.
5. Zmieniłem nazwę paramentu na opcja a później na opcjaasdfgh i dalej nie działa.
6. Jak włączyć to debugowanie??
Ktoś wie jak rozwiązać problem. Sprawdziłem też skrypt po zmianie linków na ?p=123 i o dziwo wszystko działa. Jednak wolałbym używać odnośników typu /%postname%/ no jednak one lepiej wyglądaja. :/
Ad 6. No wstaw tam sobie po prostu var_dumpowanie $_POSTa i $_GETa.
Jesteś pewien, że wyświetlasz odpowiedni szablon? Bo var_dump($_GET) nawet, jeśli ta tablica jest pusta, powinien coś wypisać. Jeśli nic nie wypisuje, to albo tego po prostu nie widzisz, albo ten Twój skrypt w ogóle się nie wykonuje.
Tak nadal nie działa. var_dump() nic nie pokazuje :/. Pogrzebałem trochę w necie i wiem że błędny jest .htacces. Tylko teraz nie wiem jak go ustawić aby wszystko poprawnie działało
Mieszasz pojęcia chyba totalnie.
Jeśli strona Ci się wyświetla i wysyłasz na dobry adres formularz metodą POST lub GET, to .htaccess nie ma tu nic do rzeczy…
Ale bez dostępu raczej trudno będzie stwierdzić, co tam namieszałeś…
Mam też 2. strone na której mam ten sam problem. Strona wykorzustjuje $_SERVER[„REDIRECT_URL”] czyli to co wordpress. I jak mam link /login/ to tak naprawde przekierowuje na strone glowna i laduje odpowiednia strone. Tam teżna stronie głównej działa GET i POST a na innych stronach nie 🙁
O co chodzi z
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Nie obraź się, ale zanim zaczniesz grzebać i kodować w WordPressie, to nie uważasz, że wypadałoby poznać przynajmniej podstawy PHP i dowiedzieć się, do czego jest .htaccess?
Motasz się tu strasznie rzucając losowe tematy jako przyczyny Twojego błędu…
Dobra rada: zleć to komuś (choćby na wpzlecenia.pl), albo poczytaj gdziekolwiek o PHP i mod_rewrite…
Ja się poddaję – nie jestem w stanie tego naprawić tłumacząc Ci, jak to zrobić. W razie czego napisz na priv, daj mi dostęp, to Ci to naprawię.