Regular expression i htaccess regex, PCRE, POSIX, upotreba Apache .htaccess , mod_rewrite |
|
Alati teme | Način prikaza |
11. 12. 2009. | #1 |
old school
Expert
Datum učlanjenja: 14.10.2006
Poruke: 460
Hvala: 39
17 "Hvala" u 14 poruka
|
Moj CMS i URL slug
Poydrav,
imam veliku bazu vesti sa preko 600 članaka na sajtu www.hi-files.com/vesti Želim da konačno napravim SEO friendly linkove, a kasnije i neki lepi kalendar za vesti. Pročitao sam članak na linku http://phptips.org/index.php/create-...d-mod_rewrite/ i uz pomoć njega napravio neku skriptu koju možete videti na http://www.hi-files.com/vesti2.php U htacces fajlu stoji sledece Kôd:
RewriteEngine on RewriteRule ^/?([a-z]+)$ $1.php [L] RewriteRule ^vesti/([0-9]+)$ /vesti.php?page=$1 [L] RewriteRule ^vesti2/([0-9]+)$ /vesti2.php?page=$1 [L] RewriteRule ^vesti2/([a-zA-Z0-9\-]+)/?$ vesti2.php?articleurlslug=$1 [L] 1. ne radi mi link http://www.hi-files.com/vesti2 2. da li postoji automatski nacin kreiranja slug-a, jer trenutno imam u bazi dodatno polje pa 600 puta treba da unesem neki slug 3. sta se desava sa nasim slovima znam da je problem kompleksan, ali pomagajte, zaista želim da napravim ovo kako treba |
11. 12. 2009. | #2 |
Knowledge base
Wrote a book
Datum učlanjenja: 16.06.2005
Lokacija: Novi Sad
Poruke: 1.437
Hvala: 37
131 "Hvala" u 82 poruka
|
Mogu da ti pomognem samo oko ovog linka za vesti2.. Ne nalazi http://www.hi-files.com/vesti2 zato sto nemas regexp koji hvata to.. Regexpi koje si stavio hvataju samo vesti2 sa slashom i brojem strane.
Mali dodatak: vidim i ovaj prvi rule: RewriteRule ^/?([a-z]+)$ $1.php [L] izmeni ga da prihvata i brojeve, trebalo bi da vesti2 pretvara u vesti2.php Pitanje je onda da li se kolje sa drugim rules
__________________
Năo quero mais seguir um só caminho Poslednja izmena od MorenoArdohain : 11. 12. 2009. u 23:24. |
11. 12. 2009. | #3 |
novi klan
Professional
Datum učlanjenja: 03.02.2007
Poruke: 326
Hvala: 43
427 "Hvala" u 50 poruka
|
1. ovako nesto bi verovatno pomoglo:
Kôd:
RewriteRule ^vesti2/?$ /vesti2.php [L] Kôd:
update tabela_vesti set slug=lcase(naslov) //edit: pod tranzicionom tabelom podrazumevam nesto poput ovoga $punc na linku koji si naveo, s tim da ne treba da izbacujes te karaktere, nego da ih zamenis slovima bez kukica...
__________________
We professional we dealin' with business Poslednja izmena od japan : 11. 12. 2009. u 23:33. |
12. 12. 2009. | #4 |
old school
Expert
Datum učlanjenja: 14.10.2006
Poruke: 460
Hvala: 39
17 "Hvala" u 14 poruka
|
Hvala obojici.
@Moreno Kada umesto RewriteRule ^/?([a-z]+)$ $1.php [L] napisem RewriteRule ^/?([a-z][0-9]+)$ $1.php [L] onda mi drugi linkovi ne rade @japan Uradio sam RewriteRule ^vesti2/?$ /vesti2.php [L] i lepo radi Sto se tice nasih slova, pogledajte trecu vest. Slug u bazi je denon-osvežava-stereo-modele ali link ne radi |
12. 12. 2009. | #5 | |
nobody
Expert
Datum učlanjenja: 19.04.2007
Poruke: 537
Hvala: 14
705 "Hvala" u 106 poruka
|
Citat:
Kôd:
RewriteRule ^vesti2/(.)/?$ vesti2.php?articleurlslug=$1 [L] Poslednja izmena od nn.nn : 12. 12. 2009. u 11:45. |
|
14. 12. 2009. | #6 |
old school
Expert
Datum učlanjenja: 14.10.2006
Poruke: 460
Hvala: 39
17 "Hvala" u 14 poruka
|
Premenio sam na RewriteRule ^vesti2/(.)/?$ vesti2.php?articleurlslug=$1 [L]
ali ipak ne radi. |
14. 12. 2009. | #7 |
emperor Selassie
Grand Master
|
Mislim da treba:
Kôd:
^vesti2/(.*)/?$ vesti2.php?articleurlslug=$1 [L] |
"Hvala" Nemanja Avramović za poruku: |
15. 12. 2009. | #8 | |
old school
Expert
Datum učlanjenja: 14.10.2006
Poruke: 460
Hvala: 39
17 "Hvala" u 14 poruka
|
Radi!!! Bacite pogled na www.hi-files.com/vesti
Sto se tice htaccess-a stavio sam Citat:
Pri unosu novih vesti, napravio sam da se slug sam kreira po istom pravilu, ali da je pri editovanju clanka moguce menjati i slug. Uh, sad kad krene poseta sa Gugla |
|
15. 12. 2009. | #9 |
Banned
Knowledge base
Datum učlanjenja: 01.07.2005
Poruke: 1.598
Hvala: 206
140 "Hvala" u 89 poruka
|
Najefikasniji nacin da kreiras slug je pri unosu vesti u zasebno polje u tabeli.
Dakle, napravis fju koja ce ti od naslova praviti slug i upisivati ga u bazu. Primer (obrati paznju na encoding): PHP kôd:
|
16. 12. 2009. | #10 |
old school
Expert
Datum učlanjenja: 14.10.2006
Poruke: 460
Hvala: 39
17 "Hvala" u 14 poruka
|
Hvala cvele, ali nasa slova u mom slucaju lepo rade, tako da nema potreba da ih "osakatim"
|
|
|
Slične teme | ||||
Tema | Početna poruka teme | Forum | Odgovori | Poslednja poruka |
"post slug" prikaz u WordPressu | Deki80 | Sva početnička pitanja | 7 | 04. 09. 2008. 21:49 |