Schnipsel: SVG im Block Editor bzw. Gutenberg erlauben

Vor ca. einer Stunde fragte jemand im WordPress Forum, ob jemand eine Lösung für das SVG-Problem in WordPress 5.0.1 hat. Ich habe mir den Code einiger Plugins im Repository angeschaut und folgende Lösung gefunden, die eigentlich für ältere Versionen von WordPress angedacht war.

add_filter( 'wp_check_filetype_and_ext', 'my_svgs_disable_real_mime_check', 10, 4 );
function my_svgs_disable_real_mime_check( $data, $file, $filename, $mimes ) {
  $wp_filetype = wp_check_filetype( $filename, $mimes );	
  $ext = $wp_filetype['ext'];
  $type = $wp_filetype['type'];
  $proper_filename = $data['proper_filename'];
  return compact( 'ext', 'type', 'proper_filename' );
}

So funktioniert dann auch der folgende Code wie gewohnt:

add_filter( 'upload_mimes', 'my_custom_mime_types' );
function my_custom_mime_types( $mimes ) {
  $mimes['svg'] = 'image/svg+xml';
  $mimes['svgz'] = 'image/svg+xml';
  return $mimes;
}

Je nach WordPress Theme, müsst ihr dann die Breitenangaben mit CSS anpassen. Dort sind für die Bildausrichtung häufig maximale Breite usw. angegeben. Wenn ihr die einfach auskommentiert, sollte alles wie gewohnt funktionieren.

.alignleft img,
.alignright img,
.alignleft figcaption,
.alignright figcaption {
  /* max-width: 50%; */
  /* width: 50%; */
}

Denkt nur bitte daran, dass wenn ihr ein kostenloses oder kostenpflichtiges Theme im Einsatz habt, ihr die Änderungen mit CSS jedes Mal erneut machen müsst.


18.12.2018: Wir haben jetzt von “offizieller” Seite aus, eine Lösung mitgeteilt bekommen, die jedoch in jeder SVG eine Änderung verlangt (für mich persönlich, ist das keine Lösung). Ihr müsst dafür in jede eure SVG (sofern nicht vorhanden), folgenden Schnipsel an den Anfang setzen:

<?xml version="1.0" encoding="utf-8"?>

Links zum Thema

Hat dir der Beitrag gefallen?
Ja
Nein

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Cookies für eigene Zwecke. Diese Cookies sind für die Nutzung der Website notwendig.OKMehr erfahren