Sitede gezinirken / site adresini dinamik olarak ayarlarken tutulan iki (veya daha fazla) paralel (alt) TLD?


10

Alan adı altında bir Alman STK'sı için bir site işletiyorum sub.example.org.
Kısa bir süre önce, sub.example.chİsviçre patlaması için ekledim .

Her iki (alt) alan da aynı fiziksel konuma, bir WP kurulumuna ( çoklu site değil ) işaret ediyor.

Ben öyle ki bu kurulum var sub.example.ch/registermesela, doğru altında bulunan içerik gösterecektir, sub.example.org/register.

Ancak, İsviçreli bir ziyaretçi düzenli yerinde bağlantılar kullanarak siteyi gezdiğinde, genel ayarlarda tanımlandığı gibi "WordPress adresi" (veya "site adresi") kullandığından kaçınılmaz olarak "normal" alan adı alır. , get_home_urlveya get_site_url()(veya daha az derin get_bloginfo()eşdeğerleri) yoluyla.

İdeal olarak , ziyaretçinin siteye ulaşmak için kullandığı alan adı altında sörf yapmaya devam etmesini istiyorum. Bu nedenle, söz konusu işlevlerin dönüş değerini bir şekilde filtrelemem gerektiğini düşünüyorum. Bildiğim kadarıyla mevcut olmayan bir filtre.

  1. Herkes bu tür bir şey deneyimi ve kullanışlı iyi bir çözüm var mı?

  2. Bu belki aptalca bir fikir mi ve ilk etapta bırakmalıyım?

Yanıtlar:


9

Ana bilgisayar için seçenek isteklerine filtre uygulayabilirsiniz.

Çizginizin wp-config.php altında ...

require_once ABSPATH . 'wp-settings.php';

… Aşağıdaki satırları ekleyin:

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()Mevcut önceki değildir ve aşağıdaki konularda bu tür kod tutmalı wp-config.php. Yan etkisi veya işe yaramadığı durumlar olup olmadığını bilmiyorum. Olmamalı, ancak iyice test edin.


Kesinlikle iyice test edeceğim. Şimdi.
Johannes Pille

4
12 saat sonra: İstisnasız çalışır. Değerin gelmesi $_SERVER['HTTP_HOST']oldukça kolay, benim de yaklaşımım olurdu. Bu yanıt verilirken, bloginfo_urlfiltreyi bir eklentiden kullanmaya çalışıyordum . Mı değil iş yapmak. Filtreleme yapılandırma dosyasına koymak için, ancak, sadece düşündüm gün sonra denedim olurdu. Bu çözümün sonucu benim en çılgın beklentilerimi aştı: Sadece bağlantılar güzelce çözülmekle kalmıyor, giriş bilgileri de çalışıyor ve arka uç bile boğulmuyor! Mükemmelliği!
Johannes Pille

1
Her iki (alt) alan aynı WP kurulumuna (çoklu site değil) aynı fiziksel konumu işaret ediyor. Bunu yaparsanız, barındırma hizmetinizde oturum açmanız gerekir. Bir alt alan adı oluşturduğunuzda, alan adı bir belge kökü belirtmeniz gerekir. Burada, WP'nin yüklü olduğu ana Alanınızla aynı yolu seçin. Sonra kodu ekleyin. Mükemmel çalışıyor, SEO (kanonik ve alternatif etiketler) hakkında düşünmeye çalışın
Romain
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.