Ho recentemente modificato la struttura dei link permanenti del mio blog in inglese cambiando il pattern anno/mese/titolo
in /titolo
. Il problema รจ che alcuni link interni usavano ancora la vecchia struttura. Per questo motivo ho utilizzato JavaScript per una sostituzione mirata.
La seguente funzione di utility esegue la sostituzione utilizzando le espressioni regolari:
var changePermalinks = function() {
var a = document.getElementsByTagName('a'),
oldPattern = /http:\/\/blog\.gabrieleromanato\.com\/([0-9]{4})\/([0-9]{2})\/(.*)/g,
len = a.length,
i;
for (i = 0; i < len; i++) {
var link = a[i];
var url = link.href;
if (oldPattern.test(url)) {
link.setAttribute('href', url.replace(oldPattern, 'http://blog.gabrieleromanato.com/$3'));
}
}
};
Nota
Trattandosi di espressioni regolari di tipo PCRE (Perl-Compatible Regular Expressions), potete usare lo stesso approccio con un filtro di WordPress su
the_content
utilizzando gli stessi pattern opportunamente adattati.