He tenido que arreglar un problema molesto en un blog de WordPress: los usuarios dejaron comentarios con frases largas. Esto produjo la publicación del texto, tanto en el backend, peor aún, en la portada. El efecto fue realmente horrible y para evitar la mano para moderar todos los comentarios individuales, la única solución era para filtrar hacia fuera - de alguna manera - la salida de los comentarios.
Afortunadamente (y es una de las razones por las que el amor todo lo WP) Wordpress le permite agregar un filtro a la salida de los comentarios. En mi caso fue suficiente para añadir en el archivo functions.php las siguientes líneas de código:
1 2 3 4 5 6 7 8 9 10 11 12 | $content ) { función filter_comment ($ contenido) { explode ( " " , $content ) ; $ A = explotar ("", $ contenido); "" ; $ Contenido = ""; $a as $word ) { foreach ($ a como $ palabra) { strlen ( $word ) > 20 ) $word = substr ( $word , 0 , 20 ) . "[t...]" ; if ( strlen ($ palabra)> 20) $ palabra = substr ($ texto, 0, 20) ". [t. ..]"; ( $content == "" ) ? $word : ( " " . $word ) ; "Palabra $? $ Contenido .= ($ contenido ==") ("" $ palabra.) } ; return $ contenido; } , 'filter_comment' ) ; add_filter ('comment_text', 'filter_comment'); , 'filter_comment' ) ; add_filter ('get_comment_text', 'filter_comment'); |
Las palabras son muy largas (más de 20) se cortan y, al final, añadir [t...] - para indicar que una palabra se corta.










Excusa de que la diferencia entre
y
y ¿por qué utilizar los dos?
e
comment_text_rss. @ Vik: la versión actual de WordPress se puede aplicar el filtro a las dos funciones, en verdad, también hayget_comment_excerpt(), elcomment_excerpt()ycomment_text_rss.(come in molte altre funzioni scritte con questa nomenclatura) sta nel tipo di output: la prima,
comment_text(), emette l'output a video (cioè esegue unaechointerna) mentre la seconda,get_comment_text(), lo restituisce in una variabile, tipo: Sin embargo, la diferencia entrecomment_text()yget_comment_text()(como en muchas otras funciones escritas en esta nomenclatura) es el tipo de salida: el primero,comment_text(), emite la salida de la pantalla (es decir, ejecutar unechoen el interior), mientras que el segundo,get_comment_text(), regresa en un tipo de variable,:nel frontend o nei vari temi. En el ejemplo, cuando he publicado tanto en
get_comment_text()se utiliza mucho en el backend, mientras que elcomment_text()en la interfaz o en los diferentes temas.. Sin embargo, al realizar una ingeniería inversa del código, es claro que la función
get_comment_text()está en entrocontennutacomment_text(). . De ello se desprende que sería suficiente para aplicar la función de filtro sóloget_comment_text()para actuar - indirectamente - también en elcomment_text().il nostro filtro non avrebbe effetto. De aplicar el filtro a la única función
comment_text(), porque allí donde tendríamos resultados parciales se utilizaget_comment_text()nuestro filtro no tendría ningún efecto.Por el contrario, aplicar el filtro a
get_comment_text()- por lo menos como está escrito, el motor actual de WordPress - que actuaría en las funciones entrabe.