AAdvanced Subscriptions
Funcionalidades Precio Docs Changelog Contacto — English
Iniciar sesión Comprar el plugin →
Compatibilidad · 4 min de lectura

Compatibilidad con HPOS (Custom Order Tables)

Advanced Subscriptions es nativo HPOS. Lee y escribe suscripciones a través de la interfaz de Custom Order Tables de WooCommerce, no contra la tabla legacy wp_posts. No existe fallback al sistema CPT antiguo: en una instalación nueva, HPOS es la única ruta de almacenamiento que usa el plugin.

Última revisión 2026-05-28 Plugin v2.0.0

Qué es HPOS, en un párrafo

HPOS (High-Performance Order Storage) es el backend de datos de pedidos de WooCommerce, introducido en WC 7.1 y convertido en el valor por defecto para instalaciones nuevas en WC 8.2. Pedidos, devoluciones y suscripciones viven en tablas dedicadas (wc_orders, wc_order_addresses, wc_order_operational_data, wc_orders_meta) en lugar de en wp_posts y wp_postmeta. Resultado: consultas más rápidas, esquemas más limpios, y se acabó tener el custom post type "shop_order" engordando la tabla de posts.

Prerequisitos

  • WooCommerce 8.2 o superior. Versiones anteriores soportan HPOS como opt-in; lo hemos probado hasta WC 7.1 pero recomendamos 8.2+.
  • PHP 7.4+ (PHP 8.x recomendado por los índices en los que HPOS se apoya).
  • Cualquier otra extensión activa que toque pedidos debe declarar compatibilidad con HPOS. WooCommerce muestra un aviso en WooCommerce → Ajustes → Avanzado → Características listando por nombre los plugins incompatibles.

Activar HPOS

  1. Ve a WooCommerce → Ajustes → Avanzado → Características.
  2. En Tablas personalizadas de pedidos, elige Almacenamiento de pedidos de alto rendimiento (nuevo).
  3. WooCommerce migra los pedidos existentes en segundo plano a través de Action Scheduler. El job es incremental; la tienda sigue usable mientras corre.
  4. Cuando la migración termine, desactiva modo de compatibilidad para detener la escritura doble a wp_posts. Este es el punto sin retorno para esa tienda; guarda backup.

Coexistencia con extensiones no compatibles con HPOS

Si uno de tus otros plugins aún no ha declarado compatibilidad HPOS, hay dos caminos:

  • Mantén el modo de compatibilidad activo. WooCommerce escribe en doble: a wp_posts y a las nuevas tablas. La ganancia de rendimiento es parcial, pero el plugin incompatible sigue funcionando. Este es el default seguro mientras esperas que el otro proveedor publique la actualización.
  • Desactiva ese plugin y pasa HPOS a full. La tienda recibe toda la mejora; pierdes la funcionalidad de ese plugin hasta que esté actualizado.

Advanced Subscriptions no fuerza esta decisión. Funcionamos en cualquiera de los dos modos.

Cómo usa el plugin HPOS

  • Lecturas con wc_get_order() y wc_get_orders() usando type => 'aswc_subscription'. Ningún WP_Query directo contra la tabla de posts.
  • Escrituras a través de la API estándar WC_Order::save(). El plugin extiende WC_Order para su clase ASWC_Subscription, por lo que la capa de datos es HPOS-nativa automáticamente.
  • Índices de los que dependemos en las queries de renovación: type, status, y las columnas operacionales date_paid_gmt y date_completed_gmt. Todos forman parte del esquema HPOS.

Hooks relevantes