web-dev-qa-db-fra.com

Affichage d'un tableau de cases à cocher à partir d'un champ personnalisé avancé

J'utilise le plugin de champ personnalisé avancé pour wordpress et je me demande si je suis capable de faire ce qui suit:

Si la case à cocher est cochée = web et que le titre de la page est identique à cela.

Est-ce que quelqu'un sait quel code utiliser pour cela?

UPDATE: Le plus proche que j'ai est celui-ci:

<?php $fields = get_acf(); print_r ($fields->categories); ?> 

Mais c'est imprimer ceci:

Array ( [0] => option_1 [1] => option_2 [2] => option_9 )

1. Comment puis-je imprimer les vrais noms (sans dire tableau)?

2 Indiquez également que si = web et correspond au titre de la page, vous obtenez un écho?

1
Rob

La manière dont le plug-in de champ personnalisé avancé gère les cases à cocher se trouve dans un tableau. Vous pouvez ainsi utiliser ce tableau. Par exemple, si le nom du champ est categories et que vous voulez voir si le contenu Web (coché) est coché, vous pouvez utiliser:

<?php if(in_array('web', get_field('categories') )): ?>
    <h1>Web was ticked!</h1>
<?php endif; ?>

Pour répondre à vos questions:

  1. Comment puis-je imprimer les vrais noms (sans dire tableau)?

si vous voulez imprimer les noms à la place du tableau, vous pouvez utiliser:

$cats = get_field('categories');
echo '<ul>';
foreach ($cats as $key => $val){
    echo '<li>'.$val.'</li>';
}
echo '<ul>';

cela devrait vous donner quelque chose comme:

  • option 1
  • option 2
  • option_9

2 Indiquez également que si = web et correspond au titre de la page, vous obtenez un écho?

comme le premier extrait de code, mais ajoutez une autre condition:

<?php if(in_array('web', get_field('categories') ) && $post->post_title == "web"){
     echo  '<h1>Web was ticked! and matches the page title</h1>
}
1
Bainternet