Ik ben druk bezig met het maken van mijn webwinkel. Mijn webwinkel heeft categorieen, subcategorieen en subsubcategorieen. Ik gebruikte hier eerst categorie.php?id=.., subcategorie.php?id=.. en subsubcategorie.php?id=..., maar dit gaat niet werken omdat ik een dynamisch menu heb wat altijd moet weten wat het ID van de categorie is. Ik heb het nu daarom veranderd in een url als index.php?cat=3&subcat=5&subsubcat=45&product=54. Afhankelijk van op welke url je bent, worden er dus bepaalde dingen getoond.
Ik wil nu dus van index.php?cat=3&subcat=5&subsubcat=45&product=54 een vriendelijke url maken als /sport/tennis/rackets/head_galaxy.html.
Ik ben al superlang bezig om te ontdekken hoe ik nou die gewenste urls kan krijgen, maar heb helaas geen idee hoe dit moet. Vooral aangezien in de huidige url (index.php?cat=3&subcat=5&subsubcat=45&product=54 ) ID's staan terwijl ik in de vriendelijke urls (/sport/tennis/rackets/head_galaxy.html ) juist namen moeten staan.
Zou iemand zo aardig willen zijn om mij uit de brand te helpen en mij te vertellen hoe dit moet?
Alvast bedankt! :-)
- [Mod rewrite] 'Vriendelijke urls bij webwinkel'
-
22-08-2007, 14:20 #1
- Berichten
- 57
- Lid sinds
- 19 Jaar
[Mod rewrite] 'Vriendelijke urls bij webwinkel'
-
-
22-08-2007, 14:23 #2
ManagedWPHosting.nl
- Berichten
- 1.486
- Lid sinds
- 19 Jaar
-
22-08-2007, 14:36 #3
- Berichten
- 57
- Lid sinds
- 19 Jaar
In dat artikel vind ik helaas niet de gewenste oplossing. Daar gebruiken ze gewoon altijd woorden/cijfers die ze gewoon uit de 'oude' url halen. Daar is het gewoon zo dat ze bijvoorbeeld van www.url.nl/index.php?catid=1, www.url.nl/1/ maken.
Bij mij is het echter zo dat ik wil dat die van een cijfer (cat=3&subcat=5&subsubcat=45&product=54) mooie urls maakt zonder cijfers en dus met woorden (sport/tennis/rackets/head_galaxy.html).
-
22-08-2007, 14:43 #4
ManagedWPHosting.nl
- Berichten
- 1.486
- Lid sinds
- 19 Jaar
dan maak je er dit van
3sport/5tennis/45rackets/54-head_galaxy.html
of bv
3sport/5-45tennis-rackets/54-head_galaxy.html
( ok niet echt geweldig .. )
je moet altijd zelf kijken hoe je het wilt hebben, numeriek ID betreft de voorkeur ivm SQL injections.
zonder cijfer moet ook kunnen hoor, maar dan moet je de user input ( $_GET ) dus valideren of schoonmaken, voordat je je productenlijst op haalt.
en dan is
sport/tennis/rackets/head_galaxy.html natuurlijk mogeljk of bv
sport_tennis_rackets/head_galaxy.html
-
22-08-2007, 14:51 #5deleted Guest
RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-m-([0-9]+).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pi-([0-9]+).html$ popup_image.php?pID=$2&%{QUERY_STRING}
RewriteRule ^(.*)-t-([0-9]+).html$ articles.php?tPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-a-([0-9]+).html$ article_info.php?articles_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pr-([0-9]+).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pri-([0-9]+).html$ product_reviews_info.php?products_id=$2&%{QUERY_ST RING}
RewriteRule ^(.*)-i-([0-9]+).html$ information.php?info_id=$2&%{QUERY_STRING}
zo heb ik laatst een seo voor oscommerce gemaakt
-
22-08-2007, 14:55 #6
ManagedWPHosting.nl
- Berichten
- 1.486
- Lid sinds
- 19 Jaar
klopt maurice, maar dan zit je nog met numerieke zaken en dat wil de TS niet ;)
en dus dien je de userinput serverside op te vangen ..
-
22-08-2007, 15:03 #7
- Berichten
- 57
- Lid sinds
- 19 Jaar
Origineel gepost door ramon fincken
zonder cijfer moet ook kunnen hoor, maar dan moet je de user input ( $_GET ) dus valideren of schoonmaken, voordat je je productenlijst op haalt.
en dan is
sport/tennis/rackets/head_galaxy.html natuurlijk mogeljk of bv
sport_tennis_rackets/head_galaxy.html
@M Valentijn: Hoe zien die urls er dan daadwerkelijk uit? in je browser? :-)
-
22-08-2007, 17:35 #8
ManagedWPHosting.nl
- Berichten
- 1.486
- Lid sinds
- 19 Jaar
jep, correct, maar zoals ik zie is je huidige systeem nu met ID's en niet met "vrije" tekst, en dat zal dus ( als je absoluut geen IDs wilt gebruiken ) omgeschreven moeten worden
om even voor dhr valentijn te spreken: ( als ik me niet vergis )
RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}
vrijetekst-c-categorienaam.html
RewriteRule ^(.*)-m-([0-9]+).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}
vrijetekst-m-9.html
-
22-08-2007, 18:09 #9
- Berichten
- 625
- Lid sinds
- 19 Jaar
1) Maak een nieuw veld aan in je productentabel die je "seoname" ofzo noemt. Dit moeten unieke waarden zijn.
2) Maak van ieder product een unieke SEO-naam. Dus gewoon de naam van het product, met alle ongeldige of vreemde tekens verwijderd. Mochten er dan toch 2x hetzelfde resultaat bij zijn, dan kan je er bv een getal achter zetten.
3) Maak een functie aan getBySEO($seoName) waarmee je producten ophaalt dmv de SEO naam ipv de id
4) Wijzig alle links ;-)
-
28-08-2007, 10:14 #10
- Berichten
- 57
- Lid sinds
- 19 Jaar
Mijn excuses voor de late reactie, ik was enkele dagen niet thuis...
@Dirk:
Klinkt op zich goed allemaal! Is dit echter geen omslachtige manier waardoor de site langzamer wordt?
Punt 1 en 2 snap ik wel, maar hoe die functie die je bij punt 3 geeft er uit zou moeten komen te zien is mij een raadsel. Zou je mij misschien hierbij kunnen helpen?
Alvast bedankt in ieder geval! :-)
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic