WPML

ภาพรวมของปัญหา

การเปิดใช้งานตัวเลือก “ไดเรกทอรีสำหรับภาษาเริ่มต้น” ใน WPML ทำให้ URL ของหน้าแก้ไขหลักสูตรของ Tutor LMS เสียหาย ซึ่งส่งผลให้เกิดปัญหาต่อไปนี้:

  • กล่องแก้ไข URL มีเครื่องหมายทับสองอัน (//) อยู่หลังไดเรกทอรีภาษาเริ่มต้น เช่น https://example.com/it//courses/
  • การบันทึกการเปลี่ยนแปลงของหลักสูตรทำให้เกิดข้อผิดพลาด “Something went wrong”

วิธีแก้ปัญหาชั่วคราว

ปัญหานี้ได้รับการแก้ไขแล้วใน Tutor LMS v3.1.0 การอัปเดตจะแก้ปัญหานี้บนไซต์ของคุณ ดังนั้นคุณจึงต้องใช้วิธีแก้ปัญหาชั่วคราวนี้เฉพาะเมื่อคุณยังไม่สามารถอัปเดตได้

โปรดตรวจสอบให้แน่ใจว่าคุณได้สำรองข้อมูลไซต์ทั้งหมดของคุณก่อนดำเนินการต่อ

  • เปิดไฟล์ …/wp-content/plugins/tutor/classes/Assets.php
  • ค้นหาบรรทัดที่ 156
  • แทนที่:
    return array(
    	'ajaxurl'                      => admin_url( 'admin-ajax.php' ),
    	'home_url'                     => get_home_url(),
  • ด้วย:
    //workaround compsupp-7724
    $wpml_fix_home_url = get_home_url(); // Default value
    if ( class_exists( 'SitePress' ) ) {
    	$wpml_settings = apply_filters( 'wpml_get_setting', false, 'urls' );
    
    	if ( isset( $wpml_settings['directory_for_default_language'] ) && $wpml_settings['directory_for_default_language'] == '1' ) {
    		$wpml_fix_home_url = site_url();
    	}
    }
    
    return array(
    	'ajaxurl'                      => admin_url( 'admin-ajax.php' ),
    	'home_url'                     => $wpml_fix_home_url,

ปัญหาที่ทราบแล้วทั้งหมด

ยังคงพบปัญหานี้อยู่หรือไม่

หากการอัปเดตไม่สามารถแก้ไขปัญหานี้ได้ ส่งคำถามถึงฝ่ายสนับสนุน และเราจะตรวจสอบร่วมกับคุณ