We all know that wordpress have simple .htaccess code like below
RewriteEngine on
RewriteBase /
# only rewrite if the requested file doesn't exist
RewriteCond %{REQUEST_FILENAME} !-s
# pass the rest of the request into index.php to handle
RewriteRule ^(.*)$ /index.php/$1 [L]
But if I redirect all requests to index.php, I think it becomes pretty cumbersome to handle every rewrite in php. Currently I have a logic in mind, like maintain a db table with all valid redirections. But still I don’t know how to handle rules likes ([0-9]+).
If anyone has implemented something like this before or has a logic in mind, can you please guide me in this matter
The sole purpose am doing this, is because I want flexibility in adding/deleting categories in the menu of my site. I don’t want to go to .htaccess every time and edit it at all places. I want to create more like a CMS where user can add delete categories
My suggestion would be to set up php based routing the basic idea is that you do something like this:
Notice how you just make everythign go to
index.phpbut you dont rewrite any of the variables or anything. This is because you will work out what to based on the pattern of the URL with php. In order to do this youll need to implement a router. Basically a router takes a request and matches it against a pattern and then determines any parameters based on the pattern.There are existing libraries out there to do this for you. For example
Zend_Controller_Router.