La función Selector de Campañas permite a los donantes elegir directamente desde cualquier formulario de donación a qué campaña se destinará su donación, creando una experiencia de donación multicanal fluida sin necesidad de navegar por páginas.
Tabla de Contenidos
Empezar

El Selector de Campañas transforma tus formularios de donación añadiendo un desplegable inteligente que permite a los donantes cambiar sin problemas entre campañas activas. Cuando un donante selecciona una campaña diferente, el formulario se actualiza dinámicamente a través de AJAX para mostrar los importes de donación, los campos del formulario y los mensajes específicos de la campaña apropiados.
Beneficios clave
- Mejor experiencia para el donante: No es necesario navegar entre páginas de campañas.
- Mayores tasas de conversión: Reduce la fricción en el proceso de donación.
- Gestión inteligente de campañas: Excluye automáticamente las campañas finalizadas o completamente financiadas.
- Experiencia personalizada: Recuerda la última selección de campaña del donante.
- Compatibilidad universal: Diseñado para funcionar con todos los tipos de formularios y pasarelas de pago.
Requisitos
- Charitable Pro: Versión 1.8.12 o superior
- WordPress: Versión 6.2 o superior
- PHP: Versión 7.4 o superior
- Múltiples campañas activas: Al menos 2 campañas para que aparezca el selector
Habilitar el Selector de Campañas
- En Charitable Pro: Navega a Ajustes de Charitable → General → Formulario de Donación en tu administrador de WordPress
- Desplázate hasta la sección Selector de Campañas
- Marca Habilitar Selector de Campañas para activar la función
- Configura tus preferencias usando las opciones de abajo
- Haz clic en Guardar Cambios
Opciones de configuración
Ajustes Básicos
Etiqueta del Desplegable
- Por defecto: “Elige una Campaña”
- Propósito: Texto que se muestra encima del desplegable del selector de campañas
- Ejemplo: “Selecciona la causa que te gustaría apoyar”
Texto de la Ayuda Emergente
- Propósito: Texto de ayuda que se muestra cuando los donantes pasan el ratón por encima del icono de información
- Ejemplo: “Elige qué campaña debe recibir tu donación”
- Nota: Deja en blanco para ocultar el icono de ayuda emergente
Control de Visualización
Mostrar Selector de Campañas En
Elige dónde debe aparecer el selector de campañas:
- Todas las Campañas (Por defecto): Muestra el selector en el formulario de donación de cada campaña
- Solo Campañas Seleccionadas: Limita la visualización a campañas específicas
Campañas Seleccionadas para Visualización
Cuando se elige "Solo Campañas Seleccionadas": – Selecciona qué campañas deben mostrar el selector de campañas – Usa Ctrl/Cmd+Click para seleccionar varias campañas – Solo los donantes que vean estas campañas verán el selector
Nota: Campañas de Embajador
El Selector de Campañas puede no funcionar como se espera con las campañas de Embajador. El soporte nativo para campañas de Embajador está en la hoja de ruta para esta función.
Contenido del Desplegable
Origen del Desplegable
Controla qué campañas aparecen en el desplegable:
- Todas las Campañas Activas (Predeterminado): Incluye automáticamente todas las campañas elegibles
- Solo Campañas Seleccionadas: Elige manualmente qué campañas incluir
Campañas Seleccionadas para el Desplegable
Cuando se elige "Solo Campañas Seleccionadas": – Selecciona manualmente las campañas a incluir en el desplegable – Permite la selección curada de campañas – Útil para destacar campañas o causas específicas
Opciones de Organización
Agrupar por Categoría
- Propósito: Organiza las campañas por sus categorías asignadas en el desplegable
- Beneficio: Ayuda a los donantes a navegar por un gran número de campañas
Excluir Tipos de Campaña
Ajusta qué campañas aparecen excluyendo:
- Campañas Finalizadas: Campañas cuya fecha de finalización ha pasado
- Campañas Completamente Financiadas: Campañas que han alcanzado su objetivo
Memoria y Persistencia
Recordar Selección de Campaña
Controla cómo el selector recuerda las preferencias del donante:
- Recordar por 7 Días (Predeterminado): Almacena la selección en el navegador durante una semana
- Recordar por Esta Sesión: Almacena la selección hasta que se cierre el navegador/pestaña
- No Recordar: Muestra siempre la selección predeterminada
Funciones avanzadas
Carga de Formularios AJAX
El Selector de Campañas utiliza tecnología AJAX para proporcionar un cambio de formulario sin interrupciones:
- Actualizaciones Instantáneas: Los formularios se cargan sin recargar la página
- Indicadores de Carga: Retroalimentación visual durante las transiciones de formulario
- Compatibilidad con pasarelas de pago: Reinicializa automáticamente Stripe, PayPal y otras pasarelas
- Preservación del estado del formulario: Mantiene la información del donante siempre que sea posible
Filtrado inteligente de campañas
La función filtra automáticamente las campañas según criterios inteligentes:
- Excluye campañas P2P: Se ocultan las campañas de embajadores y entre pares
- Filtrado por fecha: Respeta las fechas de inicio y fin de la campaña
- Filtrado por objetivo: Puede excluir campañas con financiación completa
- Comprobaciones de estado: Solo incluye campañas publicadas y activas
Comportamiento contextual
El selector adapta su comportamiento según el contexto:
- Páginas específicas de campaña: Respeta el contexto de la campaña actual
- Formularios incrustados: Funciona perfectamente con shortcodes y widgets
- Formularios modales: Compatible con formularios de donación emergentes o superpuestos
- Formularios de varios pasos: Mantiene la selección de campaña durante todo el proceso
Ejemplos de Implementación
Implementación básica
El selector de campañas aparece automáticamente cuando:
1. La función está habilitada en la configuración
2. Existen varias campañas elegibles
3. La página/formulario actual cumple los criterios de visualización
Personalización de la plantilla
Puedes sobrescribir la plantilla predeterminada copiando /wp-content/plugins/charitable-pro/templates/donation-form/campaign-selector.php al directorio /charitable/donation-form/ de tu tema activo.
Funciones útiles
// Check if campaign selector should display
if ( charitable_get_option( 'campaign_selector_enabled' ) ) {
// Custom logic here
}
// Get campaigns that appear in selector
$campaigns = charitable_get_campaign_selector_campaigns();
// Check if current campaign/page should show selector
$should_display = charitable_campaign_selector_should_display( $campaign_id );
Solución de problemas
El selector de campañas no aparece
Posibles causas:
– La función no está habilitada en la configuración
– Solo hay una campaña disponible
– La campaña actual está excluida en la configuración de visualización –
Todas las campañas finalizadas o con financiación completa
Soluciones:
1. Verifica que la función esté habilitada en la configuración.
2. Asegúrate de que existan al menos 2 campañas elegibles
3. Comprueba la configuración de visualización de la campaña actual
4. Revisa la configuración de exclusión de campañas
Problemas de carga AJAX
Síntomas:
– Los formularios no se actualizan al seleccionar campañas
– Errores de JavaScript en la consola del navegador
– El indicador de carga no desaparece
Soluciones:
1. Borrar cachés del navegador y de plugins
2. Desactivar temporalmente plugins de JavaScript conflictivos
3. Comprobar si hay problemas de compatibilidad con el tema
4. Verificar que las versiones de WordPress y de los plugins cumplen los requisitos
Problemas con la pasarela de pago
Síntomas:
– Los botones de pago no funcionan tras cambiar de campaña
– Errores de Stripe/PayPal tras la actualización del formulario
Soluciones:
1. Asegurarse de que las pasarelas de pago están configuradas correctamente
2. Comprobar la compatibilidad de la pasarela con la carga AJAX
3. Borrar cachés de la pasarela de pago
4. Cambiar a un formulario de donación no modal con la opción de selector desactivada para ver si el problema persiste.
5. Contactar con soporte para problemas específicos de la pasarela
Consideraciones de rendimiento
Para sitios con muchas campañas:
– Considerar el uso de "Solo campañas seleccionadas" para la fuente del desplegable
– Habilitar la agrupación por categorías para una mejor organización
– Monitorizar los tiempos de carga de la página con listas de campañas grandes
– Considerar soluciones de caché para sitios con mucho tráfico
Recursos para desarrolladores
Ganchos y filtros
// Filter available campaigns for selector
add_filter( 'charitable_campaign_selector_campaigns', 'custom_filter_campaigns' );
// Modify selector display conditions
add_filter( 'charitable_campaign_selector_should_display', 'custom_display_logic', 10, 2 );
// Customize AJAX response data
add_filter( 'charitable_campaign_selector_ajax_response', 'custom_ajax_data' );
Personalización CSS
Utilizar estas clases para estilos personalizados:
/* Main container */
.charitable-campaign-selector {}
/* Dropdown styling */
.charitable-campaign-selector select {}
/* Loading state */
.charitable-campaign-selector.loading {}
/* Tooltip styling */
.charitable-campaign-selector-tooltip {}
Para obtener ayuda adicional con la función Campaign Selector, visita nuestra documentación de soporte o contacta con nuestro equipo.





