Joomla a přátelské URL adresy
Pondělí, 07 Červen 2010 20:22
Přátelské adresy jsou dnes hodně omýlaným tématem. Každý chce mít pěkné adresy a stává se to také standardem. Já osobně si myslím, že jsou daleko důležitější faktory při tvorbě SEO optimalizované stránky a hezké URL adresy jsou dobré hlavně pro uživatele, kteří mohou usoudit dle adresy jaký se asi bude na dané stránce nacházet obsah. Ale dost fylozofování, pojďme se podívat jak je správně v Joomle nastavit a co změnit aby fungovali korektně.
Než přejdeme k samotné aktivaci řekněme si, jak správně vyplňovat názvy sekcí, kategorií i článků tak, aby se poté korektně zobrazovali pěkné url adresy. Při tvorbě nové sekce, kategorie a článku vkládáme vždy titulek, hned pod ním se nachází pole nazvané Alias, právě to slouží pro vložení pěkné URL adresy. Nepsaná pravidla pro vkládání jsou následující
- používejte pouze malá písmena
- nepoužívejte diakritiku, pište bez háčků a čárek
- nevkládejte mezery pomocí mezerníku ale nahraďte je některým ze znaků "-" nebo "_"
Například název článku "Joomla a přátelské URL adresy" pak bude mít alias "joomla-a-pratelske-url-adresy". Vyvarujte se hodně dlouhým názvům. Je možné vynechávat spojky a ponechávat pouze klíčová slova. Adresa pak může vypadat třeba takto "joomla-url-adresy". Ještě malý dovětek, pokud necháte Alias prázdný Joomla Vám automaticky Alias vyplní dle pravidel uvedených výše.
Nyní přejděme k samotné aktivaci pěkných URL adres. Najedeme do menu Webové stránky (Site) -> Globální nastavení (Global configuration) a po pravé straně najdeme Nastavení SEO (SEO Settings). Nastavíme URL přátelské k vyhledávačům (SEF) (Search Engine Friendly URLs) na ANO. Nyní zadáme do prohlíže adresu naší domény a zkusíme kliknout na adresu nějaké sekce nebo článku. Měla by se nám objevit adresa ve tvaru:
http://www.vasedomena.cz/index.php/clanky/nejaky-clanek
To už vypadá lépe oproti
http://www.vasedomena.cz/index.php?option=com_content&view=article&id=5&Itemid=2
Ale jak jistě vidíte ještě stále tam přebývá index.php, to můžeme odstranit povolením dalšího nastavení v globální kofiguraci a to Použít Apache mod_rewrite (Use Apache mod_rewrite). Vedle této volby je výstražný trojúhelník s textem, že pokud nepoužíváme Apache server nemůžeme tuto možnost využít. Na serveru také musí být nainstalován modul mod_rewrite (neplést si s modulem v Joomle). Jak ale zjistíme zda-li je server správně nastaven? Je to jednoduché. Buď napíšeme poskytovateli hostingu aby nám to řekl, nebo to prostě zkusíme. My šikovnější si můžeme vytvořit php soubor a vepsat do něho tento kód.
Takto vytvořený soubor uploadujeme na FTP. Poté zadáme jeho adresu do prohlížeče. Hned třetí položka Server API nám řekne, zda-li se jedná o Apache server. Toto nastavení prakticky není potřeba kontrolovat. Apache je na serveru v drtivé většině případů. Existenci mod_rewrite zjistíme v položce Loaded Modules. Pokud máme obojí můžeme zaškrtnout nastavení na ANO. Tím však ještě není úplně vyhráno. Nyní musíme přejmenovat soubor htaccess.txt v kořenovém adresáři na FTP serveru. Použijeme například program Total Commander pro připojení a přejmenování souboru. Soubor přejmenujeme na .htaccess tím by mělo být hotovo. Vyzkoušíme si zobrazit úvodní stránku našeho webu a kliknout na nějaký odkaz. Pokud funguje máme vyhráno. Bohužel většinou nastane jev úplně opačný :) Prohlížeč zahlásí chybu 500 Internal server error a my si rveme vlasy na hlavě. Pokud se Vám toto stane, je třeba upravit soubor .htaccess. Upravený soubor si stáhněte zde a po rozbalení jím přepište starý soubor na FTP. Nyní by mělo jít vše v pořádku.
Závěrem bych chtěl říct, že pěkné URL adresy nedostanete z komponent které nejsou součástí jádra Joomly a jsou doinstalované. Pokud chcete mít pěkné URL i tam je nutné nainstalovat některou komponentu pro pěkné URL adresy. K dispozici jsou prakticky dvě Artio SEF a JoomSEF. Jedna placená, druhá zdarma. Obě Vás však budou něco stát, protože i když je jedna z nich zdarma je nutné do ní instalovat pluginy pro pěkné URL dané komponenty, ty už však zdarma nejsou. Myslím, že některé beta verze daných komponent jsou k mání na internetu zdarma, ale neměl jsem s nimi dobré zkušenosti.
To by bylo pro dnešek vše. Mějte na paměti, že pěkné URL jsou sice pěkné, ale nadruhou stranu zpomalují běh stránky dodatečnými dotazy na databázi a nutností přesměrování přes htaccess. A tak není vždy nutné je používat.
Přidej Váš komentář
Další odkazy
Spřátelené weby
Anketa
Uživatelé na chatu
- No users online

