Trick # 28 | Dieser Beitrag beinhaltet 488 Wörter. – Geschätzte Lesezeit: ca. 3 Minuten.
Besonders wenn es um Logo-Grafiken geht, trifft man als WebentwicklerIn irgendwann auf SVG-Files. Doch dieses Dateiformat lässt sich ohne Eingriff nicht ohne weiteres in die WordPress-Mediathek hochladen. Von Haus aus möchte die nur gängigere Bildformate zulassen. Dieser Tipp schafft Abhilfe.
Der folgende Code muss in der functions.php (Design/Theme-Editor) untergebracht werden:
// SVG-Upload erlauben
function svgimg_types($file_types){
$new_filetypes = array();
$new_filetypes['svg'] = 'image/svg+xml';
$file_types = array_merge($file_types, $new_filetypes );
return $file_types;
}
add_action('upload_mimes', 'svgimg_types');
// SVG in der Mediathek anzeigen
function svg_media_thumbnails($response, $attachment, $meta){
if($response['type'] === 'image' && $response['subtype'] === 'svg+xml' && class_exists('SimpleXMLElement'))
{
try {
$path = get_attached_file($attachment->ID);
if(@file_exists($path))
{
$svg = new SimpleXMLElement(@file_get_contents($path));
$src = $response['url'];
$width = (int) $svg['width'];
$height = (int) $svg['height'];
//Media Gallerie
$response['image'] = compact( 'src', 'width', 'height' );
$response['thumb'] = compact( 'src', 'width', 'height' );
//Media Einzelbild
$response['sizes']['full'] = array(
'height' => $height,
'width' => $width,
'url' => $src,
'orientation' => $height > $width ? 'portrait' : 'landscape',
);
}
}
catch(Exception $e){}
}
return $response;
}
add_filter('wp_prepare_attachment_for_js', 'svg_media_thumbnails', 10, 3);
Der Code besteht eigentlich aus zwei Teilen:
- Zunächst wird der Upload der SVG-Files zugelassen (Zeilen 2-8)
- Anschliessend wird die Mediathek veranlasst, die SVG-Dateien auch anzuzeigen (Zeilen 10-37)
Damit sollte Ihre WordPress-Installation auch SVG verarbeiten können.
Werbung
Die meisten Website-Verantwortlichen sind zunächst mal sehr beunruhigt, wenn sie das erste Mal statt der adrett zurecht gemachten Website nichts sehen. Bzw. eine leere, weisse Seite, die auch als «White Screen of Death» bezeichnet wird. Es ...
Zwei Binsenwahrheiten: 1. Bilder machen eine Website hübsch; 2. Bilder machen eine Website langsam. Um die Ladezeit der Website zu verbessern, hat WordPress seit der Version 5.5 ein «lazy loading» eingebaut. Dieses bewirkt, dass der Aufbau der ...
WordPress hat für Seiten und Beiträge einen Papierkorb implementiert. Der ist sehr praktisch, falls man einmal einen Inhalt versehentlich löscht - aus dem Papierkorb lässt sich alles wiederherstellen oder endgültig löschen. Auch WordPress ...
Wenn Sie Formulare auf Ihrer Website verwenden, werden Sie dies ziemlich sicher mit einem Formular-Plugin bewerkstelligen. Falls dieses Plugin «Caldera Forms» heisst, sollten Sie weiterlesen. In wenigen Tagen wird nämlich «Caldera Forms» ...
Keine Inhalte gefunden.


