Estoy usando Advanced Custom Fields / ACF para crear campos personalizados. Una de ellas es una lista de casillas de verificación que muestran algunas opciones (opción1, opción2, opción3 ...) .
Ahora quiero mostrar todas las opciones de este campo en una página separada en la interfaz así:
Opciones:
- opción 1
- opción 2
- opción 3
- ...
¿Cómo puedo recuperar todas las opciones con claves de ACF?
Respuestas:
La
get_field_object
función ACF se puede usar para obtener información y opciones para un campo específico.Primero necesita la clave de campo del campo específico que desea generar. Al editar un grupo de campos, haga clic en la pestaña de opciones de pantalla en la parte superior de la página. Debería ver una opción para alternar la visualización de la tecla de campo (está oculta de forma predeterminada para ahorrar espacio):
Una vez que tenga la clave, puede cargar el objeto de campo y generar sus valores:
fuente
Si está intentando generar algo si se marcó una casilla de verificación, use:
Si está tratando de mostrar una lista de las opciones marcadas, use esto:
Esto le dará una serie de valores que puede administrar con una
foreach
declaración. El usothe_field('checkbox')
le dará una cadena separada por comas de las opciones que también puede dividir.También te sugiero que vayas al sitio de ACF y revises la documentación. La mayoría de las preguntas de este tipo serán respondidas allí con detalles decentes, y el desarrollador también está activo en sus foros de soporte.
EDITAR: si desea que la lista de opciones disponibles salga en una página para generar una consulta dinámica, tengo justo lo que necesita. Esta es una pieza que construí ayer para extraer una lista de meta valores de una clave de campo personalizada (usando ACF). Lo he hecho bastante genérico para ti. Hay otra parte de JS para manejar la solicitud de ajax, y una pieza bastante complicada de php que genera las publicaciones resultantes. Realmente no puedo reescribirlos: el JS es una llamada / respuesta ajax estándar de WP orientada hacia adelante, y el PHP es un desastre de verificaciones condicionales para los 12 campos ACF diferentes que estamos mostrando (2 de los cuales son repetidores). Lo básico es este código aquí, el botón
onClick
llama a la función ajax en un archivo JS separado, y el php para la función ajax en sí misma esencialmente configura una matriz de argumentos para la consulta,$selectedOption
o$_POST['option']
como meta_value. Eso se alimenta a anew WP_Query( $args );
, que luego se usa en un bucle, cuya salida se retroalimenta a js a través deadd_action('wp_ajax_the_ajax_hook', 'fetch_option_list');
yadd_action( 'wp_ajax_nopriv_the_ajax_hook', 'fetch_option_list' ); //for non logged-in users
.fuente
foreach
bucle para pasar. Las funciones posteriores traen la lista de publicaciones a través de ajax, pero dejé ese bit.