En ocasiones puedes querer mostrar un PDF en tu web pero sin obligar a tus visitantes a descargarlo, o darles la posibilidad de consultarlo pero sin que salga de tu servidor (por ejemplo, un libro de instrucciones en una ficha de producto de WooCommerce).
En este artículo vamos a ver qué diversas opciones tenemos en WordPress para conseguirlo, tanto mediante plugins como sin necesidad de usarlos.
Tabla de contenidos
Mostrar un PDF en tu web sin usar plugins
Los plugins nos hacen la vida más fácil en WordPress, pero no son la panacea. Ya sabes que un gran número de plugins afectan negativamente el rendimiento de un sitio web, y debes evitar instalar aquellos que no necesites de verdad.
Especialmente si son para una cosa puntual y tienes alternativas. Así que, si vas a “incrustar” archivos PDF en un gran número de páginas de tu web quizá te merezca la pena instalar uno de los plugins de lo que hablo en la siguiente sección, pero si planeas hacerlo de manera puntual lo mejor es que utilices un método “libre de plugins”.
Esto cuenta con la ventaja adicional de que no sólo sirve para WordPress sino que, al ser código HTML, te servirá para cualquier web. Vamos allá.
Mostrar un PDF haciendo uso del visor de PDF de Google Docs
Efectivamente, Google Docs cuenta con su propio visor de PDF, y podemos utilizarlo simplemente “pasándole” la dirección URL en la que está el documento y después incrustando la visualización en un iframe, una especie de “ventana” dentro de nuestra web en la que se muestra el contenido de otra.
Tampoco es necesario entender el concepto técnico que hay tras esto: implementarlo es muy sencillo. Basta con utilizar el código:
<iframe src="https://docs.google.com/gview?url=https://www.tuweb.com/ruta-al-archivo.pdf&embedded=true" frameborder="0" style="width:800px;height:400px;"></iframe>
Así que el asunto es fácil. Sólo tienes que subir el PDF a la biblioteca de medios e incluir el código en la ventana de edición. Eso sí, tendrás que hacerlo pinchando primero en la pestaña que dice HTML en la parte superior derecha del editor.
Sólo tendrás que sustituir la ruta real del archivo y asignar a los atributos de ancho (width) y alto (height) los valores que prefieras. El resultado sería el siguiente:
Como ves, implementarlo es bastante sencillo y además muestra un visor básico, con opción de abrirlo en una nueva página (te lleva al visor de Google Docs) y con funcionalidad de zoom.
Mostrar un PDF incrustándolo en la página
Si no quieres usar un iframe siempre puedes recurrir a incrustar el archivo directamente en la web, como se ha hecho de toda la vida antes de la llegada de la web 2.0. Con la etiqueta embed de HTML.
<object style="width:800px;height:400px;border:1px solid black;" data="https://www.tuweb.com/ruta-al-archivo.pdf?#zoom=85&scrollbar=0&toolbar=0&navpanes=0" type="application/pdf">
<embed src="https://www.tuweb.com/ruta-al-archivo.pdf?#zoom=85&scrollbar=0&toolbar=0&navpanes=0" type="application/pdf" />
</object>
De nuevo los pasos a seguir serían los mismos que con el método anterior, y el resultado es bastante similar:
Mostrar un PDF en tu web con WordPress usando plugins
Como has podido ver, los dos métodos anteriores no están mal, pero si es algo que quieres hacer en muchas páginas (siguiendo con el ejemplo de los libros de instrucciones, puedes querer hacerlo en todas las fichas de producto) entonces se vuelve engorroso e ineficaz.
En ese caso sí puede merecer la pena utilizar un plugin, debido al ahorro de tiempo y a la comodidad para establecer las opciones de forma independiente del código. Vamos a ver un par de alternativas.
¿Estás construyendo tu tienda online o eres implementador WordPress?
¿Necesitas plugins de calidad y con soporte para implementar funcionalidades concretas?
Consigue todos los plugins a la venta en la sección de plugins de esta web y todos los que siga añadiendo. Acceso a los 96 plugins (y subiendo) con soporte directo del desarrollador, actualizaciones y uso ilimitado: úsalos en tantas webs como lo necesites.
PDF Embedder
Nota: no recomiento instalar éste, sólo lo muestro para que puedas comparar.
Este plugin básicamente lo que hace es automatizar el último método que hemos visto pero ahora, en lugar de tener que introducir el código cuando quieras incrustar un PDF, podrás añadirlo directamente utilizando el botón Añadir objeto que hay sobre el editor de WordPress, exactamente igual que haces para añadir una imagen.
Al hacerlo, PDF Embedder te generará un shortcode (que también puedes poner manualmente):
[pdf-embedder url="https://www.tuweb.com/ruta-al-archivo.pdf]
Sin embargo también aporta ciertas mejoras respecto al modo “artesanal” de incrustar el PDF, ya que provee de una barra de herramientas que permite elegir página de destino y zoom y puedes elegir el ancho y alto en que se muestra el documento.
No tienes más opciones disponibles (Ajustes > PDF Embedder), al menos en la versión gratuita. Como desventaja hay que decir que en la barra de herramientas colocan un enlace a su sitio web.
Te muestro el aspecto con una imagen, más que nada por no dejarme instalado un plugin que seguramente no voy a utilizar en esta web:
PDF Viewer
Voy a ser sincero: no entiendo por qué alguien iba a querer utilizar PDF Embedder existiendo PDF Viewer. Como decía más arriba, sólo lo muestro para que puedas comparar.
El funcionamiento básico es similar (un shortcode), pero las diferencias entre uno y otro son abismales.
[pdfviewer width="800px" height="400px" beta="true/false"]https://www.tuweb.com/ruta-al-archivo.pdf[/pdfviewer]
La primera diferencia la puedes apreciar en el código: aunque puedes establecer la altura y el ancho que el visor tendrá por defecto en las opciones (Ajustes > PDF Viewer) también puedes, opcionalmente, incluirlas en el shortcode y se aplicarán a esa instancia concreta del visor.
Y el visor, siendo justos, no tiene nada que ver con el anterior. De hecho, incluye todo lo que incluye el de PDF Embedder (menos, por supuesto, el enlace saliente) y muchas más utilidades. Destacan los menús desplegables, especialmente el de la derecha:
Ya ves todas las posibilidades que aporta al usuario:
- Abrir en el visor un PDF desde el ordenador del usuario (sí, como lo oyes).
- Imprimir el archivo.
- Descargarlo.
- Girarlo en una u otra dirección.
- Cambiar a la herramienta “mano”.
- Visualizar las propiedades del documento.
También proporciona un zoom automático en el desplegable superior con diversas opciones como ancho real, ancho completo, encaje automático, diversos zooms predefinidos, etcétera.
Conclusiones
En fin, ya lo has visto. Soy defensor de que haya diversos plugins que realicen la misma función o parecida, ya que siempre habrá alguno que se ajuste mejor a las necesidades de un usuario, mientras que otro vendrá mejor para otras necesidades concretas.
Sin embargo, en este caso (como dice el dicho), “no hay color”. Si me pides que te recomiende un plugin para visualizar documentos PDF en WordPress apostaré por PDF Viewer, a pesar de las diversas opciones que hay en el repositorio.
En sólo un caso determinado podría estar justificado usar PDF Embedder (u otro similar) frente a PDF Viewer: si no quieres dar al usuario la opción de descargar el archivo PDF. Ojo, que si quiere lo va a poder hacer igualmente (basta con mirar el código) pero al menos PDF Embedder no te presenta la opción directamente.
Mauricio dice
Hola Enrique,¿ hay alguna forma de habilitar el botón de imprimir o descargar el Pdf, en una pagina que ultiliza un pluginPDF Embedder?
La barra de herramientas no está habilitada y el click derecho tampoco funciona.
Gracias
Enrique dice
Hola Mauricio
No que yo sepa, pero en este mismo artículo te nombro algunas alternativas bastante más flexibles.
Un saludo.
Yanina dice
Hola Enrique como estas?
Muy amable por compartir tus conocimientos!
Queria consultarte si hay alguna posibilidad de colocar vinculos en un pdf, que cuando la persona este mirando mi catalogo de productos y le interese uno, pueda apretar este vinculo y se le guarde directamente en su wish list o a su carrito de compras?
Soy muy nueva en esto… y estoy buscando esta info y no encuentro nada al respecto… seria de gran ayuda tu respuesta.
Mil gracias!
Yanina
Enrique J. Ros dice
Hola Yanina
Sí, claro que se puede, echa un vistazo a este artículo para saber cómo crear esos enlaces.
Un saludo.
Alvaro dice
Tengo muchos catalogos en pdf y mi unidad de Google Drive.
Me gustaria mostrarlos en mi wordpress, a modo que se puede ver la primera pagina del pdf y que el visitante pueda descargarse o ver todo el catálogo haciendo click. ¿es posible?
Gracias
Marlo dice
¿HAy alguna forma de que se puedan visualizar y bajar los pdf pero sin que indiquen la url donde están alojados, de forma que los miembros de un sitio wordpress lo vean y lo bajen cuando están logueados pero no copien el enlace de forma que después cualquiera no logueado lo ve y lo baja? Es que intento que sólo lo vean los que están logueados como miembros pero al hacer pruebas pese a que protejo la página donde están como se ve la url completa con la carpeta se pueden bajar sin entrar siquiera si alguien pasa el link, he probado con un plugin que protege las descargas pero en ese caso no se ven solo da enlace para descargar y la idea era más bien que se pudiera visualizar online y bajar pero sólo los miembros logueados.
Enrique J. Ros dice
Hola Marlo
Para eso necesitarás utilizar algún plugin de restricción de contenidos.
Un saludo.
fais dice
Hola, Enrique se puede hacer que se visualice el pdf que esta alojado en Google Docs al pinchar en el titulo del pdf sin que se vea todo el código??
Ester dice
Hola Enrique, yo utilizo los dos primeros procedimientos para que se vean pdf en mi web según tu sugerencia, pero no funciona para archivos pdf alojados en mi google drive, ¿sabes cómo podría hacerlo?
Muchas gracias de antemano por tu ayuda.
Laura dice
Buenas tardes, Enrique:
Antes de instalar plugins he probado poner el código embed para incrustrar el .pdf en mi wordpress y en versión pantalla ordenador, se ve perfecto. Puse el zoom al 65% así no salían las barras de scroll internas.
No consigo que se vea bien en tablet y en móvil: o se ve cortado, o se ve un scroll, o en el móvil directamente sale un botón de Abrir.
¿Alguna idea de cómo puedo solucionarlo?
¿El plugin PDF Viewer tiene alguna opción de configuración para esto?
Un saludo y mil gracias!
Laura
Jorge dice
Gracias por tomarte el tiempo, analizar las herramientas y compartir la mejor opción.
Ángel dice
Muchas gracias por las ideas!
Quería evitarme el uso de plugin y el object de toda la vida es una solución rápida y bastante apañá.
Gracias!!!
Juan dice
Hola Enrique, no puedo ver el código en la pagina para poder implementarlo.
Enrique J. Ros dice
Hola Juan
Arreglado, gracias por el aviso 🙂
Un saludo
Luis Ramos dice
En un móvil no sale el scroll, por favor puedes decirme que código poner ? Muchas gracia