Cómo crear una tabla de contenido en una publicación de WordPress

Publicado: 2021-06-10

Una tabla de contenido es una parte necesaria de las publicaciones de WordPress, especialmente las publicaciones largas con muchos encabezados. La creación de una tabla de contenido ayuda a los lectores a seguir y comprender la idea de forma fácil y rápida. Además, también te ayuda a agregar más palabras clave en las publicaciones, lo cual es muy bueno para el SEO.

Tabla de contenido ocultar
  1. 1. Métodos para crear una tabla de contenido
  2. 2. Método 1: utilizar un complemento para crear una tabla de contenido
    1. 2.1. Paso 1: crear y configurar contenido para la tabla de contenido
    2. 2.2. Paso 2: inserta la tabla de contenido en la publicación
    3. 2.3. Paso 3: personalizar la visualización de la tabla de contenido
    4. 2.4. Personaliza la tabla de contenido en cada publicación
  3. 3. Método 2: use código para crear una tabla de contenido.
    1. 3.1. Paso 1: crear la tabla de contenido para la publicación
    2. 3.2. Paso 2: usa CSS para personalizar
  4. 4. Últimas palabras

Métodos para crear una tabla de contenido

Hay 2 métodos para crear una tabla de contenido en una publicación de WordPress.

El primer método es utilizar un complemento. Eso es simple, rápido y gratuito tanto para los expertos en código como para los novatos en WordPress.

El segundo está usando código. Eso le permite personalizar su tabla de contenido, incluso los detalles más pequeños, pero es bastante complicado para los que no codifican. Escribiremos el código para crear una tabla de contenido en esta publicación. ¡Solo cópialo y pégalo!

Primero veamos el proceso de creación de una tabla de contenido con un complemento:

Método 1: use un complemento para crear una tabla de contenido

Paso 1: crear y configurar contenido para la tabla de contenido

Hay muchos complementos gratuitos para crear una tabla de contenido en WordPress. Elegimos la tabla de contenido de LuckyWP porque nos proporciona un resultado hermoso y altamente personalizable. Sin embargo, este complemento tiene bastantes configuraciones, lo que podría confundirlo al principio. Por lo tanto, siga nuestras instrucciones para ahorrar tiempo.

LuckyWP Table of Contents es un complemento gratuito y está disponible en wordpress.org. Simplemente instale y active el complemento en Dashboard .

LuckyWP Table of Contents es un complemento gratuito para crear tablas de contenido en WordPress.

Luego, vaya a Configuración > Tabla de contenido , verá la pantalla de configuración.

Aquí, hay 4 pestañas a las que debe prestar atención: General, Apariencia, Inserción automática, Encabezados de procesamiento . Son pestañas que se utilizan para configurar y personalizar la visualización de la tabla de contenido. Misc. es una pestaña que tiene configuraciones complejas y sin importancia, por lo que puede ignorarla.

Hay algunas secciones a las que debe prestar atención al configurar la tabla de contenido.

En este paso, solo trabaja en la pestaña General .

Hay muchas configuraciones en esta sección. Para ahorrar tiempo, debe concentrarse en las siguientes partes importantes:

  • Numeración: Numerar los títulos. Debe elegir una de estas opciones: sin numeración, números decimales (anidados), números romanos (anidados) .

Elijo números decimales (anidados) , por lo que mi TOC se ve así:

Puede elegir el estilo de los números delante de los títulos.

  • Título: Título del índice. Es Contenido por defecto.

También puede darle un nombre a su tabla de contenido.

Dejemos el resto de configuraciones por defecto, porque eso no afecta mucho a tu TOC.

Haga clic en Guardar cambios para finalizar. Entonces, hemos realizado la configuración general del TOC. Pasemos al siguiente paso.

Paso 2: inserta la tabla de contenido en la publicación

Hay 2 métodos para insertar una tabla de contenido en su publicación: insertando automáticamente y manualmente.

Insertar automáticamente significa que se agrega una tabla de contenido en todas las publicaciones automáticamente. De esta manera, se ahorra mucho tiempo y esfuerzo, pero no funciona si desea insertar una tabla de contenido en solo algunas publicaciones.

Insertar manualmente significa que si desea tener un TOC en una publicación, debe insertarlo usted mismo en esa publicación. Esto puede llevar más tiempo y puede cometer errores.

Introduciremos ambos métodos en detalle. Puedes elegir la opción que más te convenga.

Inserción automática

Vaya a la pestaña Auto Insertar> Habilitar . El complemento elige Publicar como predeterminado. Si no lo desea, puede cambiar a otro tipo de publicación.

