WPML
Status
Offen
Gemeldet für
WPML Media Translation 2.7.0
Zugehöriges Plugin/Theme
SVG Support
Themen-Tags
Compatibility

Übersicht über das Problem

Wenn Sie das Plugin SVG Support verwenden, werden Sie feststellen, dass die SVG-Bild-URL unvollständig ist, wenn das Plugin WPML Media Translation aktiv ist. Zum Beispiel:

  • Mit aktiviertem WPML Media Translation: https://domain.com/wp-content/uploads/logo.svg
  • Ohne aktiviertes WPML Media Translation: https://domain.com/wp-content/uploads/2022/05/logo.svg

Problemumgehung

  • Fügen Sie das folgende Snippet zu Ihrer Theme-Datei functions.php hinzu:
    // 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;
    }

Alle bekannten Probleme →