SEO-friendly URL (slug) u PHP motoru

U modernom svetu, adrese sa brojkama poput /page/1 smatraju se nelepim. Lepše je kada se za stranicu ne navodi njen broj, već tekstualno ime koje odgovara naslovu (title) stranice, na primer, ovako: /page/my-first-page.

Takve adrese se zovu SEO-friendly URL (ljudski-razumljivi URL). Prisustvo SEO-friendly URL-ova je korisniku prikladnije od beznačajnih brojeva id. Pored toga, zbog SEO-friendly URL-ova će pretraživači poboljšati pozicije našeg sajta.

Deo URL-a koji odgovara imenu stranice zove se slug (slug). Hajde da u našoj bazi podataka našim stranicama dodamo kolonu za slugove:

pages
id slug title content
1 my-first-page title1 <div> content1 </div>
2 my-second-page title2 <div> content2 </div>
3 my-third-page title3 <div> content3 </div>

Sada prepravimo naš motor da radi sa slugovima umesto sa ID-evima. Za to ispravimo regularni izraz:

php<?php
  preg_match('#/page/([a-z0-9_-]+)#', $url, $match);
  $slug = $match[1];
?>

I u uslovu za pretragu stranice navedimo slug umesto ID-a:

php<?php
  $query = "SELECT * FROM pages WHERE slug='$slug'";
?>
Задание 1

Prilagodite vaš motor sajta da radi sa SEO-friendly URL-ovima (slugovima). Testirajte njegov rad.