No quiero las «comillas españolas» ¿se pueden quitar?

No sé si te habrás fijado – imagino que sí – pero desde hace poco WordPress sustituye las comillas altas, o inglesas, por comillas angulares, también conocidas como comillas españolas o comillas dobles.

¿Quién tomó esta decisión y por qué?

Esta decisión la tomamos el equipo de traducciones de WordPress España, en un paso más hacia la personalización de la traducción al español de España, y siguiendo las indicaciones de la RAE.

Ya hacía tiempo que veníamos usando las comillas españolas en las cadenas de traducción y el siguiente paso lógico era aprovechar WordPress para automatizar su uso.

Las señas de identidad ortográficas de cada idioma local son importantes, como la c con cedilla (ç) en catalán, por ejemplo. Lo mismo con la eñe (ñ) o las comillas españolas en español.

Además, que WordPress ya hacía una sustitución de las comillas rectas a las tipográficas inglesas, el único cambio ha sido adoptar las españolas en vez de las inglesas a la hora de hacer la sustitución.

¿Cómo es que WordPress me cambia automáticamente las comillas?

WordPress tiene un filtro llamado wptexturize que, entre otras cosas, sustituye comillas simples por comillas tipográficas. Este filtro es también el encargado de convertir tres guiones seguidos a una línea continua y más sustituciones, todas automáticas.

Como ves, hay muchos otras sustituciones que WordPress hace automáticamente, nosotros solo hemos cambiado una de esas sustituciones por la adecuada a nuestro idioma local.

¿Cómo habéis hecho el cambio?

Ha sido algo tan sencillo como sustituir en las cadenas de traducción la sustitución que hace WordPress por otra, para que en vez de convertir comillas planas a tipográficas las convierta a españolas, usando la entidad HTML adecuada para ellas.

En concreto, se han sustituido las comillas de apertura (“) y cierre (”) rectas por las españolas de apertura («) y cierre (»), nada más.

Yo ya usaba comillas tipográficas ¿puedo seguir usándolas?

Por supuesto, el cambio solo sustituye las comillas rectas ("") por españolas («»). Si insertas comillas tipográficas inglesas (“”) en tu texto no las cambiará.

Comparto códigos ¿me romperá enlaces, otra cosa o algo de WordPress?

No, el filtro wptexturize no funciona dentro de las etiquetas <textarea>, <code> o <pre> que son las que suelen usar este tipo de plugins para compartir código.

Y, por supuesto, tampoco rompe nada interno de WordPress, ni enlaces ni nada. Además, tu contenido se guarda en la base de datos con las comillas que tú hayas puesto, la sustitución solo se hace en la parte visible de la web.

Muy bien, entendido, pero a mi no me viene bien ¿puedo quitarlas?

Puede que haya casos en los que alguien no quiera para su web estas bonitas comillas españolas, a pesar de que use la traducción al español de España.

Otro posible motivo es que tú mismo prefieras usarlas manualmente para, por ejemplo usar comillas simples dentro de comillas angulares

Anula completamente wptexturize

Al igual que existe el filtro para hacer estas sustituciones existe otro con el que puedes anular completamente wptesturize, este:

add_filter( 'run_wptexturize', '__return_false' );

Si añades el código anterior a tu plugin de personalizaciones o al archivo functions.php del tema activo se anulan TODAS las sustituciones que hace el filtro wptexturize de WordPress, pero todas, no solo la de las comillas españolas.

Anula wptexturize selectivamente

Otra opción, menos radical, es anular wptesturize solo en ciertas partes de WordPress, como en estos filtros de ejemplo:

remove_filter('the_content', 'wptexturize'); //Anula wptexturize en el contenido
remove_filter('the_excerpt', 'wptexturize'); /Anula wptexturize en los extractos
remove_filter('the_title', 'wptexturize'); /Anula wptexturize en los títulos

Igualmente, los añadirías a tu plugin o archivo functions.php.

Otro modo de hacerlo es personalizando el siguiente código:

$filters_to_remove = array(
  'comment_author', 'term_name', 'link_name', 'link_description', 'link_notes', 'bloginfo', 'wp_title', 'widget_title',
  'single_post_title', 'single_cat_title', 'single_tag_title', 'single_month_title', 'nav_menu_attr_title', 'nav_menu_description',
  'term_description',
  'the_title', 'the_content', 'the_excerpt', 'comment_text', 'list_cats'
);

foreach ($filters_to_remove as $a_filter){
  remove_filter($a_filter, 'wptexturize');
}

En el código anterior están todas las posibles ubicaciones donde se aplica wptexturize. Si lo guardas tal cual hará lo mismo que en el primer filtro, el que lo anulaba totalmente, pero puedes simplemente quitar aquellas ubicaciones donde quieras que siga activo.

Y, recuerda, que no estás solo quitando las comillas españolas, estás anulando todas las sustituciones que hace WordPress.

Haz tu propia traducción personalizada

La otra posibilidad es que te descargues la traducción de WordPress al español de España y modifiques tú mismo esas 2 cadenas. Luego sube el archivo .mo generado a tu instalación de WordPress, al directorio /wp-content/languages/.

VALORA Y COMPARTE ESTE ARTÍCULO PARA MEJORAR LA CALIDAD DEL BLOG…
(5 votos, promedio: 5)

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

2 comentarios en “No quiero las «comillas españolas» ¿se pueden quitar?”

  1. Mira aquí pecare de ignorante, pero nadie nace sabiendo y con la mano en el corazón, hasta apenas me voy a enterar que las comillas que conozco de toda la vida son «comillas inglesas» y esas comillas – que sí he visto, pero no he usado nunca – son comillas españolas… por tratarse de algo que desconocía ha sido un detalle que ha llamado más mi atención incluso que la solución al susodicho problema… xD

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

 

Ir arriba Ir al contenido