WordPress Semanal
Escúchalo en: [https://gonzalonavarro.es/wp-content/uploads/2018/10/podcast-spotify.png] [https://gonzalonavarro.es/wp-content/uploads/2018/10/podcast-itunes.png] [https://gonzalonavarro.es/wp-content/uploads/2018/10/podcast-ivoox.png] [https://gonzalonavarro.es/wp-content/uploads/2023/11/Youtube_logo.png] [https://gonzalonavarro.es/wp-content/uploads/2023/11/feed-icon-1.png] En el episodio 528 de WordPress Semanal [https://gonzalonavarro.es/podcast] respondo a cinco preguntas de oyentes sobre menús condicionales en WordPress, cantidades mínimas de compra por producto en WooCommerce, configuración de LearnDash, ocultar elementos del menú según usuario y cómo controlar la imagen que aparece al compartir tu web en redes sociales.. Tabla de contenidos 1. 1) Mostrar un menú diferente según el nivel de membresía, de Miriam 2. 2) Establecer una cantidad mínima de compra solo para ciertos productos en WooCommerce, de Antonio 3. 3) Problemas con LearnDash: asignación de cursos, emails y Active Campaign, de Andrés 4. 4) Ocultar un botón del menú para usuarios logueados, de Beto 5. 5) La imagen equivocada al compartir un enlace en redes sociales, de Kiko 1) MOSTRAR UN MENÚ DIFERENTE SEGÚN EL NIVEL DE MEMBRESÍA, DE MIRIAM Respondida en minuto: 4:40 Tengo una web con membresías gestionadas con Restrict Content Pro y necesito que cada nivel de suscripción vea un menú diferente. Usaba If Menu con la versión Pro, pero ahora me da errores. ¿Conoces otro plugin? Respuesta resumida: If Menu lleva tiempo sin actualizarse y hay reportes de que ya no funciona bien con las últimas versiones de WordPress. Es normal que te dé problemas. Para menús condicionales tienes varias opciones, pero ninguna es perfecta para tu caso porque Restrict Content Pro no usa roles de WordPress estándar para distinguir niveles de membresía. Veamos las alternativas: * Nav Menu Roles [https://wordpress.org/plugins/nav-menu-roles/] (70.000+ instalaciones, 218 reseñas, actualizado en 2026): el más fiable. Permite mostrar u ocultar elementos del menú por rol de WordPress (logueado, no logueado, administrador, suscriptor…). Para que funcione con niveles de membresía de RCP necesitarías que cada nivel asigne un rol diferente de WordPress, o usar el filtro nav_menu_roles_item_visibility que el plugin proporciona para añadir tu propia lógica. * Conditional Menus [https://wordpress.org/plugins/conditional-menus/] (actualizado en 2026): funciona diferente. En lugar de controlar elementos sueltos, intercambia menús enteros según la condición: un menú para logueados, otro para no logueados, otro para una página concreta. Podrías crear un menú por nivel de membresía y asignar cada uno con lógica condicional. Es más simple pero menos granular. * Por código: si necesitas control total por nivel de membresía de RCP, la solución más limpia es un snippet que use las funciones de RCP (rcp_get_customer() y el nivel activo) para decidir qué menú cargar. Es más trabajo pero no dependes de que un plugin sea compatible con otro. Mi recomendación: si puedes asignar un rol de WordPress diferente a cada nivel de membresía en RCP, Nav Menu Roles es la opción más sólida y mantenida. Si no puedes, la solución por código es la más fiable a largo plazo. 2) ESTABLECER UNA CANTIDAD MÍNIMA DE COMPRA SOLO PARA CIERTOS PRODUCTOS EN WOOCOMMERCE, DE ANTONIO Respondida en minuto 7:55 Necesito que dos productos concretos de mi tienda solo se puedan pedir con un mínimo de dos unidades, pero que el resto de la tienda funcione normal. ¿Se puede hacer con código o necesito un plugin? Respuesta resumida: Se puede hacer de las dos formas. Con plugin: MinMax Quantity for WooCommerce [https://wordpress.org/plugins/minmax-quantity-for-woocommerce/] es el que mejor rendimiento ofrece. Te permite definir cantidades mínimas y máximas por producto, por categoría o a nivel global. Con código: también se puede con un snippet que valide la cantidad en el carrito y muestre un aviso si el producto no cumple el mínimo. Tenemos uno listo en la Zona Código (#471) [https://gonzalonavarro.es/codigos/471-cantidad-minima-compra-por-producto-woocommerce/]. 3) PROBLEMAS CON LEARNDASH: ASIGNACIÓN DE CURSOS, EMAILS Y ACTIVE CAMPAIGN, DE ANDRÉS Respondida en minuto 8:51 He montado una academia con LearnDash para un cliente y tengo varios problemas: cuando el alumno paga no se le asigna el curso automáticamente, los emails de registro no se pueden personalizar, el email de cambio de contraseña sale en inglés y quiero conectar los emails de los alumnos con Active Campaign. Respuesta resumida: 1) El curso no se asigna automáticamente tras el pago. Depende de cómo gestionas la venta. Si usas WooCommerce, el problema suele ser que el pedido se queda en «Procesando» en lugar de completarse. LearnDash asigna el curso cuando el pedido pasa a «Completado». La solución: forzar que los pedidos de productos virtuales se completen automáticamente. Tenemos un snippet para eso en la Zona Código (#299) [https://gonzalonavarro.es/codigos/299-completar-pedidos-woocommerce-automaticamente/]. 2) Personalizar los emails de registro. Puedes usar un plugin como Better Notifications for WP [https://wordpress.org/plugins/developer-flavor/] o similar que permita personalizar las notificaciones por email de WordPress. También se puede por código con los filtros de WordPress. 3) El email de cambio de contraseña sale en inglés. Esos emails los envía LearnDash, no WordPress. Asegúrate de tener la última versión instalada. Si sigue en inglés, puedes traducir los textos que falten con el plugin Loco Translate [https://wordpress.org/plugins/loco-translate/]. Tenemos un vídeo en los cursos [https://gonzalonavarro.es/cursos/wordpress-intermedio/8-traducir-cualquier-texto/] donde explico cómo usarlo. 4) Conectar los emails de alumnos con Active Campaign. Puedes usar Zapier [https://zapier.com/] o cualquier herramienta de automatización que conecte LearnDash con Active Campaign. Cuando un alumno se matricula, Zapier puede añadirlo automáticamente a una lista o etiquetarlo en AC. 4) OCULTAR UN BOTÓN DEL MENÚ PARA USUARIOS LOGUEADOS, DE BETO Respondida en minuto 12:16 Tengo un botón de «Suscribirme» en la cabecera de mi web (Astra + Astra Pro) y quiero que desaparezca cuando el usuario ya está registrado. Lo he intentado con is_user_logged_in() pero no me funciona. Respuesta resumida: La forma más sencilla es por CSS. WordPress añade automáticamente la clase logged-in al cuando un usuario está conectado. Puedes usar esa clase para ocultar el botón: .logged-in .tu-clase-del-boton { display: none; } Solo tienes que inspeccionar el botón con el navegador, copiar su clase CSS y usarla en el snippet. Lo explico paso a paso en la Zona Código (#340) [https://gonzalonavarro.es/codigos/340-ocultar-por-css-usuarios-logueados/]. Si prefieres usar un plugin, Nav Menu Roles te permite ocultar elementos del menú para usuarios logueados. Pero tendrías que convertir el botón en un elemento de menú y darle estilos para que se vea como botón. La opción CSS es más rápida y limpia. 5) LA IMAGEN EQUIVOCADA AL COMPARTIR UN ENLACE EN REDES SOCIALES, DE KIKO Respondida en minuto 14:39 Cuando comparto un enlace de mi web en redes sociales o en WhatsApp, la miniatura que aparece no es la correcta. ¿Cómo lo controlo? Respuesta resumida: La imagen que aparece al compartir un enlace viene de las etiquetas Open Graph (og:image) de tu web. Para controlarla: 1) Asegúrate de que cada contenido tiene su imagen destacada. Es lo primero que WordPress y los plugins de SEO usan para generar la etiqueta og:image. 2) Usa un plugin de SEO para especificar la imagen por red social. Con Yoast, SEOPress o cualquier otro plugin de SEO puedes elegir exactamente qué imagen aparece al compartir en Facebook, Twitter/X, etc. Lo explico en el curso de Yoast SEO, apartado de Social [https://gonzalonavarro.es/cursos/yoast-seo/4-social/]. Si usas otro plugin de SEO, la opción equivalente está en la sección de redes sociales de cada entrada o página. 3) Si ya compartiste el enlace antes con otra imagen, la red social tiene cacheada la versión antigua. Tienes que «limpiar» esa caché: * Facebook: Facebook Debugger [https://developers.facebook.com/tools/debug/] * Twitter/X: usa el validador de Cards de Twitter * LinkedIn y otras: busca en Google «[nombre de la plataforma] + debugger» Introduces la URL, la plataforma limpia la caché y la próxima vez que alguien comparta ese enlace aparecerá la imagen correcta. PLUGIN DE LA SEMANA El plugin de la semana es Desktop Mode [https://wordpress.org/plugins/desktop-mode/]. Transforma el panel de administración de WordPress en un escritorio tipo sistema operativo: las pantallas del admin se abren como ventanas que puedes arrastrar, redimensionar y minimizar, con un dock lateral y una barra de tareas. Se activa por usuario (nadie más ve cambios) y al desactivarlo todo vuelve a la normalidad. CONTENIDOS RECOMENDADOS * Vídeo de la Zona Código: Cerrar sesiones de usuarios desde el admin de WordPress (individual y masivo) [https://gonzalonavarro.es/codigos/474-cerrar-sesiones-usuarios-admin-wordpress/] * Ocultar elementos por CSS para usuarios logueados [https://gonzalonavarro.es/codigos/340-ocultar-por-css-usuarios-logueados/] * Completar pedidos de WooCommerce automáticamente [https://gonzalonavarro.es/codigos/299-completar-pedidos-woocommerce-automaticamente/] * Cantidad mínima de compra por producto en WooCommerce [https://gonzalonavarro.es/codigos/471-cantidad-minima-compra-por-producto-woocommerce/] * Curso de Tutor LMS Pro [https://gonzalonavarro.es/cursos/tutor-lms-pro/] * Newsletter de WordPress Semanal [https://gonzalonavarro.es/lista/] La entrada 528 | Menús condicionales, cantidad mínima por productos en Woo, LearnDash y más (Q&A) [https://gonzalonavarro.es/blog/528-q-a/] es una artículo de Gonzalo Navarro [https://gonzalonavarro.es].
534 episoder
Kommentarer
0Vær den første til at kommentere
Tilmeld dig nu og bliv en del af WordPress Semanal-fællesskabet!