Človeku prijazni URL-ji (CPV) v PHP pogoju
V sodobnem svetu se naslovi s številkami, kot so
/page/1, štejejo za nelepše. Lepše je,
ko je za stran navedeno ne njena številka, temveč
besedno ime, ki ustreza naslovu strani, na primer takole: /page/my-first-page.
Takšni naslovi se imenujejo CPV (človeku prijazni URL-ji).
Prisotnost CPV-jev je za uporabnika primernejša kot
ne-povedne številke id.
Poleg tega bodo iskalne naprave zaradi CPV-jev
dvigovale položaje našega spletnega mesta.
Delček URL-ja, ki ustreza imenu strani, se imenuje slug (slug). Dajmo v naši podatkovni bazi našim stranem dodati stolpec s slugi:
| 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> |
Predelajmo zdaj naš pogoj za delo s slugi namesto z ID. Za to popravimo regularni izraz:
<?php
preg_match('#/page/([a-z0-9_-]+)#', $url, $match);
$slug = $match[1];
?>
In v pogoju iskanja strani navedimo slug namesto ID-ja:
<?php
$query = "SELECT * FROM pages WHERE slug='$slug'";
?>
Predelajte vaš pogoj spletnega mesta za delo s CPV-ji. Preizkusite njegovo delovanje.