# ЧПУ в движке на PHP

В современном мире адреса с циферками вида `/page/1` считаются некрасивыми. Более красиво, когда для страницы указывается не ее номер, а текстовое имя, соответствующее тайтлу страницы, например, вот так: `/page/my-first-page`.

Такие адреса называются ЧПУ - человеко-понятные урл. Наличие ЧПУ удобнее пользователю, чем ничего не говорящие ему номера `id`. Кроме того, за ЧПУ поисковые системы будут повышать позиции нашего сайта.

Кусочек урла, соответствующей имени страницы, называется слаг (slug). Давайте в нашей базе данных добавим нашим страницам колонку со слагами:

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>

Переделаем теперь наш движок на работу со слагами вместо айди. Для этого исправим регулярку:

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

И в условии поиска страницы укажем слаг вместо айди:

`<?php $query = "SELECT * FROM pages WHERE slug='$slug'"; ?>`

Переделайте ваш движок сайта на работу с ЧПУ. Потестируйте его работу.

←→
↑