Riassunto AI
Descrizione
Il filtro wpforms_dynamic_choice_post_type_args viene utilizzato per popolare le Scelte dinamiche per tipi di post e tassonomie.
Parametri
- $args
- (array) (Richiesto) Argomenti dall'invio del post come ID categoria, ID tag, ID autore, ecc.
- $field
- (array) Valori/proprietà del campo di inserimento sanificati.
- $form_id
- (int) ID del modulo.
Origine
wpforms/includes/functions/form-fields.php
Maggiori Informazioni
Il filtro wpforms_dynamic_choice_post_type_args fornisce un elenco di argomenti supportati dal post come la Categoria. Allo stesso modo, puoi anche utilizzare wpforms_dynamic_choice_taxonomy_args per estrarre argomenti dalla tassonomia dei Tag.
In questo esempio mostrato di seguito, la funzione verrà elaborata sull'ID del modulo 789 per l'ID del campo 10 e includerà solo i post della categoria 11.
Esempi
/**
* Limit posts or pages displayed by category.
*
* @link https://wpforms.com/developers/wpforms_dynamic_choice_post_type_args
*
* @param array $args Arguments from post submission.
* @param array $field Sanitized field data.
* @param int $form_id Form ID
*
* @return $args
*/
function wpf_dev_dynamic_choices_categories( $args, $field, $form_id ) {
// Only on form #789 and field #10
if ( $form_data[ 'id' ] == 789 && $field[ 'id' ] == 10 ) {
$args[ 'category' ] = '11';
}
return $args;
}
add_filter( 'wpforms_dynamic_choice_post_type_args', 'wpf_dev_dynamic_choices_categories', 10, 3 );
Articoli di riferimento
Come escludere post, pagine o categorie dalle scelte dinamiche
FAQ
D: Come posso mostrare solo le categorie figlie?
R: Per visualizzare le categorie figlie nel tuo modulo, devi includere sia l'ID della categoria genitore sia gli ID delle categorie figlie. Questo perché la funzionalità attuale richiede che venga specificata la categoria genitore per recuperare e visualizzare correttamente le sue categorie figlie.
/**
* Limit posts or pages displayed by category.
*
* @link https://wpforms.com/developers/wpforms_dynamic_choice_post_type_args
*
* @param array $args Arguments for post submission.
* @param array $field Sanitized field data.
* @param int $form_id Form ID
*
* @return array Updated arguments
*/
function wpf_dev_dynamic_choices_include( $args, $field, $form_id ) {
// Ensure form ID is correctly handled
if ( is_array( $form_id ) ) {
$form_id = $form_id[ 'id' ];
}
// Apply only to specific form and field IDs
if ( $form_id == 122 && $field[ 'id' ] == 11 ) {
// Include category IDs - 87 is the parent; 88 and 89 are child categories
$args['include'] = '87,88,89';
}
return $args;
}
add_filter( 'wpforms_dynamic_choice_taxonomy_args', 'wpf_dev_dynamic_choices_include', 10, 3 );
Questo snippet garantisce che sia la categoria genitore (ID 87) sia le sue categorie figlie (ID 88 e 89) siano incluse nelle scelte dinamiche.




