Hace cinco años ya hablábamos de cómo mostrar el excerpt (resumen) de forma automática y en esa ocasión recomendábamos el plugin Advanced Excerpt para mostrar algo más que texto plano en el resumen de nuestras entradas.
Desde entonces el autor del plugin ha ido actualizando hasta llegar a la versión actual (4.2.3) pero en el camino se olvidó de mantener la funcionalidad de la opción "Remove shortcodes from the excerpt. (recommended)".
¿Y cuál es el problema? Por lo pronto, digamos que es conveniente eliminar los shortcodes del resumen pero no podemos hacerlo debido a dicho error en el plugin.
En segundo lugar, puede ocurrir que en el resumen aparezca texto que no deseemos que lo haga. Por ejemplo, la leyenda (caption) de una imagen. Y eso es lo que sucede cuando la imagen está colocada en la parte superior de la entrada. En concreto, aparecerá siempre y cuando ese texto se encuentre dentro del rango de palabras que hayamos marcado en el plugin para mostrar en el resumen.
Cuando insertamos una imagen con leyenda es como si utilizáramos un shortcode ya que el código comienza con un corchete. La imagen propiamente dicha no aparece porque su etiqueta es <img> y ésta sí la neutraliza el plugin. Sin embargo, la leyenda se mantiene entre corchetes por lo que sí se muestra en el resumen.
Veamos dos imágenes para ilustrar el problema:
¿Cómo podemos solucionar el problema? Muy fácil:
1 ) Editamos el archivo "advanced-excerpt.php" que se encuentra en la carpeta "class" (no confundir con el archivo del mismo nombre que se encuentra en la raíz del plugin).
2) Buscamos las líneas 242 y 243
$text = get_the_content( '' ); $text = apply_filters( 'the_content', $text );
y las sustituimos por
$text = get_the_content( '' ); if(1 == $no_shortcode) $text = strip_shortcodes($text); $text = apply_filters('the_content', $text);
De esta forma, los shortcodes serán eliminados del resumen (y la leyenda dejará de mostrarse) si marcamos la opción "Remove shortcodes from the excerpt. (recommended)".
ACTUALIZACIÓN SEP/2018: la versión 2.4.5 resuelve este problema.
Enlace permanente
Hola, gracias por mostrarnos el plugin.
En nuestro caso "Advanced Excerpt" es lo que necesitábamos, sin embargo hemos tenido inconvenientes con el mismo cuando usamos otro plugin dentro del cuerpo del post (fuera del resumen), específicamente con el plugin "Click to Tweet", al usarlo tenemos líneas de error en el home cuando se presenta el resumen del post:
Notice: Undefined variable: handle_code in ...\wp-content\plugins\click-to-tweet-by-todaymade\tm-click-to-tweet.php on line 231
Que, de acuerdo a la ruta del plugin, es:
No hemos encontrado cómo poder solucionarlo. En caso tengas una solución, te agradeceremos mucho.
Saludos!
Enlace permanente
Es posible que el error proceda de
$handle = get_option('twitter-handle');
¿Habéis configurado bien el plugin? ¿habéis cumplimentado el twitter-handle?
Enlace permanente
Sustiuir
$handle = get_option('twitter-handle');
por
$handle = get_option('twitter-handle');
echo 'handle = ' . $handle;
Sustituir
$handle_code = "&via=".$handle."&related=".$handle;
por
$handle_code = "&via=".$handle."&related=".$handle;
echo 'handle_code = ' . $handle_code;
A ver qué valores os salen y lo comentamos.