WPML
Статус
Открыто
Заявлено для
WPML Media Translation 2.7.0
Связанный плагин/тема
SVG Support
Теги темы
Compatibility

Обзор проблемы

Если Вы используете плагин SVG Support, Вы заметите, что при активном плагине WPML Media Translation URL изображения SVG является неполным. Например:

  • Когда WPML Media Translation активирован: https://domain.com/wp-content/uploads/logo.svg
  • Когда WPML Media Translation не активирован: https://domain.com/wp-content/uploads/2022/05/logo.svg

Обходное решение

  • Добавьте следующий фрагмент кода в файл Вашей темы оформления functions.php:
    // WPML Workaround for compsupp-6933
    add_filter('wp_get_attachment_metadata', 'wpml_compsupp6933_fix_attachment_metadata_file_path', 10, 2);
    
    function wpml_compsupp6933_fix_attachment_metadata_file_path($data, $attachment_id) {
    
    	// Only apply the workaround if WPML Media and SVG Support plugins are active
    	if( class_exists('WPML_Media') && function_exists('bodhi_svgs_generate_svg_attachment_metadata') ) {
    		
    		if (isset($data['file']) && !preg_match('/\d{4}\/\d{2}\//', $data['file'])) {
    			// Get the upload directory info
    			$upload_dir_info = wp_upload_dir();
    	
    			// Extract the year and month from the basedir
    			$year_month = date('Y/m', strtotime(get_post_field('post_date', $attachment_id)));
    	
    			// Prepend the year and month to the file
    			$data['file'] = $year_month . '/' . $data['file'];
    			
    		}
    	}    
    
        return $data;
    }

Все известные проблемы →