Hoy en AyudaWordPress.com | ![]() |
Formatos en los extractos automáticos Posted: 10 Sep 2014 12:00 AM PDT Los extractos de WordPress son una maravilla, un elemento a tener en cuenta siempre, pues son esa pequeña parte del texto que se muestra en la portada de nuestra web que, cuando están bien hechos, consiguen atraer el interés del lector sobre el artículo en cuestión.
Además, actualmente la mayoría de los temas WordPress modernos usan extractos en portada. Salvo los temas estilo Blog, todos los demás (rejilla, revista, portafolio, etc) muestran extractos en portada aunque no se definan expresamente, la mayoría los crean automáticamente. Por supuesto, siempre puedes forzar los extractos mediante la etiqueta “more“ del editor, o gracias a la maravillosa caja meta del editor de WordPress, pero es una liturgia que pocos blogueros utilizan, aunque deberían. Y luego está el tema de los formatos … Si usas la caja de extractos puedes crearlos con HTML, o incluso hacerlo WYSIWYG como ya vimos, pero tanto si creas los extractos mediante la etiqueta “more” como si el tema los genera automáticamente debes saber que WordPress eliminará todos los formatos del texto, todo el HTML y los shortcodes. Este funcionamiento por defecto, que suele ser la mejor opción la mayoría de las veces, no siempre es lo deseado. Está bien que ofusque los shortcodes porque podrían destrozar tu portada con funcionalidades extra que arruinarían tu diseño, pero en muchas ocasiones querrías destacar algún texto en negrita en portada, o incluso algún enlace (sin pasarse), y WordPress por defecto los fulmina en los extractos. Pero todo tiene solución en WordPress, y esto también, así que si quieres que WordPress no elimine los formatos en los extractos automáticos puedes crear esta función y añadirla a tu plugin de funciones o al fichero //Formato en extractos function custom_wp_trim_excerpt($text) { $raw_excerpt = $text; if ( '' == $text ) { //Recupera el contenido de la entrada. $text = get_the_content(''); $text = strip_shortcodes( $text ); $text = apply_filters('the_content', $text); $text = str_replace(']]>', ']]>', $text); // el siguiente código establece el extracto a 55 palabras - puedes cambiar este número al que mejor se ajuste a tu web $excerpt_length = apply_filters('excerpt_length', 55); // el siguiente código define qué aparece al final del extracto, en este caso … $excerpt_more = apply_filters('excerpt_more', ' ' . '...'); $words = preg_split("/[\n\r\t ]+/", $text, $excerpt_length + 1, PREG_SPLIT_NO_EMPTY); if ( count($words) > $excerpt_length ) { array_pop($words); $text = implode(' ', $words); $text = force_balance_tags( $text ); $text = $text . $excerpt_more; } else { $text = implode(' ', $words); } } return apply_filters('wp_trim_excerpt', $text, $raw_excerpt); } remove_filter('get_the_excerpt', 'wp_trim_excerpt'); add_filter('get_the_excerpt', 'custom_wp_trim_excerpt'); Cuando termines guardas los cambios y a partir de ese momento los extractos respetarán los formatos del texto, pero no los shortcodes, lo que no deja de ser la mejor opción ¿no crees? |
You are subscribed to email updates from Ayuda WordPress To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
No hay comentarios:
Publicar un comentario