Dirottare una pagina di WordPress verso un sito esterno
Spesso mi capita di cimentarmi nella definizione di regole di riscrittura degli URL (Rewrite Rules). Negli ultimi giorni mi è stato chiesto come dirottare una precisa pagina di WordPress verso un particolare sito web.
La soluzione è servita!
Presupponendo che l’installazione di wordpress si presenta con la modalità predefinita di permalink (?page_id=0000) si vuole dirottare la pagina con ID 1234 verso il sito http://example.com.
Ecco le considerazioni da cui partire:
- Si presuppone che sul webserver sia installato e ben configurato il modulo mod_rewrite di Apache.
- La struttura dell’url costruito da WordPress per arrivare alla pagina 1234 è http://miosito.it/?page_id=1234
- La regola dovrà prevedere che tutte le richieste che arrivano alla suddetta pagina dovranno essere dirottate verso il sito http://example.com
- Per una corretta indicizzazione sui motori di ricerca la pagina 1234 dovrà rispondere con un codice di Redirect 301 (la pagina è stata trasferita altrove)
La regola di rewrite da utilizzare per il suddetto scopo è la seguente:
RewriteEngine on RewriteCond %{QUERY_STRING} page_id=1234 RewriteRule .* http://example.com [R=301,L]
Maggiori informazioni sulle Rewrite Rules e sul mod_rewrite potete trovarle nella documentazione ufficiale.