Uso de nuevas imágenes de vista previa en PDF en WordPress 4.7 en el mundo real


Cuando WordPress 4.7 se lanzó a fines de 2016, la mayor parte de la respuesta fue alrededor de la nueva API de puntos finales para publicaciones, comentarios, términos, usuarios, meta y configuraciones. Sin embargo, fue una de las nuevas características más pequeñas que me llamó la atención: las imágenes de vista previa en PDF. En esta publicación, explicaré lo que eso significa, por qué es útil y cómo configurarlo en su propio sitio. Use en el mundo real, la nueva característica significa que WordPress ahora tiene la capacidad de crear una imagen en la página principal de un PDF cuando se carga en la biblioteca de medios, siempre que su servidor tenga los requisitos necesarios (más sobre esto más adelante). La publicación de lanzamiento elogia que la nueva característica le permite “distinguir más fácilmente entre todos los documentos”, pero al instante reconocí un mejor uso de la imagen de vista previa.
En los últimos 4 años, mi esposa lidera un sitio web de recursos educativos que permite a los maestros y padres descargar recursos de enseñanza gratuitos en formato PDF. ¡Por supuesto, me sorprendieron construyendo y manteniendo el patio! Funciona en WordPress (por supuesto) y funciona con descargas digitales fáciles. Cada vez agrega un nuevo recurso, el flujo de trabajo incluye:
Crea el recurso PDF
Use un programa para generar una imagen en la página principal
Agregue el archivo PDF a una nueva descarga de EDD
Agregue la imagen como una imagen recomendada de descarga
¡Este es un proceso largo inútil, que tuvo que hacer más de 600 veces!
Cuando construí el sitio, sabía que había bibliotecas que podrían automatizar esto en el sitio, pero me afectó el intercambio barato y limitado por mis propias habilidades de administrador del sistema. Fue una mejora que tenía la intención de agregar siempre y, cuando vi la publicación de Mike Schroder en el blog hacer WordPress, supe que era hora de implementarla. Requisitos Esta característica se basa en ciertos paquetes que deben instalarse en el servidor de desarrollo o el entorno: ImageMagick
Imaginar
Fantasma
ImageMagick es un software que puede crear, editar, componer o convertir imágenes de mapa de bits, así como leer y escribir imágenes en más de 200 formatos, incluido PDF. Imagick es la extensión PHP llamada ligeramente confundida para comunicarse con ImageMagick a través de PHP. Finalmente, Ghostscript es un intérprete para PostScript y PDF.
Instalación Es posible que estos paquetes de software no se instalen por servidores predeterminados y generalmente no encuentren compartir. Sin embargo, si administra sus propios servidores o usa un host de WordPress decente, entonces debería poder configurarlo. Para probar la nueva función de WordPress e integrarla en el sitio, tuve que configurar primero en mi entorno de desarrollo local. MAMP comenzando con MAMP Pro 4, el soporte para ImageMagick está integrado. Puede activarlo desde la lista de extensiones en la pantalla de configuración de PHP:
Sin embargo, debido a que todavía ejecuto la versión 3.5, tenía que hacer todo manualmente. Pero me sorprendió gratamente encontrar (a pesar de mis deficiencias como administrador del sistema) que logré instalar y configurar todo fácilmente. ¡Entonces, de nuevo, las cosas son mucho más fáciles cuando puede usar herramientas maravillosas como HomeBrew! En primer lugar, necesitamos instalar el software necesario en nuestro automóvil: Brew Update Brew Instale GhostScript Brew Instalar ImagemAgick-With-Ghostcript entonces puede verificar si puede verificar si puede verificar si puede verificar si puede verificar si puede verificar si puede ver La instalación funcionó ejecutando lo siguiente y viendo PDF en la tabla de delegados: Convert -List Delegate Ahora debemos decir PHP para trabajar con ImageMagick. Cuando hablamos con PHP en la línea de comando, queremos asegurarnos de usar la versión PHP MAMP. Para hacer esto, puede ejecutar comandos prefijados con el director de MAMP explícito, como /applications/mamp/bin/php/php5.5.26/bin/php o configurar el terminal para usar siempre la versión MAMP al ejecutar el comando php.

Instale la extensión Imagick usando PECL, que viene con un MAMP: PECL Instalar Imagick Finalmente, debemos activar la extensión en el archivo php.ini agregando en algún lugar extensión = imagick.so. (Lo agregué a la sección “Módulos dinámicos”.) Puede usar Archivo> Plantilla de edición si usa MAMP PRO o Ejecute PHP-INI | GAT “Archivo de configuración cargado” PHP-INI | Greg “Archivo de configuración cargado” para ubicar el archivo y editarlo allí.
Una vez que todo esté listo, apague y encienda MANM y puede probar toda la instalación ejecutando: php -r “var_export (class_exists (‘imagick’));” Esto debe imprimirse cierto para una respuesta exitosa. Utilicé esta excelente guía para ayudarme en el camino, que contiene consejos de solución de problemas para la mayoría de las etapas de proceso. El sitio está alojado en una caída digital de océano siguiendo esta fantástica serie de alojamiento de Ashley, que se ejecuta en Ubuntu 14 con Php 7. Usted Deberá cambiar el número de versión de PHP a continuación, dependiendo de su entorno: sudo apt-get actualización sudo apt-get php7.0-imagick finalmente, reiniciar el servicio PHP, en mi caso en mi caso: el servicio sudo php-fpm7.0 reiniciar i i También instaló el complemento de medios de depuración, que extiende la barra de depuración, para decirme si todos los requisitos se instalan correctamente y qué versiones. Usando la imagen de vista previa completamente instalada, WordPress debe crear una imagen para cada PDF que cargue:
Como dije, esto es bueno para la vista previa de los PDF en el tablero, pero tuve que hacer algo más con la imagen y mostrarla en el frente del sitio.De hecho, es muy simple obtener la imagen PDF que se use en cualquier lugar.Si conoce la ID del archivo adjunto PDF, entonces tomar la imagen en cualquier tamaño es tan simple como: $ image = wp_get_attachment_image ($ adjunto_id, ‘grande’);Sin embargo, en mi caso, la imagen del PDF debía usarse en lugar de la imagen presentada.La descarga es un tipo personalizado de publicación que usa EDD, que puede tener más archivos descargables.Tengo que escribir una pequeña función de ayuda para hacerse cargo de la imagen del primer archivo, cuando transmití una ID de descarga, pero usando la imagen presentada si tiene una:

función get_download_image ($ id, size = ‘grande’) {if (has_post_thumbnail ($ id)) {return get_the_post_thumbnail ($ id, $ size); } if (! function_exists (‘edd_get_download_files’)) {return ”; } $ files = edd_get_download_files ($ id); Foreach ($ archivos como $ archivo) {if (vacía ($ file [‘adjunto_id’)) {continuo; } $ Image = wp_get_attachment_image ($ file [‘adjunto_id’], $ size); If ($ image) {return $ image; }} devolver ”; } Cuanto más sepa, aunque mi función de ayuda utiliza la imagen presentada para las descargas existentes, pensé en tratar de hacer que WordPress genere las imágenes de vista previa para todos los PDF ya en el sitio. Si desea generar imágenes de vista previa retrospectivamente, ¡WP-Cli es su amigo! Comenzando con la versión 1.0.1, puede usar el comando regenerado de medios WP que procesará los archivos adjuntos PDF y generará la imagen de vista previa. En el futuro, tengo la intención de mover todos los medios (PDF e imágenes) en el servidor en Amazon S3 y usar Cloudfront como CDN. Por supuesto, usaré WP Descargar S3 para el trabajo, que funciona perfectamente con la nueva función de vista previa de imagen PDF que comienza con la versión 1.3.1. Puede haber un momento en que no desee generar una imagen para cada PDF cargado en su biblioteca después de todo, la imagen de vista previa no es solo un archivo: hay un archivo de imagen para cada tamaño de imagen. Esto podría ser una cantidad significativa de imágenes que se crean durante el proceso de carga y debe almacenarse en el servidor.

Copyright statement: Unless otherwise noted, this article is Collected from the Internet, please keep the source of the article when reprinting.

Check Also

gkOVSBm5B8SgiXmo

Shopify vs WooCommerce – ¿Cuál es la mejor plataforma?(Comparación)

Shopify vs WooCommerce

Leave a Reply

Your email address will not be published. Required fields are marked *