Чистые Wordpress-подобные URL с помощью PHP и Apache - PullRequest
1 голос
/ 11 июля 2011

Я хочу знать, как сделать чистый URL с помощью PHP и Apache. Как WordPress делает.

Например, в WordPress есть только один файл index.php, который обрабатывает все URL. я хочу знать, как это происходит?

как:

example.com / about или http://www.example.com/about/ дают index.php некоторую информацию для генерации страницы.

Есть много других ресурсов в сети, которые могут генерировать .htaccess, но есть специфичные для файла только такие как:

example.com / products / cat1 / 10 переходит на example.com / products.php? C = cat1 & id = 10

я не хочу этого ... я хочу, чтобы все запросы на странице заканчивались с предоставлением некоторой информации php, а затем с созданием страницы php ...

Каким будет код .htaccess и как php будет обрабатывать запрос.

Ответы [ 3 ]

0 голосов
/ 11 июля 2011

Просто перерисовайте страницу, используя php, затем перерисовайте ваш URL, используя apache

0 голосов
/ 11 июля 2011

Вау!Это ТАК раздутый вопрос.Существует множество способов сделать то, что вы хотите.По сути, вы должны следовать одному простому шаблону:

  1. Вы передаете query string в index.php (только этот файл будет обрабатывать все запросы, поэтому я рекомендую вам следовать MVC pattern в данном случае)
  2. В вашем index.php вы анализируете query string (диспетчеризацию), так что вы знаете, что вам следует делать (часть строки запроса должна указывать каким-либо образом, на какой контроллер и вызывается действие).
  3. Вы передаете (анализируете) параметры запроса некоторой функции (которая является action в MVC), которая может быть методом класса (довольно распространенный подход, когда класс controller содержит методы-действия)

Вы должны написать свой собственный Url-Mapper, чтобы он мог знать, какой контроллер нужен и какое действие должно быть выполнено, основываясь на строке запроса.

Кстати, почему бы вам не углубиться в WP?код, если вам действительно нравится его управление URL?

0 голосов
/ 11 июля 2011

Звучит так, как будто вы хотите использовать шаблон фронт-контроллера.Есть много направлений, которые вы можете использовать с этим, но если вы сделаете быстрый поиск в Google , вы найдете множество мест для начала.

...