Documentación · Requisitos del sistema

Requisitos de WordPress

Introducción

ADP Car Market Hub es un plugin nativo de WordPress. No incluye su propio CMS, constructor de páginas o framework de front-end; en su lugar, se basa en los mecanismos estándar de WordPress (custom post types, taxonomías, la biblioteca de medios, REST API, WP-Cron, capabilities y nonces).

Este documento describe todo lo que ADP Car Market Hub espera de la instalación de WordPress en la que se ejecuta: versiones compatibles de WordPress, permisos de administrador requeridos, comportamiento de los enlaces permanentes, uso de la biblioteca de medios, dependencia de cron y consideraciones de compatibilidad conocidas.

Cuándo usar este documento

Utilice este documento cuando:

  • Necesite confirmar que un sitio de WordPress existente puede alojar el plugin.
  • Esté configurando roles de usuario y capabilities para el equipo de un concesionario.
  • Esté planificando la configuración de enlaces permanentes, medios o caché para un nuevo sitio.
  • Esté auditando la compatibilidad de plugins antes de instalar plugins adicionales junto con ADP Car Market Hub.

Descripción general

ADP Car Market Hub se integra con WordPress de la siguiente manera:

  • Registra un custom post type as24ci_car con su propio mapa de capabilities (as24ci_car / as24ci_cars) y 15 taxonomías de vehículos.
  • Registra una capability personalizada manage_as24_imports y un rol "AS24 Editor" para la gestión delegada; los administradores siempre conservan el acceso completo.
  • Almacena las imágenes de los vehículos como adjuntos estándar de WordPress en la biblioteca de medios.
  • Añade una página de administración (el menú "ADP Car Market Hub") con múltiples pestañas (Settings, Automation, Mapping, AI Assistant, Health, Tools, etc.).
  • Utiliza WP-Cron para las importaciones programadas y expone un endpoint REST protegido por token en /as24ci/v1/cron-import para activadores externos.
  • Añade shortcodes (archivo de coches, comparar, favoritos, etc.) y sobreescrituras de plantillas bajo templates/ para que los temas puedan personalizar el front-end.
  • Lee las plantillas del tema activo y la jerarquía estándar de single-{post-type}.php / archive-{post-type}.php.

Requisitos

Versión de WordPress

  • Mínimo: WordPress 6.2 (Requires at least: 6.2 en la cabecera del plugin y readme.txt).
  • Probado hasta: WordPress 6.9 (Tested up to: 6.9 en readme.txt).
  • Recomendado: Ejecute siempre la última versión estable de WordPress en una rama compatible y mantenga activadas las actualizaciones de seguridad de WordPress.

Multisite

El plugin está desarrollado y probado para instalaciones de WordPress de un solo sitio. La activación en red en un Multisite no es un caso de uso documentado; instálelo y actívelo en sitios individuales en su lugar.

Permisos de administrador

Hay dos capas de permisos distintas involucradas:

  • La instalación y la configuración global requieren manage_options (es decir, un Administrador). El plugin utiliza current_user_can( 'manage_options' ) para restringir las migraciones de capabilities y las herramientas peligrosas.
  • La gestión diaria del plugin está restringida por la capability personalizada manage_as24_imports. Al activarse, el plugin otorga esta capability (junto con las capabilities completas de CPT as24ci_car / as24ci_cars) al rol de Administrador y al rol dedicado "AS24 Editor" que crea. El rol estándar de "Editor" de WordPress no recibe estas capabilities por diseño.
  • Todas las acciones POST de administración, controladores AJAX y widgets del panel de control vuelven a comprobar la capability y verifican un nonce de WordPress. Por lo tanto, los sitios con seguridad reforzada (roles personalizados, plugins de gestión de roles, políticas de administración restringidas) deben otorgar manage_as24_imports a cualquier usuario que deba ser capaz de ejecutar importaciones o cambiar la configuración del plugin.

Enlaces permanentes

  • Los enlaces permanentes amigables deben estar activados. Cualquier configuración distinta de "Simple" es correcta (Día y nombre, Mes y nombre, Nombre de la entrada, Estructura personalizada).
  • El custom post type as24ci_car se registra con reglas de reescritura. Después de activar el plugin o cambiar sus opciones relacionadas con los slugs, visite Ajustes → Enlaces permanentes y haga clic en Guardar cambios una vez para vaciar las reglas de reescritura (flush rewrite rules).
  • El endpoint REST protegido por token /as24ci/v1/cron-import también se registra a través de la REST API estándar de WordPress y funcionará tan pronto como la propia REST API sea accesible.

Biblioteca de medios

  • Las imágenes de los vehículos se importan como adjuntos estándar de WordPress y se almacenan en wp-content/uploads/ bajo la estructura normal de año/mes.
  • El plugin respeta los ajustes de gestión de imágenes de WordPress: tamaños de miniatura, tamaños intermedios, editor de imágenes (GD o Imagick) y rutas de subida.
  • La conversión opcional a WebP utiliza la misma biblioteca de imágenes (GD o Imagick) que WordPress esté configurado para usar.
  • El ajuste Max images per vehicle limita cuántos adjuntos se crean por coche. El plugin deduplica las imágenes por URL de origen para que las reimportaciones no creen duplicados.
  • Al eliminar un vehículo a través del plugin (o mediante Full Sync) también se eliminan los adjuntos asociados para mantener limpia la biblioteca de medios.
  • La prevención de hot-linking, los plugins de descarga a CDN (por ejemplo, mover las subidas a S3) y los optimizadores de imágenes son compatibles siempre que se conecten al ciclo de vida estándar de adjuntos de WordPress.