En la sección Posición , elija dónde desea insertar la tabla de contenido. ¡No olvide hacer clic en Guardar cambios !

Establezca el tipo de publicación y la posición del índice.

Por lo tanto, todas las publicaciones del tipo de publicación elegido tienen las tablas de contenido.

Inserción manual

Insertar manualmente suena complicado, pero en realidad es muy sencillo. Vaya a la pestaña Procesamiento de encabezados . Allí, elija también el tipo de publicación, luego haga clic en Guardar cambios .

De forma manual, también debe elegir el tipo de publicación.

Luego, vaya al editor de publicaciones de una publicación en el tipo de publicación que eligió, haga clic en Habilitar TOC .

Haga clic en Habilitar TOC en el editor de publicaciones de la publicación en la que desea insertar el carácter.

Ahora, tu TOC está básicamente hecho. Además, incluso podemos diseñar su color, fuente, tamaño de elementos,… para hacerlo más bonito. Siga el siguiente paso.

Paso 3: personalizar la visualización de la tabla de contenido

También hay 2 métodos para personalizar la visualización de la tabla de contenido: personalícela en todas las publicaciones a la vez y personalícela individualmente en cada publicación.

Personalizar la tabla de contenido en todas las publicaciones

Puede personalizar todas las tablas de contenido en detalle yendo a la pestaña Apariencia . Hay muchas configuraciones, como Tamaño de fuente del título, Tamaño de fuente de los elementos, Color del enlace ,…

No es necesario fijarse en todas las configuraciones, solo concéntrese en lo que desea.

Por ejemplo, no me gusta el azul y el tamaño de fuente del título actual. Quiero cambiar el color a gris oscuro y de menor tamaño para que se vean mejor con la publicación. Por lo tanto, personalizaré el tamaño de fuente del título, el tamaño de fuente de los elementos, el color del enlace y mantendré el resto de configuraciones como la siguiente imagen:

Podemos personalizar muchas configuraciones de la tabla de contenido.

Puede configurar el color del texto o el fondo.

Mi TOC después de la personalización se ve así:

Ejemplo de mi tabla de contenido.

Ahora parece mucho más armonioso.

Sin embargo, tal vez desee tener diferentes tablas de contenido en diferentes publicaciones, simplemente desplácese hacia abajo para leer cómo personalizarlo en cada publicación.

Personaliza la tabla de contenido en cada publicación

Este trabajo también es sencillo y rápido. Primero, vaya al editor de publicaciones, elija Tabla de contenido> Personalizar .

Puede personalizar la tabla de cada publicación en el editor de publicaciones.

Aparece una ventana emergente Personalizar tabla de contenido . Verá algunas pestañas conocidas como arriba. Son General, Apariencia y Misc. .

Vaya a la pestaña Apariencia y cambie algunas configuraciones también editando en el Panel de control del complemento. Haga clic en Guardar para finalizar.

Existen configuraciones familiares para personalizar el índice.

Ahora, veamos el resultado final de personalizar la tabla de contenido.

Mi índice después de personalizarlo.

Ambos métodos de personalización traen tablas de contenido muy bonitas y detalladas. Así que eres libre de elegir la forma que quieras.

Ahora, veamos cómo usar el código para crear una tabla de contenido.

Método 2: use el código para crear una tabla de contenido.

Paso 1: crear la tabla de contenido para la publicación

Vaya a Apariencia> Tema> Editor> functions.php .

Luego, agregue el siguiente código en el archivo functions.php para insertar tablas de contenido en las publicaciones.

