Plugin RewriteURLs (v2.3.3) [Flatpress]

Changelog

I’ve fixed a bug in the plugin. There wasn’t a negation in an if, so the cache of categories was always empty and the system used the fallback link (the one with the get parameter).

Now I’ve fixed it.

I’m sorry but I haven’t seen until 5 minutes ago.

Description of the plugin

This is an alternative to PrettyURLs.

Why did I write it if there is also PrettyURLs in the standard distribution of Flatpress?

I was fed-up of PrettyURLs errors and problems, so I’ve write my alternative.

It’s 100% compatible with PrettyURLs. It just doesn’t have the administration panel, however I think that it’s not a problem editing the .htaccess file using your FTP client. However if you used PrettyURLs you can directly swtich to this plugin.

New features are for example the correct handling of the next/prev page link (who talked about custom GET params?) and redirect of files that exist in plugins directory but have a wrong link.

Get it

License: GNU GPL v2

Download: rewriteurls_v2.3.3.tar.gz

Plugin RewriteURLs (v2.3.2) [Flatpress]

English

Hi, I’ve corrected another small bug of the RewriteURLs plugin.

It didn’t handle correctly the feed of comments.

License: GNU GPL v2

Download

Italiano

Ho corretto un altro piccolo bug del plugin RewriteURLs.

Non prendeva i feed dei commenti.

Licenza: GNU GPLv2

Download

Note sul routing degli URL in PHP

L’uso del mod_rewrite è una pratica molto diffusa e il “routing degli URL” è alla base di molti framework PHP.

Per routing degli URL intendo associare a miosito.tld/aaa/bbb/ccc/ddd l’azione bbb del controller aaa passando i parametri ccc e ddd.

Per esempio per un blog, per poter modificare un post l’URL potrebbe essere miosito.tld/admin/edit/mio-id-post.

Arrivare fino a questo passo è abbastanza facile.

In pratica si riscrivono gli URL tipo miosito.tld/etc/etc in miosito.tld/index.php/etc/etc.

Per fare ciò bisogna ricorrere alla configurazione del webserver.

Si otterrà quindi la variable PHP $_SERVER['PATH_INFO']. Se non la ottenete potete usare anche $_SERVER['REQUEST_URI'] eliminando il prefisso del sito (Flatpress utilizza questo metodo).

Supponiamo di avere in $url allora la parte con i parametri.

Ora divido l’URL con le slash in modo da ottenere un array con tutti i vari parametri.

$url=explode('/', $url);

Arrivati a questo punto ci sono due diversi metodi per continuare: il primo è eliminare tutti gli elementi vuoti ovvero quelli creati per esempio dalle doppie slash, il secondo è quello di tenerli però pulire l’array in modo da avere almeno i primi due elementi pieni. … [Leggi il resto]