La integración con el PMS llega a producción Funcionalidad
El tema ya trae la integración de serie, así que la web en vivo lee disponibilidad y registra solicitudes sin un plugin de por medio.
Una web pública en diez idiomas, sobre un tema de WordPress escrito desde cero, que le pregunta al PMS qué está libre y le devuelve las solicitudes.
La cara pública de la misma operación que pms_ixa lleva por detrás: fichas de alojamiento, disponibilidad, y un formulario de solicitud que aterriza en la bandeja del PMS en vez de en la carpeta de correo de alguien.
Es un tema de bloques escrito a mano, sin maquetador visual y sin npm: se edita en su sitio, se recarga el navegador y el contenido se siembra con un script repetible. La razón es el mantenimiento: quien actualiza el contenido no programa, y lo que actualiza no debería poder romper la maquetación.
Empezó como un rescate. La web anterior era una SPA de React que se quedó en blanco cuando desapareció la API que tenía detrás: un punto único de fallo que nadie había puesto en la cuenta. El reemplazo se eligió por la propiedad contraria — contenido que sobrevive a quien lo escribió, y ningún paso de compilación entre una edición y la página.
Después le crecieron idiomas. Uno, dos, y hasta diez, incluidos un alfabeto cirílico y una lengua que se lee de derecha a izquierda: ahí es donde una maquetación deja de ser decorativa y pasa a estar puesta a prueba. La interfaz del propio tema también está traducida, no solo las páginas.
Y luego se conectó. La web lee las fechas ocupadas del PMS y le publica las solicitudes, lo que cierra el círculo: una estancia reservada en cualquier canal aparece como ocupada aquí, y una solicitud hecha aquí ya está en la cola del operador.
Un detalle pequeño y deliberado que me gusta: una sola línea dejada en la ruta vieja de la SPA muerta, para que quien todavía tenga ese enlace se encuentre una explicación y no una página en blanco.
El tema ya trae la integración de serie, así que la web en vivo lee disponibilidad y registra solicitudes sin un plugin de por medio.
Las solicitudes entran en la bandeja del PMS y las fechas ocupadas salen de ahí, probado primero contra una instancia de pruebas que corre con datos reales de desarrollo.
Polylang con selector, creciendo de dos a diez: catalán, castellano, inglés, alemán, polaco, neerlandés y el resto, incluidos un alfabeto cirílico y una maquetación de derecha a izquierda. Páginas, fichas y las cadenas de la interfaz del tema, todo traducido — y los fallos de RTL, que solo asoman cuando la maquetación se refleja, arreglados en vez de tapados.
Paleta propia, un héroe que lleva una fotografía real con un velo que de verdad tapa, el logo y el favicon servidos por el tema, y fotografía con licencia CC con la atribución a la vista en lugar de enterrada.
La cabecera cabe en un teléfono, las fichas dejaron de redirigir entre idiomas, y el velo del héroe ya no tapa el buscador que tiene detrás.
Se salvó lo que se podía salvar del sitio viejo y se construyó un tema de bloques desde cero, con el contenido cargado de vuelta. Quedó una línea en la ruta de la SPA muerta para que quien conserve un enlace antiguo vea una explicación y no una página en blanco.