title v šabloně bych uplne zrusil, titulky si muzete nastavit v administraci, neni treba jej tedy zadavat v sablone.
otevrete: /templates/webis_cooking1/index.php
A najděte tag title a odstraňte
mám dotaz, který se ovšem netýká url adres. Naposledy jste mi tu hodne pomohli, tak bych se na Vas opet rad obrátil, muj dotaz opetne slouzi k prehlednosti joomla stranek.
K validite zakladni stranky (http://bandista.eu) mi chybi pouze jedna vec. Diky sablone a clanku se mi objevuji dva ruzne title. Title globalni co je v headu sablony a title clanku. Nevite jak se teto duplicity zbavit?
Honza
prave u tohoto odkazu jsem zkousel vsechno mozne, musel jsem zmenit alias v obou castech, jak v clanku tak v polozce nabidky a nasledne prepsat rucne URL v samotne sablone, kde byla vepsana. A vse zabralo az jsem priradil vsem clankum kategorii (jedinou co tam mam k aktualitam), ulozil to a pak to zase odnastavil a ulozil jiz bez kategorie. Asi nejaka chyba. Kazdopadne moc Vam dekuju za pomoc uff
Honza
zkuste zadat do prohlizece http://www.bandista.eu/alias-clanku
Napriklad toto me funguje:
http://bandista.eu/letni-hudebni-kurzy
(
) jednotlive pod sebou.
Krome aktualit nemam zadny clanek kategorizovan. Ani jako kategorii ani jako sekci
Jinak struktura adres je pak sekce/kategorie/clanek
Chapu to spravne ze se mi ted puvodní linky prepisi podle alias př. http://bandista.eu/clanky/co-je-bandista. Ovsem kdyz toto zadam do linku v hlavicce, napise se mi chyba 404.
Nebo musite opet natvrdo vepsat do sablony novy tvar adres.
ano i po uložení jak URL přátelské k vyhledávačům (SEF) na ANO, tak Použít Apache mod_rewrite na ANO, mi to pořád zůstávájí URL adresy nepřehledné. Zadal jsem i správné alias u článků, bez velkych písmen, mezer a diakritiky. Jediné na co jsem přišel, tak na to, že v šabloně jsou vepsány natvrdo odkazy na stránky se složitou URL.
Protoze kdyby se zmena projevila, tak vam to hazi budto chybu prohlizece, nebo to funguje.
V globalnim nastaveni, zalozka SEO
URL přátelské k vyhledávačům (SEF) - ANO
Použít Apache mod_rewrite - ANO
Take se presvedcte ze se globalni konfigurace ulozi (po ulozeni tam musi zustat zaskrtnute tyto hodnoty. Nekdy konfiguraci nelze ulozit kvuli spatnym atributum souboru configuration.php
je to verze Joomla! 1.5.15 Stable. Porad to ukazuje slozite URL
se zobrazenim .htaccess jste mi pomohl dekuji :-) myslel jsem ze se mi zobrazuji vsechny skryte soubory.
V globalnim nastaveni jsem prave nastavil vse spravne, ale stejne to nefunguje.
Honza
Dle meho se soubor nahraje v poradku, jen ho mate nastaven jako skryty. Pokud pouzivate total commander. Staci zvolit v hornim menu ""Síť -> FTP - zobrazit skryté soubory"
Následně musíte samozřejmě v globální konfiguraci přátelské url povolit.
na stránkách http://bandista.eu mám následující problémy. Při kopírování přes FTP souboru ".htaccess" dochází neustále k tomu, že daný soubor se mi nenahraje, respektive kopírování proběhne, ale soubor tam prostě nahrán není.
Žádným způsobem se mi nepodařilo upravit URL adresy. Jedine co jsem zjistil je to, že mám v šabloně natvrdo napsané:
Je možné mi nějak poradit?
S pozdravem
Honza
Vysledek je takovy ze url adresy fungovali normalne. Takze chyba musi byt na Vasi strane. Zkuste tedy cely modul horniho menu smazat a znovu vytvorit.
Zkuste to leve menu zakazat, jestli se schvalne opravy ty adresy nahore..
Pouzivate na jeho generovani klasicky modul mod_mainmenu, nebo to delate jinak?
Je divne ze nekde by URL joomla prepisovala a jinde ne.
Přáteslké url mi funguje, ale pouze v levém menu. V horním menu už se zobrazují zdlouhavé odkazy vygenerované joomlou vůbec si stím nevím rady. Stránky:www.tj-rusin.tym.cz
Děkuji za pomoc
Pokud ano, zkuste do htacces pridat tento radek
Za nazev_subdomeny si doplnte jakou subdomenu mate.
Not Found
The requested URL /tvorkolky/index.php/motocykle/kawasaki.html was not found on this server.
Use Apache mod_rewrite: NE
Pote by mely byt pekne adresy stejne jako zde ve formatu stranka.cz/index.php/clanek
Pote bych se presvedcil ze je skutecne soubor .htacces spravne nahrany na ftp v korenovem adresri joomly a zda-li nemate nainstalovanou nektrou z komponent (Artio SEF, a nebo JoomSEF)
Add suffix to URLs: Áno
Na ne, ostatni ponechte ano.
Kdyby to neslo, napiste jakou mate verzi joomly, je to v napovede, nebo myslim i dole v paticce v administraci.
Search Engine Friendly URLs: Áno
Use Apache mod_rewrite: Áno
Add suffix to URLs: Áno
Zkusil bych proste zapnout pekne url prepsat htacces ktery najdete v clanku vyse do korenoveho adresare a zkusit jestli to funguje. Nic tim nezkazite. Prinejhorsim opet pekne url adresy vypnete a htacces smazete.
Podivel bych se trosku na zaklady prace s joomlou. Trosku si zrejme pletete pojmy
Dreamweaver je desktopovy program na tvorbu webových stránek. Ten s Joomlou nijak nesouvisí (maximálně, kdyby jste v něm vytvářel šablony pro Joomlu). Joomlu lzu spravovat bez zásahu do kódu v administrační části. Takže žádné programování ani kódování není třeba (samozřejmě existujíí i výjímky jako úprava komponent, vzhledu modulů apod.)
pouzivate verzi s www.vasedomen.cz/index.php/stranka, nebo verzi s upravenym htacces?
Pokud prvni verzi melo by vse fungovat spravne, pokud druhou zkontrolujte spravne nastaveni v globalni konfiguraci jak je v clanku a zda-li je opravdu soubor .htacces na serveru v korenovem adresari, a zda-li ma spravny format.
měl bych drobný dotaz, vše jsem udelal jam jsem měl, v náhledu pred kliknutím na adresu mam skutecne "hezkou" adresu, ale po kliknutí mi to zobrazí stránku 404, kdejsem udelal chybku?
díky moc
dan
290 /sobi/oční-optiky/page_10.html
--------------------------------------------------------------------------------
index.php?option=com_sobi2&catid=3&limitstart=0&Itemid=100002 2010-09-28 15:26:17
2010-09-30 18:25:09 49
289 /sobi/oční-optiky/page_10.html
--------------------------------------------------------------------------------
index.php?option=com_sobi2&catid=3&limitstart=90&Itemid=100002 2010-09-28 15:26:17
2010-09-30 18:27:13 50
288 /sobi/oční-optiky/oční-optika-zdeněk-votruba_230.html
--------------------------------------------------------------------------------
index.php?option=com_sobi2&sobi2Task=sobi2Details&catid=1&sobi2Id=230&Itemid=100002 2010-09-28 15:24:11
2010-09-28 15:24:11 47
287 /sobi/oční-optiky/oční-optika-zdeněk-votruba_230.html
--------------------------------------------------------------------------------
index.php?option=com_sobi2&sobi2Task=sobi2Details&catid=0&sobi2Id=230&Itemid=100002 2010-09-28 15:24:11
2010-09-28 15:24:11 48
286 /sobi/oční-optiky/oční-optika-zdeněk-votruba_230.html
--------------------------------------------------------------------------------
index.php?option=com_sobi2&sobi2Task=sobi2Details&sobi2Id=230&Itemid=100002 2010-09-28 15:24:11
2010-09-28 15:24:11 49
285 /sobi/oční-optiky/oční-optika-zdeněk-votruba_230.html
Zkuste se podivat na tyto postupy. Zakazat vsechny cache a testovat to.
http://www.sigsiu.net/forum/index.php/topic,20783.0.html
Pripadne muzete vsechny adresy rucne prepsat pres Manage sef urls.
http://www.ocnioptika.cz/sobi/o%c4%8dn%c3%ad-optiky/o%c4%8dn%c3%ad-optika-lubo%c5%a1-vondrus_12.html
v levem menu dejte spravce Zasuvne moduly -> SOBI SEF
Podivejte se, zdali je plugin aktivni
Pote v menu Replacements dejte characters:
&,ä,ö,ü,ß,ę,ó,ą,ś,ł,ż,ź,ć,ń,í,ě,š,č,ř,ž,ý,á,í,é,ů,ú,ď,ť,ň
Replacements:
and,ae,oe,ue,ss,e,o,a,s,l,z,z,c,n,i,e,s,c,r,z,y,a,i,e,u,u,d,t,n
Melo by to fungovat. Ukazku najdete napr. zde:
http://podblanicke.info/adresar/nudim-se-./kryty-plavecky-bazen-benesov.html
http://www.ocnioptika.cz/sobi.html?sobi2Task=sobi2Details&catid=7&sobi2Id=32.
Pochybuji, že by takovýto formát měla mít "přátelská" adresa. Nevím, co s tím ještě mohu dělat víc ?
Muzete ho stahnout zde:
http://www.sigsiu.net/download/plugins/sobisef_plugin.html
Artio SEF a JoomSEF přece jenom více doporučujete a jak nejlépe postupovat dál,..
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, admin@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
RewriteCond %{HTTP_HOST} ^www\.example\.cz [nc]
RewriteRule ^index.php$ http://example.cz/ [R=301,L]
nemuzu na to prijit
diky moc
O gramatickych chybách víme, bohužel všechny články se píší bez nároku na honorář a v našich osobních volnech. Na nějakou korekci proto není ani pomyšlení, ani čas. Víme, že to není ideální stav, ovšem myslíme si, že hlavní je nastínit daný technický problém a k chybám budou uživatelé shovívaví. Někdy se jedná o překlepy, někdy prostě o neznalost mateřského jazyka :)
zkusil bych zapnout legacy mod v 1.5 - jak to udelat najdete tady na webu staci zadat do vyhledavani legacy, tim by se mel vyresit problem se sablonou. Co se tyce komponent, zkusil bych SOBI upgradovat na verzi pro 1.5 struktura databaze by snad mela byt stejna
1)Některé položky Menu hlásí chybu 404.?(chybí komponenta?)
2)Původní aplikace využivala šablonu pro Joomla 1.0. Mám zkusit ji použít i v Joomla 1.5.,nebo ji raději ani neinstalovat ?
3)Zásadním problémem je ale nepřevedení vyhledávacích "adresářů" vytvořených komponentou Sobi. Adresáře obsahují několik stovek identifikačních údajů klientů s popisem firmy. Prosím o radu, co s tím lze dělat, jak data z datbáze převést do migrované aplikace? Mockrát děkuji.
http://interval.cz/podklady/1999-2008/steinbauer/1215/ukazka.htm
http://interval.cz/clanky/interaktivni-mapa-ceske-republiky-s-hover-efektem/
Zde se muzete inspirovat. Mapu pak muzete s prislusnymi odkazy vlozit nekam do zdrojoveho kodu, popr do clanku pres zdrojovy kod clanku, ale nevim jestli to veme javascript.
Pokud by to neslo primo do clanku vyuzijte tohoto:
http://www.redakcni-systemy.com/media/video/joomla/instalace-komponent-a-jumi.htm