Pregunta sobre Pinpoint Booking System - #1 WordPress Booking Plugin de Wordpress:

Cargar bajo demanda / clic

Un usuario preguntó 👇

Hola,

Para mejorar el rendimiento de la página, solo quiero cargar el calendario cuando un usuario hace clic en un enlace «Mostrar calendario» o algo como esto. ¿Hay alguna forma de lograrlo?

Gracias

(@dotonpaper)

hace 1 año

Hola,

No existe tal característica en nuestro plugin para lograr esto.

¡Gracias!

(@ rom174)

hace 1 año

Hola,

Gracias por la respuesta.

De hecho, estoy buscando más una «forma» de lograrlo con código o un plugin que con una función ya construida.

¿Cómo configuro un calendario instantáneo sin usar el acceso directo? ¿Cuál es el código javascript para adjuntar a div?

Estoy usando el gran anterior Booking Calendar PRO (jQuery Plugin) en otro sitio, así que sé que es posible, pero con esta versión de WP estoy confundido.

Agradecemos cualquier consejo. Gracias por adelantado

(@ jyd44)

hace 1 año

Mi contribución a su aplicación: si planea publicar el calendario en una página de WP y tiene suficiente conocimiento del desarrollo de plugins y temas en WordPress, puede usar el siguiente truco: – crear una página con una plantilla dedicada en la que solo mostrará el calendario y el calendario, utilizando el acceso directo correspondiente, – cree la plantilla dedicada. Esta plantilla debe usar el mínimo estricto del núcleo de wordpress para garantizar que se generen todos los recursos necesarios (principalmente el tema js y CSS y de Pinpoint, para mostrar el mínimo rígido (sin encabezado, sin barras laterales, sin pie de página, etc.…): cree su propio plugin para administrar su propio acceso directo que lo llevará a la página donde desea que se muestre el calendario. En esta página, establecerá iframe, soporte de calendario El acceso directo mostrará algo como: «Haga clic aquí para ver el calendario» y el javascript asociado abrirá el marco y establecerá el src del iframe en la página creada anteriormente. Con suerte, esto ayudará a solucionar su necesidad

(@ rom174)

hace 1 año

Hola @ jyd44

No estoy del todo seguro de haber entendido todo bien, ¡pero parece un truco muy bueno! Gracias por tu ayuda.

Nunca pensé en esa forma de integrar / cargar el calendario a pedido. Estaba buscando algo más cohesivo / más limpio (con el debido respeto) pero presto mucha atención a su solución.

Algunas preguntas sobre su solución: En primer lugar, si recomienda hacerlo de esta manera, ¿estaría de acuerdo en que no hay forma de agregar instantáneamente un calendario con javascript? ¿Con un atajo? Tal vez me equivoque, pero ¿es una buena práctica usar un iframe? ¿Es eso lo que está haciendo cuando no necesita cargar el calendario en todas las cargas de página o si desea cargarlo a pedido? ¿Estás hablando de desarrollar un tema, el objetivo aquí es simplemente conseguir un tema libre de activos no deseados? Entonces, ¿el único objetivo es cargar la página más ligera o hay otra razón? Creando una plantilla de página personalizada dentro de mi tema actual / tema hijo, ¿no lidiarás con el script de «purificación» que sugieres? Entonces, el siguiente paso es usar un plugin como, por ejemplo, «Cambiar tema de Freesoul» para especificar que esta página personalizada específica se está cargando con un tema de desactivación. ¿O debería instalar este nuevo tema en otro dominio (e instalar el plugin en esta nueva instalación)?

Ahora, esto es lo que descubrí ayer sobre lo que quiero lograr, ¿podrías darme un consejo sobre: ​​Qué piensas acerca de usar AJAX (ver publicación de referencia):

Maneje el clic con JS, conecte la aplicación a las acciones, maneje la aplicación AJAX replicando el acceso directo con do_shortcode('[DOPBSP id="x" lang="xx"]'); y el wp_localize_script() ejercicio para asegurar las solicitudes. ¿Diría que esta solución permite ejecutar un acceso directo de forma asíncrona / bajo demanda y se ajusta a lo que necesito lograr?

¡De nuevo, gracias por tu ayuda!

(@ jyd44)

hace 1 año

De acuerdo, pero para ser un poco más preciso: mi objetivo era usar el plugin PinPoint tal como está, sin ninguna modificación. Este punto es muy importante si tiene la intención de seguir las versiones de este plugin. Con eso en mente, era la única forma de encontrar una solución externa. Estoy de acuerdo en que simplemente funciona, y después de muchas búsquedas en PinPoint Code, estoy bastante seguro de que podrías hacer lo que planeas con una aplicación ajax, con algunas modificaciones. (el código que ejecuta el acceso directo se encuentra en el archivo de inclusión / calendars / class-frontend-calend.php y verá que al ejecutar el acceso directo se configura el evento de documento listo para cargar el contenido del calendario. llame a ajax. Necesitará Otro punto es que el tratamiento de acceso directo agrega el enlace a un archivo CSS y nunca he intentado agregar dicho contenido a una llamada ajax para un documento. El último punto es que necesita el contenido del opciones para recuperar el método init DOPBSPCalendar en su propio código (consulte el archivo de activos / jquery.dop.frontend.BSPCalendar.js)). La pregunta es: ¿qué tan profundo es necesario entrar en el código PinPoint, es aceptable? ¿Qué pasa con el soporte si realiza algunas modificaciones por su cuenta?

Entonces, volviendo a sus preguntas: – ¿Es una buena práctica usar iframe? Estamos para la misma fuente, lo cual es aceptable en mi opinión. Otra forma es establecer un div (por ejemplo) y cargar el contenido de este div con el resultado de la aplicación ajax. – cargar el calendario a pedido: establezca la url de iframe en una solicitud de usuario con un javascript que adjunte al activador (cualquier enlace de texto, icono o lo que necesite) el calendario se cargará solo a pedido, correspondiente a d solicitud. – No estaba hablando de desarrollar un tema nuevo, sino de ser consciente de cómo construir un tema. Y sí, al desarrollar una plantilla dedicada para su página, ayuda a eliminar todos los activos innecesarios, como el encabezado, el pie de página, las barras laterales, etc., cosas que no necesita mostrar en el marco. Pero debe asegurarse de que se soliciten todos los eventos de wordpress necesarios (como enqueue_scripts, etc.)

Espero que esto aclare mi propuesta.

(@ rom174)

hace 1 año

Hola @ jyd44

De nuevo muchas gracias por la opción de limpiador AJAX que me hizo pensar perfectamente en su carga bajo demanda.

Para aquellos que necesiten hacerlo:

Primero cree una plantilla de página limpia Cree una página con esta plantilla que incorpore el acceso directo del calendario Excluya de los plugins almacenados en caché para acceder a los scripts individualmente En una página normal de su sitio, cree su botón con la clase Cree su div objetivo (contenedor de calendario) con otra clase Cree una función AJAX para cargar el calendario en el div de destino cuando se hace clic en el botón

Para ir más allá, debido a que estamos usando AJAX y el calendario siempre lleva tiempo, podemos ahorrar recursos y tiempo psicológico, por lo que podemos precargar el calendario desde el salto / mouse hasta el tiempo de carga. para reducir el desplazamiento del usuario del calendario entre el desplazamiento del mouse y el clic, para hacer esto:

Etiquetar la función $(".your-button").one("mouseenter", function(){} para cargar el calendario con el primer mouse-mouse (y no los siguientes si no se hace clic) En la llamada al éxito, primero procese la respuesta de datos para eliminar la etiqueta del script (o ruta llegar a cargar esta función en la página que contiene el calendario) de lo contrario, la función cambiará y el calendario se lanzará cada vez que se agregue el botón Agregue la respuesta complementaria al div de destino Eso es todo

Para evitar la función única () y dependiendo de los escenarios, puede doblar el botón en un div y convertirlo en el div de destino.

Déjame saber @ jyd44 lo que piensas al respecto y si ves alguna mejora en esto o una mejor manera de manejarlo.

¿Solucionó tu problema??

0 / 0

Deja una respuesta 0

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *