Как создаются адреса статей

225
06 апреля 2019, 04:10

В пример тот же stackoverflow.com/раздел_статей/статья_о_прекрасной_погоде. Я шаманю сайт на php, знаю вариант с php?id=123, но хотелось бы название транслитом например. Что то мне подсказывает, что создавать ручками для каждой статьи файл с отдельным названием не правильное решение. Подскажите в какую сторону копать?

Answer 1

Внимание! Это велосипедные наработки для сайтов без фреймворков и CMS, не отображают множества вещей, являются лишь отправным шагом и я мог что-то упустить/забыть.

В таблицу с вашими статьями добавьте поле url, в котором будет писаться транслит названия (поле должно быть редактируемым в админке), затем настройте ЧПУ в .htaccess

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) /index.php?query=$1&%{QUERY_STRING} [L]

где query это параметр, отвечающий за показ ваших страниц, например site.com/index.php?query=about будет преобразован в site.com/about/

Затем на PHP получаем наш query

$requestURI=!empty($_GET["query"])?(string)$_GET["query"]:"/";

и ищем страницу в БД, обрабатываем прочие GET-параметры и прочее.

Повторюсь, что это велосипед, изучайте опыт фреймворков (хотя их система ЧПУ мне не нравится)

READ ALSO
Laravel запрос на вывод групп

Laravel запрос на вывод групп

Как мне вывести по группам для определенного teacher

189
Как сделать кнопку Edit?

Как сделать кнопку Edit?

прошу помощи - как сделать кнопку edit для редактирования строки (я чайник) javascript не понимаю, желательно php если возможно

240
Поиск строк по регулярным выражением

Поиск строк по регулярным выражением

Необходимо найти такие строки:

191
Выборка и вывод из двух таблиц

Выборка и вывод из двух таблиц

Может кто подскажет как правильно это сделать? Попробовал по принципу zarname_zar и products

174