Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [htaccess] Zmiana url na przyjazne
Forum PHP.pl > Forum > Przedszkole
ornitolog
Witam, mam takie url na stronie Wordpress
Kod
http://domena.pl/?projekt=bocian
http://domena.pl/?projekt=zaba
http://domena.pl/?projekt=ryba

i teraz probuje w htaccess zmienic te url'e, zeby na stronie wyswietlaly sie:
Kod
http://domena.pl/zobacz_projekt/bocian
http://domena.pl/zobacz_projekt/zaba
http://domena.pl/zobacz_projekt/ryba


cokolwiek bym nie robil, jest to samo. Nie przekierowuje adresow oraz na stronie wyswietlaja sie ciagle te same url'e ..
kapslokk
Pokaż co do tej pory zrobiłeś.
Cytat
Nie przekierowuje adresow oraz na stronie wyswietlaja sie ciagle te same url'e ..

Urle na stronie nie zmienią się w jakiś magiczny sposób, wpis w .htaccess sprawi tylko, że po wejściu na http://domena.pl/zobacz_projekt/zaba strona zadziała, natomiast wszystkie linki w kodzie musisz zmienić ręcznie.
Niree
No niestety, w index.php musisz sobie napisać, co wyświetla JEŚLI $_GET['projekt']...
Np.


  1. if(isset($_GET['projekt']))
  2. {
  3. if($_GET['projekt'] == 'bocian')
  4. {
  5. $content = 'strona bociana';
  6. }
  7. else if($_GET['projekt'] == 'zaba')
  8. {
  9. $content = 'strona żaby';
  10. }
  11. else
  12. {
  13. $content = 'strona nieprawidłowa, brakuje kategorii lub ewentualnie zrobić tu przekierowanie na główną stronę, bez ?projekt';
  14. }
  15. }
  16.  
  17. echo $content;


htaccess

  1. <IfModule mod_rewrite.c>
  2. RewriteEngine On
  3. #Options FollowSymLinks
  4. RewriteBase /
  5. RewriteRule ^index\.php$ - [L]
  6. RewriteCond %{REQUEST_FILENAME} !-f
  7. RewriteCond %{REQUEST_FILENAME} !-d
  8. RewriteRule projekt/(.*) index.php?projekt=$1
  9. </IfModule>
ornitolog
Ok, zmienie sobie recznie ale przekierowania nie dzialaja, wyswietla sie strona glowna wordpress :/ probowalem takich sztuczek (po jednej na raz oczywiscie):

Kod
RedirectMatch 301 (.*)/?projekt=(.*)$ /projekt/$1
RedirectMatch 301 ^(.*)\/\?projekt\=(.*)$ /projekt/$1
RewriteRule ^\?projekt\=(.*)$ [url="http://domena.pl/projekt/$1"]http://domena.pl/projekt/$1[/url] [r=301,nc]
RedirectMatch 301 "^\/\?projekt\=(.*)$" "http://domena.pl/projekt/$1"
RewriteRule ^(\w+)/?$ /?projekt=$1 [R=301,L,QSA]
RewriteRule ^(\w+)/?$ /?projekt=$1 [L,QSA]
RewriteRule ^projekt/([^/]+)?$ /projekt=$1 [L]


probowalem teraz tych i niestety tez nie dzialaja :/

Kod
RewriteRule projekt/(.*) index.php?projekt=$1
RewriteRule projekt/(.*) ?projekt=$1
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.