Így távolítsd el a számokat a Joomla URL-ekből

A Joomla URL címek alapértelmezetten a menükezelőből kapnak keresőbarát neveket. Ha egy cikkhez nincs társított menü, az URL-je elé bekerül az elem azonosítója, ami egy szám. Ez bizonyos esetekben zavaró lehet, minden egyes cikkhez pedig felesleges menüpontokat létrehozni csak azért, hogy a címből eltüntethessük ezeket a számokat. Ebből a cikkből megtudhatod, hogy távolítsd el ezt az elem azonosítót az URL-ekből külső kiegészítő nélkül, a Joomla alapmodul módosításával.

A módosítás nélkül ennek a cikknek a címe blog/23-igy-tavolitsd-el-a-szamokat-a-joomla-url-ekbol lenne, viszont a /23- azonosítót ezzel a módosítással eltávolítottuk az URL-ből. Tudd meg, hogyan! Az alábbi módosítás a Joomla 3.4.x változattal biztosan működik. A változtatásokat mindenki csak saját felelősségére végezze el! A módosítások előtt készíts biztonsági másolatot a honlapodról!

Első lépés: Keresd meg a router.php fájlt. A fájlt a components/com_content/router.php címen találod. Fontos, hogy ezeket a módosításokat mindig el kell majd végezned, ha érkezik egy olyan Joomla frissítés, ami felülírja a router.php fájlt!

Második lépés: módosítsd a fájl sef_advanced_link beállításra vonatkozó sorát. Keresd meg ezt a szövegrészt: $advanced = $params->get('sef_advanced_link', 0); és a nullát írd át 1-re, így: $advanced = $params->get('sef_advanced_link', 1); Ezt a szövegrészt két helyen is megtalálod a fájlban, fontos, hogy mindkét helyen átírd!

Megjegyzés: Ha korábbi Joomlát használsz, szükséged lehet egy harmadik lépésre is, hogy a módosítások működjenek. Keresd meg a fájlban ezt a szövegrészt: where($db->quoteName(‘alias’) . ‘ = ‘ . $db->quote($db->quote($segment))); és módosítsd erre: where($db->quoteName(‘alias’) . ‘ = ‘ . $db->quote($segment)); (Joomla 3.4-ben ez a sor már módosításra került, tehát ott elég az első két lépést elvégezned a módosításhoz.)

Frissítés: a Joomla a 3.8-as verziótól már hivatalosan is támogatja az cikkekhez tartozó szép URL címeket, azaz azonosító nélkül is engedi használni azokat.