hoi,
Ik ben op dit moment bezig met het bouwen van mijn eigen cms systeem. De standaard opties zijn al klaar en het werkt naar behoren. Nu wil ik het uitbreiden met de mogelijkheid om goede seo urls te krijgen.
Nu zit het bijvoorbeeld zo : pagina.php?id=7
Als men een pagina in het cms staat is er een vak bij waarmen de seo naam kan typen dus bijvoorbeeld : fietsen
De bedoeling is dat de url vervangen wordt door de naam die in het vak seo naam is ingetypt vanuit de database.
www.mijnpagina.nl/pagina..php?id=7 moet worden www.mijnpagina.nl/fietsen
ik heb me nu al rot gezocht hoe je dat kan doen via mod_Rewrite op apache etc maar ik kan nergens vinden hoe je die naam uit de database dus de url laat overwriten?? Kan iemand mij verder helpen ?
- Seo urls vanuit database
-
30-03-2011, 11:03 #1
- Berichten
- 95
- Lid sinds
- 15 Jaar
Seo urls vanuit database
-
30-03-2011, 11:07 #2
- Berichten
- 1.406
- Lid sinds
- 17 Jaar
Re: Seo urls vanuit database
je moet dan ten eerste je script aanpassen naar bijvoorbeeld
www.mijnpagina.nl/pagina.php?pagina=fietsen
Je moet dus je pagina niet op gaan halen met ID nummer maar met de SEO naam uit de database. Daarna kan je heel simpel met mod rewrite de link aanpassen met:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/*?$ /pagina.php?pagina=$1 [L]
-
30-03-2011, 11:12 #3gast9400 Guest
Re: Seo urls vanuit database
-
30-03-2011, 11:16 #4
- Berichten
- 340
- Lid sinds
- 16 Jaar
Re: Seo urls vanuit database
Ik doe het ook op die manier van Robin, alleen de naam laat ik nog wegschrijven in een aparte veld.
En mochten er spaties gebruikt worden, dan worden deze vervangen door een - teken
-
30-03-2011, 11:18 #5
- Berichten
- 1.406
- Lid sinds
- 17 Jaar
Re: Seo urls vanuit database
@marcel precies met de spaties wegschrijven met een - kan je zelf al doen als je de SEO url in de database invult maar dit kan je ook regelen met een str replace.
@Daniel je hebt gelijk je kan anders niet 2x dezelfde pagina titel geven.. maar dit is toch niet goed voor google dus maakt opzich niet uit! Jouw manier is wel handig als ook gebruikers paginas enz aankunnen maken.
-
30-03-2011, 11:21 #6
- Berichten
- 340
- Lid sinds
- 16 Jaar
Re: Seo urls vanuit database
Daar heb ik controle op gemaakt of de naam al bestaat..
Aanvullend bericht:
De naam die dan ingevuld wordt laat ik extra wegschrijven op een andere veld met:
'".strtolower(preg_replace("/[^a-z\d]/i", "-", $_POST['naam']))."'Laatst aangepast door MarcelM : 30-03-2011 om 11:24 Reden: Automatisch samengevoegd.
-
30-03-2011, 11:50 #7
- Berichten
- 95
- Lid sinds
- 15 Jaar
Re: Seo urls vanuit database
bedankt voor de goede tips. De manier die robin beschrijft lijkt mij wel het meest logische. Met id is wel handig omdat deze sowieso uniek is maar het nr blijft wel weer in de url staan. heeft dat geen effect op de zoekmachines dan ?
-
30-03-2011, 11:55 #8
- Berichten
- 128
- Lid sinds
- 17 Jaar
Re: Seo urls vanuit database
Dit is toch gewoon 100 maal makkelijker en efficiënter?
Dit in je mod rewrite
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php [L]
Je stuurt dan dus alles door naar index.php
Dan met $_SERVER["REQUEST_URI"] de URI opvragen.
Dan kun je verder alles makkelijk met php afhandelen.
Voorbeeld:
www.website.nl/pagina-1
Krijg je als variable: 'pagina-1' terug.
-
30-03-2011, 12:03 #9gast9400 Guest
Re: Seo urls vanuit database
-
30-03-2011, 12:45 #10
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Re: Seo urls vanuit database
Da google eist dat je een random nummer van 6 tekens voor je url invoegt? // Oh, bij Google News, dat weet ik niet.
Anyways, je zit goed met je methode robin, zeker voor content paginas géén IDs gebruiken, gebruik dit voor bijvoorbeeld nieuwsberichten of users (/123-nieuwbericht.html of /users/123-robin.html), daar heeft het wel weer een meerwaarde omdat de SEO naam niet altijd de echte naam representeert.
Wat ik doe in mijn scripts is de titel van een pagina/item door de gebruiker te laten invullen (eventueel ook een SEO titel) en ALTIJD na het opslaan van een item deze SEO naam (of titel) door een functie halen die:
1) alles lowercase maakt
2) alle spaties met - vervangt
3) alle overige tekens behalve de _ uit de URL halen
4) alle tekens met speciale opmaak (é, à, etc) laten vervangen door de letter zonder accent tekens
-
08-04-2011, 16:10 #11
- Berichten
- 1.483
- Lid sinds
- 16 Jaar
Re: Seo urls vanuit database
Kijk ook even naar het volgende;
http://php.net/manual/en/function.rawurlencode.php
http://www.php.net/manual/en/function.rawurldecode.php
Dit kan erg veel narigheid voorkomen ;-)
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