WPML

问题概述

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

  • 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,

所有已知问题

仍然遇到此问题?

如果更新无法解决问题,请提出支持问题,我们将与您一起排查。