Nota: Este código es para agregar solo 2 niveles de encabezado en la tabla de contenido .

 function create_toc ($ html) {
    $ toc = '';
    if (is_single ()) {
        if (! $ html) return $ html;
        $ dom = nuevo DOMDocument ();
        libxml_use_internal_errors (verdadero);
        $ dom-> loadHTML (mb_convert_encoding ($ html, 'HTML-ENTITIES', 'UTF-8'));
        libxml_clear_errors ();
        $ toc = '<div class = "toc-bound">
            <div class = "toc-ctr">
                Tabla de contenido
            </div>
            <ul class = "toc"> ';
        $ h2_status = 0;
        $ h3_status = 0;
        $ i = 1;
        foreach ($ dom-> getElementsByTagName ('*') como $ elemento) {
            if ($ elemento-> tagName == 'h2') {
                if ($ h3_status) {
                    $ toc. = '</ul>';
                    $ h3_status = 0;
                    }
                 if ($ h2_status) {
                    $ toc. = '</li>';
                    $ h2_status = 0;
                  }
                  $ h2_status = 1;
                  $ toc. = '<li> <a href="'. get_the_permalink().'#toc-'. $i.'">'. $ elemento-> textContent. '</a>';
                  $ elemento-> setAttribute ('id', 'toc-'. $ i);
                  $ i ++;
            } elseif ($ elemento-> tagName == 'h3') {
                if (! $ h3_status) {
                    $ toc. = '<ul class = "toc-sub">';
                    $ h3_status = 1;
                }
                $ toc. = '<li> <a href="'. get_the_permalink().'#toc-'. $i.'">'. $ elemento-> textContent. '</a> </li>';
                $ elemento-> setAttribute ('id', 'toc-'. $ i);
                $ i ++;
            }
        }
        if ($ h3_status) {
            $ toc. = '</ul>';
        }
        if ($ h2_status) {
            $ toc. = '</li>';
        }
        $ toc. = '</ul> </div>';
        $ html = $ dom-> saveHTML ();
    }
    volver $ toc. $ html;
}
add_filter ('el_contenido', 'crear_toc');

Explicación:

Código Explicación
Función $ toc = '<div class = ”toc-bound”>
<div class = ”toc-ctr”>
Tabla de contenido
</div>
<ul class = ”toc”>
Para agregar un título a la tabla de contenido y mostrarlo encima. Puede reemplazar el texto " tabla de contenido " con cualquier cosa que desee que esté en el título.
Variable h2, h3 Los niveles de encabezados se insertan en la tabla de contenido. Si desea reemplazar h2 , h3 con otras etiquetas, cambie todos los parámetros como h2 , h3 en las etiquetas que desee en el código.
Función $ toc. = '<li> <a href = ”'. get_the_permalink (). '# toc-'. $ i. '”>'. $ elemento-> textContent. '</a>'; Para crear enlaces de saltos a las secciones correspondientes de la publicación tan pronto como haga clic en ella.
Función if ($ h3_status) {
$ toc. = '</ul>';
}
if ($ h2_status) {
$ toc. = '</li>';
}
$ toc. = '</ul> </div>';
$ html = $ dom-> saveHTML ();
}
volver $ toc. $ html;
Para agregar viñetas delante de cada título en la tabla de contenido.

No olvide hacer clic en el archivo Actualizar después de insertar el código.

Inserte el código en el archivo function.php para crear una tabla de contenido.

Entonces, aquí está el resultado:

Usar código para crear una tabla de contenido es muy fácil y aquí está mi resultado.

Por supuesto, necesitamos darle un poco de estilo. Usaremos CSS, una de las herramientas favoritas de todos los programadores.

Paso 2: usa CSS para personalizar

Para personalizar con CSS, vaya al archivo style.css en el Editor de temas . Allí, debe insertar el código que escribe usted mismo para personalizar la tabla de contenido a su gusto.

Por ejemplo, quiero personalizar el color y la intensidad de la tabla de contenido, así que insertaré el siguiente código:

 .toc-bound {
    color de fondo: # 619162;
    color: #fff;
}
.toc-ctr {
    borde inferior: 1px sólido #fff;
    relleno: 10px;
    tamaño de fuente: 20px;
    transformación de texto: mayúsculas;
}
ul.toc {
    tipo de estilo de lista: ninguno;
    relleno: 10px;
    padding-left: 25px;
}
.toc li a {
    color: #fff;
}
ul.toc> li {
    tamaño de fuente: 18px;
    peso de fuente: 700;
    relleno: 5px 0;
}
ul.toc-sub {
    tipo de estilo de lista: ninguno;
}
ul.toc-sub li a {
    peso de fuente: 200;
}

No olvide hacer clic en el archivo Actualizar para guardarlo.

También puede diseñar el índice con CSS.

El resultado final se ve así:

Mi gráfico es más atractivo después de personalizarlo.

En conclusión, tanto el uso de un complemento como la codificación nos brindan las mismas tablas de contenido bonitas. Puede elegir cualquier opción siempre que esté satisfecho.

Ultimas palabras

Como puede ver, crear una tabla de contenido en las publicaciones de WordPress no es nada complejo. Siga nuestro tutorial y tendrá hermosas tablas de contenido. Una buena tabla de contenido hace que su publicación sea más clara y profesional. Por lo tanto, sus espectadores pueden tener experiencias más amigables al leer su blog.

Si tiene alguna pregunta, por favor dígala en el cuadro de comentarios a continuación.