Dependencia de cron

  • Las importaciones programadas dependen de WP-Cron. El plugin registra un intervalo adicional (cada 6 horas) y un intervalo personalizado configurable (mínimo 15 minutos) además de los valores predeterminados de WordPress.
  • Los sitios con tráfico bajo o impredecible deberían desactivar el cron predeterminado basado en la carga de páginas y activar WP-Cron desde un cron real del sistema operativo, o llamar al endpoint REST protegido por token /as24ci/v1/cron-import desde un programador externo.
  • Un bloqueo de importación interno (transient, TTL de 40 minutos) evita que dos ejecuciones de cron se solapen. Esto hace que los activadores externos de "cada 5 minutos" sean seguros.
  • Otros plugins basados en cron (Action Scheduler, WooCommerce, plugins de copia de seguridad) coexisten sin conflictos; el plugin utiliza sus propios nombres de hook dedicados bajo el prefijo as24ci_.

Consideraciones de compatibilidad de plugins

  • Plugins de SEO: El AI Assistant escribe los meta títulos y las meta descripciones en los formatos esperados por Yoast SEO y Rank Math.
  • Plugins de caché: Las cachés de página son compatibles. Excluya de la caché las páginas de administración de WordPress y la ruta REST /as24ci/v1/cron-import. Las cachés de objetos (Redis, Memcached) son compatibles a través de la API de caché estándar de WordPress.
  • Plugins de seguridad / WAFs: Permita el tráfico HTTPS saliente hacia AutoScout24 (y hacia el endpoint gestionado de Google Gemini cuando las funciones de IA estén activadas) y no bloquee las solicitudes POST a las páginas de administración del plugin ni a su endpoint REST. El token de cron debe incluirse en la solicitud tal como se documenta en la pestaña Import & Limits.
  • Constructores de páginas / temas de bloques: Las páginas de un solo vehículo y de archivo se renderizan a través de las plantillas estándar de WordPress y shortcodes, por lo que cualquier tema (clásico o basado en bloques) que respete la jerarquía de plantillas funcionará.
  • Plugins de traducción: El plugin está completamente internacionalizado bajo el dominio de texto adp-car-market-hub (languages/). Los plugins de traducción que operan con cadenas estándar de WordPress funcionan según lo previsto.

Configuración de producción recomendada

  • Última versión estable de WordPress con las actualizaciones menores automáticas activadas.
  • Enlaces permanentes amigables configurados en Nombre de la entrada o Estructura personalizada.
  • Cuenta de administrador dedicada al mantenimiento del plugin, además de uno o más usuarios "AS24 Editor" para el trabajo diario.
  • Un cron real a nivel de sistema operativo que active wp-cron.php (o el endpoint REST de cron) cada 5–15 minutos, con DISABLE_WP_CRON establecido en true.
  • Un tema con soporte nativo para plantillas de custom post types, o un tema hijo que sobrescriba las plantillas del plugin según sea necesario.
  • Caché de objetos (Redis o Memcached) en sitios con mucho tráfico para acelerar las pestañas de administración que agregan analíticas o datos de leads.

Notas operativas

  • Vuelva a vaciar las reglas de reescritura (Ajustes → Enlaces permanentes → Guardar) después de cada actualización del plugin que cambie la estructura de las URL o después de migrar entre entornos.
  • El plugin solo escribe en sus propias claves de opciones (as24ci_*), sus propias tablas personalizadas, las tablas estándar de posts/postmeta/term de WordPress para as24ci_car, y en la biblioteca de medios de WordPress. Eliminar el plugin a través de uninstall.php limpia sus propios datos.
  • El rol personalizado "AS24 Editor" y la capability manage_as24_imports se gestionan a través de Plugin::ensure_roles_and_caps() al activarse y en las actualizaciones de versión de las capabilities; los revisores que utilicen plugins de gestión de roles no deben eliminarlos mientras el plugin esté activo.
  • La salida del front-end respeta el tema activo. Para personalizar profundamente las plantillas de los vehículos, copie los archivos del directorio templates/ del plugin en su tema hijo.

Resolución de problemas

  • Error 404 en el archivo de vehículos o en páginas individuales: Visite Ajustes → Enlaces permanentes y haga clic en Guardar. Confirme que los enlaces permanentes amigables no estén configurados en "Simple".
  • El menú de administración no es visible para un usuario que no es administrador: Verifique que el rol del usuario tenga la capability manage_as24_imports.
  • Los botones de importación devuelven "permiso denegado" o errores de nonce: Recargue la página de administración (los nonces caducan a las 24 h) y confirme que el usuario posee manage_as24_imports.
  • Las importaciones programadas nunca se ejecutan: Confirme que WP-Cron es accesible, o cambie a un activador de cron externo (wp-cron.php o el endpoint REST con el token configurado).
  • Faltan imágenes en la biblioteca de medios: Compruebe el ajuste Max images per vehicle, el espacio libre en disco y el estado de la cola de imágenes en la pestaña Import & Limits.
  • El endpoint REST devuelve un error 401: Asegúrese de que la solicitud incluya el token de cron configurado y de que ningún plugin de seguridad esté eliminando los parámetros de consulta o de cabecera.

Documentos relacionados