WordPress: Cómo agregar atributo al cuerpo

2 minutos de lectura

Quiero agregar Desplazamiento soporte para el menú de navegación, para eso tengo que agregar atributos adicionales data-spy="scroll" data-target=".navbar" hacia body etiqueta.

¿Puedo hacer eso pragmáticamente sin tocar los archivos de temas?

avatar de usuario
tousif

Una forma sería: – Editar header.php Y agrega esos atributos al cuerpo.

La forma alternativa (sin editar archivos de tema) sería crear un complemento que agregue un js que agregue esos atributos al cuerpo. Algo como esto:-

$("body").attr( { data-spy:"scroll", data-target:".navbar" } );

EDITAR
Después de ver las respuestas de Sevi. La forma más adecuada es

function wp_body_classes( $classes )
{
    $classes[] = '" spy="scroll" data-target=".navbar';

    return $classes;
}
add_filter( 'body_class','wp_body_classes', 999 );

  • El WordPress body_class El método de filtro no funciona para agregar atributos de datos.

    – Rao Abid

    12 de septiembre de 2020 a las 5:24


  • El filtro body_class no funcionará si su tema no lo usa

    – tousif

    9 de noviembre de 2020 a las 18:58

  • ¡No está funcionando en absoluto! Los atributos se agregan dentro del atributo de clase en forma de texto sin formato. La respuesta de Mat a continuación es la respuesta real a esta pregunta.

    – Faisal Alvi

    9 de marzo de 2021 a las 6:56

Bueno, encontré la solución a mi pregunta:

function wp_body_classes( $classes )
{
    $classes[] = '" spy="scroll" data-target=".navbar';

    return $classes;
}
add_filter( 'body_class','wp_body_classes', 999 );

Estoy bastante seguro de que esto no se puede hacer sin editar los archivos del tema. Puede probar el método jQuery que tousif ha mencionado anteriormente, pero dudo que funcione, ya que lo más probable es que se active después de que se haya cargado ScrollSpy.

La mejor manera de hacer esto es editar su ‘header.php‘archivo y agregue los atributos al <body> etiqueta. Sin embargo, no debe editar el tema en sí, use un tema secundario: https://codex.wordpress.org/Child_Themes

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad