Pregunta sobre TablePress de Wordpress:

Umlaute (caracteres especiales) en archivos de exportación

Un usuario preguntó 👇

¡Hola, lista de soporte!

Acabo de instalar TablePress y creé mi primera tabla. ¡Excelente!

Funciona perfectamente para mí, pero hay una pregunta: los datos de mi tabla contienen un Umlaute alemán (Ä, Ö, ü etc.). Cuando lo exporto (csv o html), se ven como caracteres divertidos, por ejemplo, “¼” (en lugar de “ü”). ¿Cómo puedo resolver esto?

Gracias

(@tobiasbg)

Hace 2 años, 8 meses

Hola,

gracias por tu publicación y perdón por las molestias.

¿Dónde están entonces, es decir, dónde abre los archivos CSV / HTML? Los caracteres deben estar bien en un editor de texto que comprenda la codificación de caracteres UTF-8.

Saludos, Tobias

(@karlopress)

Hace 2 años, 8 meses

¡Hola!

En mi PC con Windows, cuando exporto y descargo el .csv del archivo html y hago doble clic para abrir (en Excel o Edge Browser), veo que se muestra el Umlaute incorrecto.

Creo que la razón de esto es que la lista de materiales no es correcta (Marca de orden de medida, consulte aquí https://de.wikipedia.org/wiki/Byte_Order_Mark). Cuando abro el archivo con el editor hexadecimal e ingreso la secuencia hexadecimal [EF BB BF] al principio del archivo, se muestra correctamente cuando guardo ese cambio y lo vuelvo a abrir. Funciona para .csv y html. Creo que es más importante para .csv, porque el html generalmente está incrustado en otro documento que puede tener información codificada de todos modos.

¿Qué piensas?

Esta respuesta fue modificada hace 2 años, 8 meses por.

(@tobiasbg)

Hace 2 años, 8 meses

Hola,

¿Por qué cree que la lista de materiales es necesaria? TablePress usa la misma codificación de caracteres que usa WordPress, que generalmente es UTF-8 (sin la lista de materiales).

¿Ve los caracteres correctos cuando abre el archivo CSV en un editor de texto?

Saludos, Tobias

(@karlopress)

Hace 2 años, 8 meses

Hola Tobias,

Es probable que WordPress espere UTF-8 por convención. Cualquier otra aplicación asumirá una presunción («suposición») si la secuencia de la lista de materiales no está presente. Esto podría ser afortunado (por ejemplo, el Bloc de notas muestra que el Umlaute está bien) o suerte (como Excel y WordPad; ambos parecen elegir una interpretación de página de códigos ANSI basada en los datos, que incluso pueden variar según las ubicaciones regionales). A esto lo llamaría afortunado / afortunado en lugar de correcto / incorrecto, ya que realmente no hay una señal clara, por lo que esas aplicaciones no saben lo que quiere el usuario.

Creo que abrir un archivo .csv exportado con Excel es un caso de uso importante / frecuente, y hay un problema con eso en este momento. Creo que la lista de materiales no es necesaria para HTML y JSON. Los datos HTML probablemente se incrustarán en algún lugar de todos modos y JSON usa UTF-8 de forma rutinaria.

Por lo que puedo ver, el problema de Excel debería resolverse agregando la lista de materiales al archivo .csv, probablemente sin ninguna desventaja para otras aplicaciones. Por tanto, mi recomendación es incluir la lista de materiales para .csv en todos los casos, o convertirla en una opción para .csv (activada por defecto).

Desafortunadamente, no tengo experiencia con la programación de WordPress / PHP, así que no puedo ayudar mucho. Pero estaría muy feliz de resolver esto 🙂

Karlo

(@tobiasbg)

Hace 2 años, 8 meses

Hola,

Entiendo lo que quiere decir, pero tengo mucho miedo de agregar la lista de materiales, porque esto creó muchos problemas con otras cosas (como la importación), prefiero no hacer eso.

Simplemente pruebe todas las demás opciones: ¿Obtiene estos mismos resultados en Excel con archivos CSV con diferentes plantillas (que puede elegir durante la exportación)? Por cierto, vi resultados diferentes en archivos CSV en Excel al abrir el archivo CSV desde dentro de Excel en comparación con hacer doble clic en el archivo en el Explorador.

Saludos, Tobias

(@karlopress)

Hace 2 años, 8 meses

Hola,

Probé todas las versiones (;, t) e intenté abrir con Excel haciendo doble clic en el explorador y dentro de Excel. No hace ninguna diferencia.

Entiendo su preocupación por las nuevas incompatibilidades al presentar el código BOM. Por otro lado sería muy útil. ¿Se puede hacer como una opción para la exportación .csv, con el valor predeterminado = NO para compatibilidad con versiones anteriores (o guardar la última opción)?

Gracias karlo

(@tobiasbg)

Hace 2 años, 8 meses

Hola,

en realidad, podría agregar esto como un cambio personalizado a su sitio, utilizando el enlace de filtro para los datos exportados, en https://github.com/TobiasBg/TablePress/blob/master/controllers/controller-admin.php#L983
Con esto, puede agregar fácilmente la lista de materiales a cualquier dato de exportación CSV.

Saludos, Tobias

(@karlopress)

Hace 2 años, 8 meses

Hola Tobias,

hmm, seguí el enlace y vi el código. Siendo bastante nuevo en WordPress, no tengo ni idea de cómo / dónde necesito instalar o aplicar dicho filtro. ¿Podrías ayudarme con algunas instrucciones o un ejemplo?

¡Gracias!

(@tobiasbg)

Hace 2 años, 8 meses

Hola,

seguro, solo hay unas pocas líneas de PHP:

add_filter( 'tablepress_export_data', 'tablepress_add_bom_to_csv_exports', 10, 4 );
function tablepress_add_bom_to_csv_exports( $export_data, $table, $export_format, $csv_delimiter ) {
  if ( 'csv' === $export_format ) {
    $export_data = "xEFxBBxBF" . $export_data;
  }
  return $export_data;
}

Simplemente agregue esto al archivo «functions.php» de su tema (o un pequeño plugin personalizado nuevo) y todas las exportaciones CSV tendrán la lista de materiales al principio.

Saludos, Tobias

(@karlopress)

Hace 2 años, 8 meses

¡Tobias!

¡Esto funciona simplemente por encima! ¡Finalmente agregué su código a functions.php y todo está bien!

Muchas gracias

(@tobiasbg)

Hace 2 años, 8 meses

Hola,

no hay problema, ¡de nada! 🙂 ¡Es bueno escuchar que esto ayudó!

Todo lo mejor, Tobias

PD: Si no lo ha hecho, califique TablePress aquí en el directorio de plugins. ¡Gracias!

¿Solucionó tu problema??

0 / 0

Deja una respuesta 0

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