¿Cómo elimino las etiquetas br de wp_list_categories?

2

Si paso 'style' => 'none' como argumento para wp_list_categories , se eliminarán las etiquetas <li> . Eso es genial, pero las etiquetas <br> se inyectan. ¿Cómo puedo eliminarlos?

    
pregunta dave dave 20.11.2015 - 04:08

3 respuestas

2

El nuevo atributo separator de wp_list_categories()

Creo que estás buscando el nuevo atributo separator , que será introducido aquí en WordPress 4.4 que está a la vuelta de la esquina. Localicé el ticket de trac aquí # 9025 .

Entonces puedes usar:

$args = [
    'style'     => 'none',
    'separator' => '', // <-- Removes the default one
];

wp_list_categories( $args );

donde por defecto es 'seperator' => '<br />' ;

Ejemplo:

Obtenemos:

<a href="http://example.tld/category/red/" >Red</a>
<a href="http://example.tld/category/green/" >Green</a>
<a href="http://example.tld/category/blue/" >Blue</a>

en lugar de

<a href="http://example.tld/category/red/" >Red</a><br />
<a href="http://example.tld/category/green/" >Green</a><br />
<a href="http://example.tld/category/blue/" >Blue</a><br />
    
respondido por el birgire 20.11.2015 - 11:13
1

Prueba algo como esto:

$args = array( 
    'echo' => 0,
    // your other parameters
);
echo str_replace( "<br>", "", wp_list_categories( $args ) );
    
respondido por el James Jones 20.11.2015 - 04:17
1

Lamentablemente, no puedo hacer comentarios todavía, pero James Jones tiene razón en wp-includes / category-template.php @ 1103 verá que si el parámetro de estilo no está configurado, producirá un <br /> al final de cada uno. elemento.

lo único que no está bien es que debería estar

str_replace( "<br />", "", wp_list_categories( $args ) );

También ten en cuenta que debes establecer el parámetro echo en falso, de lo contrario, generará el html de inmediato.

    
respondido por el Hans Koch 20.11.2015 - 11:01

Lea otras preguntas en las etiquetas