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:

  1. Si presuppone che sul webserver sia installato e ben configurato il modulo mod_rewrite di Apache.
  2. La struttura dell’url costruito da WordPress per arrivare alla pagina 1234 è http://miosito.it/?page_id=1234
  3. La regola dovrà prevedere che tutte le richieste che arrivano alla suddetta pagina dovranno essere dirottate verso il sito http://example.com
  4. 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.


Commenti

2 risposte a “Dirottare una pagina di WordPress verso un sito esterno”

  1. Fantastico, complimenti..ma mi sfugge un particolare..come la si formatta la pagina sull’altro sito? Io sposto questa pagina http://www.menabonews.it/storm/ cliccando AMMINISTRATIVE 2012 INTERVISTE ed apro http://www.menabonews.it/notizieprima/screamfromthestorm.php?page_id=41 ma non mi ripropone gli articoli di wordpress. Come gli richiamo nel codice? scusa magari è banale..ti saluto e ti ringrazio

    1. Ciao Pierre, grazie per i complimenti, penso che il problema sia legato al link specificato nell’htaccess che è differente rispetto a quello da te indicato nel commento.
      La formattazione invece è altra cosa: la struttura del sito di destinazione non è condizionata dal sito di provenienza. Ma forse sono io che ho compreso male la tua domanda.