PHP қозғалтқышындағы ЧПУ
Қазіргі заманғы әлемде нөмірлері бар мекенжайлар
/page/1 әдемі емес деп саналады. Бет үшін
оның нөмірі емес, бет тайтылына сәйкес келетін
мәтіндік аты көрсетілгенде әдемірек, мысалы, мынай: /page/my-first-page.
Мұндай мекенжайлар ЧПУ (адамға түсінікті урл) деп аталады.
ЧПУ болуы пайдаланушы үшін оған ештеңе айтпайтын
id нөмірлеріне қарағанда ыңғайлы.
Сонымен қатар, іздеу жүйелері ЧПУ үшін біздің сайтымыздың
позицияларын көтереді.
Бет атауына сәйкес келетін урл бөлігі слаг (slug) деп аталады. Келіңіздер біздің дерекқорымызда беттерге слагтар бағанасын қосайық:
| 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> |
Енді біздің қозғалтқышты айди орнына слагтармен жұмыс істеуге қайта жасайық. Ол үшін регулярды түзетейік:
<?php
preg_match('#/page/([a-z0-9_-]+)#', $url, $match);
$slug = $match[1];
?>
Және бетті іздеу шартында айди орнына слагты көрсетейік:
<?php
$query = "SELECT * FROM pages WHERE slug='$slug'";
?>
Сайтыңыздың қозғалтқышын ЧПУ-мен жұмыс істеуге қайта жасаңыз. Оның жұмысын сынап көріңіз.