Documentación · Documentación técnica
Notas técnicas de la generación de PDF
Este documento describe cómo el plugin ADP Car Market Hub produce fichas técnicas de vehículos optimizadas para impresión ("exposés") que los visitantes pueden guardar como PDF utilizando el diálogo de impresión de su navegador.
Cuándo utilizar este documento
Lea este documento si necesita:
- Personalizar qué campos aparecen en la ficha técnica imprimible.
- Reemplazar la fuente de imagen del código QR predeterminada con un generador autoalojado.
- Incrustar un enlace a la ficha técnica imprimible de un vehículo desde otra página o sistema.
- Diagnosticar datos faltantes o incorrectos en la página imprimible.
Descripción general
La ficha técnica en PDF está implementada en AS24CI\Pdf_Datasheet. No
genera un PDF binario en el servidor. En su lugar,
renderiza una página HTML independiente (sin la cabecera/pie de página del tema WordPress)
optimizada para la función Imprimir → Guardar como PDF del navegador.
Este enfoque tiene dos implicaciones prácticas:
- El resultado se ve idéntico independientemente del tema activo, ya que se omite el tema.
- El navegador gestiona la renderización real del PDF. El visitante (o el equipo del concesionario) crea el PDF localmente; el servidor solo sirve HTML.
Activación y enrutamiento
- La clase registra la variable de consulta pública
as24ci_pdf. - Una acción
template_redirectescucha la variable. Cuando está presente y se resuelve en una entradaas24ci_carpublicada, el plugin renderiza la ficha técnica y llama aexit. - El ayudante de URL
Pdf_Datasheet::get_datasheet_url( $post_id )devuelvehome_url( '/?as24ci_pdf=<post_id>' ). Utilice este ayudante en lugar de construir la URL a mano.
Reglas de validación:
- Los IDs no numéricos o iguales a cero devuelven HTTP
400con un mensaje traducido "ID de vehículo no válido". - Si falta la entrada, el tipo de entrada es incorrecto o el estado no es publicado, devuelve
HTTP
404con un mensaje traducido "Vehículo no encontrado o no publicado".
Selección de campos
Pdf_Datasheet::get_allowed_fields() es la lista blanca autoritativa
de campos que pueden aparecer en la ficha técnica. Cualquier campo
que no esté en la lista se ignora, por lo que los administradores no pueden mostrar
datos no compatibles manipulando los ajustes guardados.
Campos permitidos actualmente:
title,price,mileage,first_reg,fuel_type,transmission,power,body_type,exterior_color,doors,seats,emission_class,co2,consumption,equipment,description,location,contact.
Los valores predeterminados se exponen mediante get_default_settings() y se superponen
a los ajustes persistidos del PDF Manager del usuario, de modo que los campos recién añadidos
reciben un valor predeterminado sensato.
Código QR
Pdf_Datasheet::get_qr_image_url( $target_url ) devuelve una URL de imagen
de código QR para incrustar en la ficha técnica. La implementación
predeterminada solicita un PNG de 180×180 al servicio público goqr.me
(https://api.qrserver.com/v1/create-qr-code/).
Detalles operativos:
- Una protección defensiva devuelve una cadena vacía si la URL de destino
contiene
autoscout24.para que el código QR nunca enlace accidentalmente a la página de detalles del anuncio de origen. - La URL predeterminada se puede filtrar a través de
as24ci_pdf_qr_image_url. Devuelva una cadena vacía para suprimir la imagen QR por completo, o devuelva su propia URL (autoalojada).
Instrucciones paso a paso
Para previsualizar una ficha técnica imprimible de un vehículo:
- Localice el vehículo en el administrador de WordPress o en el frontend.
- Abra la URL
https://example.com/?as24ci_pdf=<post_id>en un navegador. - Utilice el diálogo de impresión del navegador (
Ctrl/Cmd + P) para guardar la página como PDF o enviarla a una impresora.
Para personalizar los campos visibles:
- Abra la pestaña de administración PDF Manager.
- Active o desactive los campos y las opciones de marca (logotipo, empresa, dirección, teléfono, etc.).
- Guarde. Los ajustes se persisten en las opciones de WordPress y se fusionan con los valores predeterminados en el momento de la renderización.
Para reemplazar el proveedor de QR con un generador autoalojado:
- Añada un pequeño mu-plugin o fragmento de código de tema que se enganche a
as24ci_pdf_qr_image_url, ignore el valor predeterminado y devuelva su propia URL. - Verifique el resultado en un navegador antes de implementarlo en producción.
Referencia de configuración
Lista blanca de campos: ver get_allowed_fields() arriba. Valores
predeterminados: ver get_default_settings(). La lista exacta de opciones de marca
y diseño expuestas en la pestaña de administración de PDF Manager se
mantiene en el lado del servidor. Verifique las opciones actuales con la
pantalla de PDF Manager antes de publicar documentación de cara al
cliente.
Notas operativas
- El renderizador genera HTML completo (incluyendo
<!DOCTYPE>,<head>, estilos en línea) y llama aexitpara evitar que WordPress envíe su tema. Cualquier plugin que se enganche tarde entemplate_redirecty escriba en la respuesta después de este punto no se ejecutará. - Debido a que el PDF se genera en el lado del cliente por el navegador, la numeración de páginas, los encabezados/pies de página y el tamaño del papel dependen de los ajustes de impresión del visitante, no del plugin.
- La imagen QR es obtenida por el navegador del visitante (o por el motor de impresión), no por el servidor de WordPress. Si su política de privacidad prohíbe las solicitudes de terceros en documentos imprimibles, sobrescriba la URL del QR o suprímala por completo a través del filtro.
- El endpoint devuelve una página HTML pública; no incruste datos confidenciales en los campos configurables.
Resolución de problemas
- Página 404 en lugar de la ficha técnica — la entrada no
existe, no es del tipo de entrada
as24ci_caro no estápublish. Verifique el ID y el estado de la entrada. - 400 "ID de vehículo no válido" — el valor pasado en
?as24ci_pdf=no era un número entero positivo. - Los estilos del tema se filtran en la página imprimible — el renderizador
omite el tema; si ve marcado del tema, otro plugin está
interceptando
template_redirectantes que este o la URL no fue detectada. Vuelva a comprobar el parámetro de la URL y borre las cachés de página. - El código QR falta o está roto — la URL de destino contenía
autoscout24.(suprimido por seguridad) o un filtro personalizado devolvió una cadena vacía. Verifique la URL de destino y la implementación del filtro. - El PDF difiere entre navegadores — la renderización de impresión varía según el navegador y el sistema operativo. Estandarice en un navegador/sistema operativo para las exportaciones de cara al cliente si el diseño preciso es importante.