Weblog over webdesign, SEO, CSS en meer
Bij statische URLs wordt vaak de titel opgenomen. Er dienen hierbij echter rekening gehouden te worden met bepaalde eisen en stijlregels.
Zoals eerder beschreven op dit blog kunnen websites een statische URL of een dynamische URL hebben. Bij het maken van een statische URL wordt meestal de titel van het artikel ook opgenomen in de URL.
Waarom zou je de titel opnemen?
Hiervoor kunnen verschillende redenen zijn:
Kort geleden heeft Matt Cutts in een korte video uitleg gegeven over het gebruik van keywords in de URL. Hij merkte hierbij onder andere op dat keywords in de URL "een beetje helpen" maar dat je er voor moet oppassen dat het er "niet gaat uitzien als spam". Een belangrijk punt in het voorkomen van een spam-look is het goed omzetten van de titel voor het gebruik in de URL.
Waaraan moet een titel in de URL voldoen?
De titel is normaal gesproken het achterste deel van de URL, bijvoorbeeld het deel 'checklist-mijn-website-is-stuk' in deze URL: http://www.tweepixels.nl/blog/2009/02/checklist-mijn-website-is-stuk. Je kunt echter niet zomaar de titel van je artikel in de URL plakken. Aan een URL zitten namelijk diverse eisen en stijlregels:
Hoe pak ik dit aan?
Bovenstaande eisen en stijlregels kunnen behaald worden door een combinatie van PHP functies. Dit proces zal nu stap voor stap in volgorde worden beschreven.
// Eerst een titel om mee te testen
$titel = 'Uit de enquête bleek dat één appel voldoende is!';
// Verwijder eerst eventuele spaties aan het begin of het einde van de titel (trim)
$titel_2 = trim($titel);
// Vervang de letters met accenten (in ons voorbeeld de ê en de é) door de letter zonder accent (normaliza door Sidney Ricardo)
$titel_3 = normaliza($titel_2);
// Vervang alle spaties door streepjes (str_replace)
$titel_4 = str_replace(' ', '-', $titel_3);
// Vervang meerdere streepjes op rij door één streepje (preg_replace)
$titel_5 = preg_replace('/\\-\\-+/', '-', $titel_4);
// Verwijder alle tekens die niet gewenst zijn (preg_replace)
$titel_6 = preg_replace('/[^a-zA-Z0-9\\-]/', '', $titel_5);
// Vervang alle hoofdletters door kleine letters (strtolower)
$titel_7 = strtolower($titel_6);
Op deze manier nemen de stappen veel regels code in beslag. Het is echter ook mogelijk om alles op één regel achter elkaar te zetten. De code wordt dan als volgt:
$titel = strtolower(preg_replace('/[^a-zA-Z0-9\\-]/', '', preg_replace('/\\-\\-+/', '-', str_replace(' ', '-', normaliza(trim($titel))))));
Leer hoe je krachtige en veilig Joomla! websites bouwt? Ook kun je leren hoe je Joomla! websites effectief kunt onderhouden of optimaliseren voor zoekmachines.