ugrás a tartalomhoz

Keresőbarát url

nagygabor · 2011. Okt. 26. (Sze), 14.40
Sziasztok!

Keresőbarát url-t szeretnék készíteni, olvastam rengeteg doksit, de valahogy egyik se olyan volt, hogy a saját rendszeremben működjön.
Nem is értek mindent, ezért szeretném a segítségeteket kérni.

Ebből az url-ből:
http://domain.hu/index.php?modul=1&kategoria=kategora-1&cikk=cikk-1

Ilyet szeretnék csinálni:
http://domain.hu/kategora-1/cikk-1

A kategóriáknak lehetnek alkategóriái, de ez már részletkérdés.

A könyvtárszerkezet elve:

ROOT/

controller/
-- controller.php

modul/
-- modul1.php

views/
-- template1.tpl

index.php

.htaccess


A .htaccess fájl tartalma:
RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)$ /seo-url/index.php?modul=1&kategoria=$1&cikk=$2 [L]


Be vannak kapcsolva a htaccess működéséhez szükséges dolgok, leellenőriztem egy frissen telepített wordpress-szel.

A gond, hogy az url változatlan marad.

A segítségeteket előre is köszönöm!
 
1

Front controller

Greg · 2011. Okt. 26. (Sze), 15.07
En front controller-t hasznalnek a helyedben. Aztan a lentit a .htaccess-be.
RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php


A frontcontroller meg parse-olna az url-t es kuldene a kerest ahova kell. De inkabb probalj ki egy MVC keretrendszert es hasznald azt(pl Yii), vagy ir egy sajat routert es akkor dinamukisan tudod szabalyozni a route-jaidat.

Amit meg kifelejtettem. Tipikus hiba hogy ilyenkor azt hiszik az emberek az URL megvaltozik magatol. Ez igy nem igaz. Ami tortenik az az, hogy a te .htaccess-edel, ha megnyitod ezt az URL-t: http://domain.hu/kategora-1/cikk-1 , akkor a keres itt landol: http://domain.hu/index.php?modul=1&kategoria=kategora-1&cikk=cikk-1 .
Ha erted mire gondolok.
2

Köszönöm a választ! Van egy

nagygabor · 2011. Okt. 27. (Cs), 10.57
Köszönöm a választ!

Van egy controller, amit az index.php tartalmaz és ami url-ből kikérve megadja a moduloknak a paramétereket.
Például a modul=1 a tartalom modult takarja, a kategoria=kat-1 és cikk=cikk-1 paraméter-érték párokat pedig a tartalom modulnak adja át.
Tudnál írni erről a router-ről kicsit esetleg?
4

router

Greg · 2011. Okt. 27. (Cs), 16.24
Peldaul a Yii ugy oldja meg hogy a configban vagy egy tomb a route-oknak:
routes => array(
'/home' => 'site/index',
'<controller:\w+>/<id:\d+>' => '<controller>/view'
)


Az index a bejovo URL, az ertek pedig, hogy hova kell a kerest tovabbitani. Mindketto teljesen dinamikus. A masodik szabalynal lathatod ezt. Irnod kell egy osztalyt ami ezen szabalyok alapjan ertelmezi az URL. Meg mondjuk adott adatokbol ezen szabalyok alapja visszaad egy URL-t.
3

Lenne még egy kérdésem: SEO

nagygabor · 2011. Okt. 27. (Cs), 15.59
Lenne még egy kérdésem: SEO szempontból hátrányos-e a relatív elérési út megadása a menüpontoknál?
5

Nem.

Hidvégi Gábor · 2011. Okt. 27. (Cs), 16.39
Nem.
6

Köszönöm mindkettőtöknek,

nagygabor · 2011. Okt. 27. (Cs), 17.42
Köszönöm mindkettőtöknek, sínen van az ügy.