Mostrando un extracto personalizado de los posts en WordPress
En muchas ocasiones necesitamos mostrar sólo un extracto de nuestros post en el blog, sobre todo cuando creamos un tema personalizado o deseamos ahorrar espacio. Lo común es utilizar el tag<!–more–> para ese efecto, un plugin o la función the_excerpt() a lo largo de mi tiempo trabajando con WordPress, he usado los tres métodos, pero, se me ocurrió que debía haber una forma más sencilla, fácil y transparente de hacer esto. Cada tema dispone de un archivo llamado functions.php en el que se almacenan las funciones especificas para el tema, de esa manera se separan de las funciones del core de wordpress, lo que vamos a hacer, es crear una versión nueva de la función the_content (no vamos a sobreescribirla)
function the_content2($many) { $contenido = get_the_content(); $content = substr($contenido, 0 , $many); $content .= " ... "; echo $content; } |
La variable $many nos permitirá decirle cuantos caracteres queremos mostrar, la función get_the_content() es parte del core de WordPress y devuelve el contenido de un post en bruto, luego con substr pasamos la cantidad de caracteres marcados por $many a una nueva variable llamada $content, misma a la que le concatenamos los típicos puntos suspensivos, al final imprimimos esa variable. Para terminar, hay que abrir el archivo index.php y reemplazar la llamada a the_content por nuestra nueva función, por ejemplo
the_content2(80); // Muestra los primeros 80 caracteres |
Y quedaría algo como esto

Y listo, con eso ya estamos mostrando un sumario de nuestro post de forma transparente, sin depender de ningún plugin, ni usando el famoso tag more.
Recursos Adicionales
- ¿Dudas? Pregunta en los foros





- programarivm
- Ysirr García
- atenea tapia rojas
- jorge
- Ajaxshake