CNC PHP dzinī
Mūsdienu pasaulē adreses ar cipariņiem formas
/page/1 tiek uzskatītas par neglītām. Daudz
glītāk ir, kad lapai norādīts nevis
tās numurs, bet teksta nosaukums, kas atbilst
lapas virsrakstam, piemēram, šādi: /page/my-first-page.
Šādas adreses sauc par CNC (cilvēkam saprotami URL).
CNC klātbūtne ir ērtāka lietotājam nekā
neko nenosakoši viņam numuri id.
Turklāt, meklētājsistēmas CNC dēļ
paaugstinās mūsu vietnes pozīcijas.
URL daļa, kas atbilst lapas nosaukumam, tiek saukta par slaid (slug). Pieņemsim mūsu datu bāzē pievienosim mūsu lapām kolonnu ar slaidiem:
| 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> |
Pārveidosim tagad mūsu dzinī uz darbu ar slaidiem aizstājot id. Lai to izdarītu, labosim regulāro izteiksmi:
<?php
preg_match('#/page/([a-z0-9_-]+)#', $url, $match);
$slug = $match[1];
?>
Un lapas meklēšanas nosacījumā norādīsim slaidu aizstājot id:
<?php
$query = "SELECT * FROM pages WHERE slug='$slug'";
?>
Pārveidojiet savu vietnes dzinī uz darbu ar CNC. Pārbaudiet tā darbību.