Pregunta sobre Menu Icons by ThemeIsle de Wordpress:

¿Pueden los iconos de líneas de menú SVG?

Un usuario preguntó 👇

Hola, estoy probando los iconos de menú en un servidor local para ver si estoy satisfecho con su comportamiento antes del uso real. Una cosa que me preocupa especialmente es cómo el plugin corrige la carga de SVG como imagen, img. Esperaba que pusiera el SVG en línea.

¿Se puede planificar esto como parte de una actualización?

(@cazuma)

Hace 3 años, 5 meses

Me las arreglé para hacerlo por mi cuenta. Incluya este código en las funciones de su theme.php

add_filter('menu_icons_item_title', 'mytheme_menu_icons_item_title', 10, 4);
function mytheme_menu_icons_item_title($title_with_icon, $id, $meta, $title) {
	if (strrpos($meta['url'], '.svg') !== FALSE && strlen($meta['url']) - strrpos($meta['url'], '.svg') == 4) {
		$svg = file_get_contents($meta['url']);
		$svg = substr($svg, strpos($svg, '<svg ')); // remove file headers
		$title_with_icon = $svg . substr($title_with_icon, strpos($title_with_icon, '<span'));
	}
	return $title_with_icon;
}

¡Espero que ayude!

Lanzador de hilos

(@kbooshco)

Hace 3 años, 5 meses

Vaya, Cazuma, esto parece genial. Lo intento de inmediato. Si funciona o no, te lo haré saber. Gracias.

Lanzador de hilos

(@kbooshco)

Hace 3 años, 5 meses

Hola, de vuelta a ti Cazuma. Realmente funciona, ¡hace que el svg esté en línea! Pero una advertencia … no parece interferir con la configuración de ancho (digamos 1em) del plugin, CSS lo corrigió desde mi código.

Esto resuelve mucho, excepto que sería bueno si el autor del plugin pudiera compartir algunas ideas.

Gracias de nuevo Cazuma, gracias por tu ayuda con el código.

Gracias.

(@kucrut)

Hace 3 años, 5 meses

Gracias por la ayuda Cazuma. Intentaré tener algo de tiempo libre para admitir SVG en línea.

Lanzador de hilos

(@kbooshco)

Hace 3 años, 5 meses

Oh, Dzikri, sería muy amable de tu parte. SVG es la mejor práctica, realmente. Y el soporte para fuentes de iconos debería ser limitado. Yo diría que todos los íconos de la página, sin importar dónde debería estar SVG en línea, y su plugin más la ayuda de Cazuma me ayudaron a lograr eso en un área donde era imposible para mí hacerlo, el menú de navegación.

Esta actualización sería muy bienvenida.

Gracias.

Lanzador de hilos

(@kbooshco)

Hace 3 años, 4 meses

Hola Cazuma, ¿sigues ahí? ¿Tiene alguna idea de por qué recibo este error al aplicar su código?

Advertencia: file_get_contents (// localhost: 3000 / wp-content / uploads / 2017/10 / recommended.svg): no se pudo abrir la transmisión: enlace rechazado en / app / public / wp-content / theme / starter / inc / extras. php en línea 141

¿Solucionó tu problema??

0 / 0

Deja una respuesta 0

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *