Пример скрипта ЧПУ
Надо что-то подобное как у kasseler-cms, eleanor, dle и т.п... Для примера работы можно сделать подобие мини-цмс с парой модулей для демонстрации, например: новости, статьи, аккаунт, магазин; категории для новостей, статей и магазина. БД проектировать ненадо, просто таблицы с несколькими полями для каждого модуля. Никаких проверок и защиту делать тоже ненадо. Будет это класс, или несколько функций – неважно, главное чтобы было мультимодульное, т.е. для каждого модуля могут быть разные входящие параметры и разное их количество. Модули будут использоватся свои и со временем их количество может увеличиваться. (Рассматривается варинт не мультимодульного класса, т.е. для каждого модуля надо будет писать новое правило для разбора параметров)
Например:
с чпу
site.ru/news/category/news_name/3/
без чпу
site.ru/index.php?module=news&category=category&name=news_name&page=3
-здесь page для паджинации каментов
с чпу
без чпу
site.ru/index.php?module=news&category=category&page=3
-здесь page для паджинации новостей в категории
подобное и для статей и магазина
Для аккаунта пользователя желательно чтобы в ссылке не фигурировало название модуля:
site.ru/username/3/ – 3-навигация по каментам
Для генерации хотелось бы функцию, которой скармливаешь массив данных, и функция сама генерирует ссылку, например
make_url(array('module'=>'news', 'category'=>'category_name', 'news_name'=>'news-name', 'page'=>'3'));
С этим проблем быть не должно, главное это парсер, которы правильно разберет параметры)
Ну и самое главное – это возможность задавать разделители и окончание для ссылки. Это может быть .html, слеш "/" или вообще без окончания
Пишите свои предложения, ссылки на примеры реализации.