ナビゲーションをスキップする

Open

Reported for: WPML Media Translation 2.7.0

Topic Tags: Compatibility

Overview of the issue

If you are using the SVG Support plugin, you will notice that when the WPML Media Translation plugin is active, the SVG image URL is incomplete. For example:

  • With WPML Media Translation activated: https://domain.com/wp-content/uploads/logo.svg
  • Without WPML Media Translation activated: https://domain.com/wp-content/uploads/2022/05/logo.svg

Workaround

  • Add the following snippet to your functions.php theme file:
    // 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;
    }
    

4 返答 へ “SVG Support - Activating WPML Media strips uploads folders from SVG image url”

    • Hello Dirk,
      After adding this snippet, please try to upload the image again. If it still does not work, open a chat in our assistance channel, in that way, one of our specialists will be able to investigate your case and help you better.
      Regards

返答する

トピックからそれないようにし、他のユーザーを尊重してください。この投稿に関係のない問題についてサポートが必要な場合は、サポート フォーラムを使用してチャットを開始するか、チケットを送信してください。

これらのタグを使用できます:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>