Deux (ou plusieurs) TLD parallèles conservés lors de la navigation sur le site / définissant de manière dynamique l'adresse du site?

10

Je gère un site pour une ONG allemande sous le domaine sub.example.org .
Récemment, j'ai ajouté sub.example.ch pour sa spin-off suisse.

Les deux (sous-) domaines pointent vers le même emplacement physique, une installation WP ( pas multisite).

Je l'ai configuré de telle sorte que sub.example.ch/register , par exemple, affiche correctement le contenu trouvé sous sub.example.org/register .

Cependant, lorsqu'un visiteur suisse navigue sur le site en utilisant des liens réguliers sur son site, il se retrouvera inévitablement dans le domaine "normal", car ceux-ci utilisent l'adresse "WordPress" (ou "adresse du site") telle que définie. dans les paramètres généraux, soit via get_home_url ou get_site_url() (ou leurs équivalents moins profonds get_bloginfo() ).

Idéalement, , j'aimerais que le visiteur continue à surfer sous le domaine qu'il utilisait pour accéder au site. Par conséquent, je suppose que je devrais en quelque sorte filtrer la valeur de retour des fonctions mentionnées. Un filtre qui, à ma connaissance, n'existe pas.

  1. Quelqu'un at-il de l'expérience avec ce genre de chose et une solution décente à portée de main?

  2. Est-ce peut-être une idée idiote et je devrais la laisser partir en premier?

posée Johannes Pille 21.04.2013 - 22:17

1 réponse

9

Vous pouvez filtrer les demandes d'options pour l'hôte.

Dans votre wp-config.php en dessous de la ligne…

require_once ABSPATH . 'wp-settings.php';

… ajoutez les lignes suivantes:

add_filter( 'pre_option_home', 'set_current_host' );
add_filter( 'pre_option_siteurl', 'set_current_host' );

function set_current_host()
{
    return 'http://' . $_SERVER['HTTP_HOST'];
}

add_filter() n'est pas disponible plus tôt et vous devriez conserver ce code dans votre wp-config.php . Je ne sais pas s’il existe des effets secondaires ou des cas où cela ne fonctionne pas. Cela ne devrait pas arriver, mais testez-le soigneusement.

    
réponse donnée fuxia 21.04.2013 - 23:03

Lire d'autres questions sur les étiquettes