Keresőbarát url
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:
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!
■ 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]
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!
Front controller
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.
Köszönöm a választ! Van egy
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?
router
'/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.
Lenne még egy kérdésem: SEO
Nem.
Köszönöm mindkettőtöknek,