TLD สองตัว (หรือมากกว่า) ขนาน (sub-) ที่เก็บไว้เมื่อท่องเว็บไซต์ / ตั้งค่าที่อยู่ของเว็บไซต์แบบไดนามิกหรือไม่


10

sub.example.orgฉันกำลังใช้เว็บไซต์สำหรับองค์กรพัฒนาเอกชนเยอรมันภายใต้โดเมน
เมื่อเร็ว ๆ นี้ฉันได้เพิ่มsub.example.chสวิตเซอร์แลนด์ของสวิส

ทั้งสองโดเมน (ย่อย -) ชี้ไปที่ตำแหน่งทางกายภาพเดียวกันคือการติดตั้ง WP ( ไม่ใช่หลายไซต์)

ฉันมีมันติดตั้งดังกล่าวว่าตัวอย่างเช่นอย่างถูกต้องจะแสดงเนื้อหาที่พบภายใต้sub.example.ch/registersub.example.org/register

อย่างไรก็ตามเมื่อผู้เข้าชมชาวสวิสท่องเว็บไซต์โดยใช้ลิงก์ในสถานที่ปกติเขาหรือเธอจะต้องจบลงที่โดเมน "ปกติ" เนื่องจากผู้ใช้งาน "WordPress address" (หรือ "ที่อยู่ไซต์") ตามที่กำหนดไว้ในการตั้งค่าทั่วไป ไม่ว่าจะผ่านget_home_urlหรือget_site_url()(หรือget_bloginfo()เทียบเท่าน้อยกว่าของพวกเขาลึก)

เป็นการดีที่ฉันต้องการให้ผู้เข้าชมท่องภายใต้โดเมนที่เขาหรือเธอเคยเข้าถึงเว็บไซต์ ดังนั้นฉันคิดว่าฉันจะต้องกรองค่าตอบแทนของฟังก์ชั่นดังกล่าว ไม่มีตัวกรองซึ่งเท่าที่ฉันรู้

  1. ใครบ้างมีประสบการณ์กับสิ่งเหล่านี้และทางออกที่ดีมีประโยชน์หรือไม่?

  2. นี่อาจเป็นความคิดที่โง่และฉันควรปล่อยให้มันเป็นที่แรก?

คำตอบ:


9

คุณสามารถกรองคำขอตัวเลือกสำหรับโฮสต์

ในบรรทัดwp-config.php ด้านล่างของคุณ...

require_once ABSPATH . 'wp-settings.php';

... เพิ่มบรรทัดต่อไปนี้:

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()wp-config.phpไม่สามารถใช้งานก่อนหน้านี้และคุณควรเก็บรหัสดังกล่าวในของคุณ ฉันไม่รู้ว่ามีผลข้างเคียงหรือกรณีที่ใช้ไม่ได้ ไม่ควรเกิดขึ้น แต่ทดสอบอย่างละเอียด


ฉันจะทดสอบอย่างละเอียดถี่ถ้วน ตอนนี้
Johannes Pille

4
12 ชั่วโมงต่อมา: ทำงานได้โดยไม่มีข้อยกเว้น คุณค่าที่ได้รับนั้นมาจากความ$_SERVER['HTTP_HOST']ตรงไปตรงมาและนั่นก็เป็นแนวทางของฉันเช่นกัน ขณะนี้กำลังตอบอยู่ฉันพยายามใช้bloginfo_urlตัวกรองจากปลั๊กอิน ไม่ได้ทำงาน อย่างไรก็ตามหากต้องการใส่การกรองลงในไฟล์การกำหนดค่าฉันจะลองหลังจากผ่านไปหลายวันหากพิจารณาทั้งหมด ผลลัพธ์ของการแก้ปัญหานี้เกินความคาดหมายของฉันมาก: ไม่เพียง แต่การเชื่อมโยงจะแก้ไขได้อย่างดี แต่ข้อมูลประจำตัวสำหรับเข้าสู่ระบบก็ใช้ได้เช่นกันและแม้แต่แบ็คเอนด์ก็ไม่สำลัก! Awesomeness!
Johannes Pille

1
ทั้งสองโดเมน (ย่อย -) ชี้ไปที่ตำแหน่งทางกายภาพเดียวกันคือการติดตั้ง WP (ไม่ใช่หลายไซต์) คุณต้องลงชื่อเข้าใช้บริการโฮสติ้งของคุณ เมื่อคุณสร้างโดเมนย่อยโดเมนคุณจะต้องระบุรูทเอกสาร ที่นี่เลือกเส้นทางเดียวกับโดเมนหลักของคุณที่ติดตั้ง WP ไว้ จากนั้นเพิ่มรหัส ทำงานอย่างสมบูรณ์แบบลองนึกถึง SEO (แท็กบัญญัติและแท็กอื่น)
Romain
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.