WPML
状态
已由作者解决
解决于
Tutor LMS v3.1.0
相关插件/主题
Tutor LMS Pro
主题标签
Compatibility

问题概述

在 WPML 中启用“默认语言目录”选项会导致 Tutor LMS 课程编辑页面 URL 失效,从而引发以下问题:

  • URL 编辑框在默认语言目录之后包含双斜杠(//),例如 https://example.com/it//courses/
  • 保存对课程的更改会触发 “Something went wrong” 错误。

临时解决方法

在继续操作之前,请确保已对您的站点进行完整站点备份


  • 打开 …/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,

所有已知问题 →