Partage
  • Partager sur Facebook
  • Partager sur Twitter

afficher des fields ACF

Sujet résolu
    29 février 2024 à 23:39:41

    Bonjour,

    je travaille sur un Wordpress, avec ACF.

    J'ai un CPT auquel un groupe ACF est lié.

    Dans le backoffice du wordpress, on crée une page à partir du CPT dans lequel on peut remplir les champs ACF prévus.

    Sur le front, les pages créees à partir du CPT affichent le contenu prévu.

    Tout ça fonctionne très bien.

    Mais je dois afficher une partie des infos ACF ailleurs que dans le CPT, par exemple sur la page d'accueil pour donner envie de visiter ces pages.

    Je ne sais pas comment m'y prendre.

    Pourriez-vous m'aider ? Je suis en train d'apprendre php, je n'ai que très peu de notions.

    J'ai essayé ceci, mais ça fait planter le site :

    function afficher_dernieres_datas_shortcode() {
    
      ob_start(); // Initialiser le tampon de sortie
        // Query pour récupérer les pages du CPT
        $args = array(
            'post_type' => 'publication', // choix de mon CPT
            'posts_per_page' => -1, // Récupérer toutes les pages
            'order' => 'DESC',
        );
    
        $query = new WP_Query($args);
    
        // Vérifie si des pages ont été trouvées
        if ($query->have_posts()) {
            // Boucle sur les pages
            while ($query->have_posts()) {
                $query->the_post();
                // Utilisez get_field pour récupérer la valeur de vos champs ACF
                $repeteur_acf = get_field('cat_publi'); 
    
               if (is_array($repeteur_acf)) {
                    // Limitez à 8 éléments du tableau
                    $repeteur_acf = array_slice($repeteur_acf, 0, 8);
    
                    // Affichez les valeurs du champ
                    foreach ($repeteur_acf as $valeur) {
                        echo esc_html($valeur['titre_taxo']);
                    }
                }
            }
    
            // Réinitialise les données de la requête
            wp_reset_postdata();
        } else {
            // Aucune page trouvée
            echo 'Aucune page trouvée.';
        }
        return ob_get_clean(); // Récupérer et nettoyer la sortie du tampon
    }
    
    // Enregistrez le shortcode
    add_shortcode('afficher_dernieres_datas', 'afficher_dernieres_datas_shortcode');



    • Partager sur Facebook
    • Partager sur Twitter
      2 mars 2024 à 11:12:00

      Hello,

      ça peut intéresser quelqu'un alors je pose la réponse là.

      Il s'agit de la même erreur que j'ai fait dans ce post puisque je travaillais sur les deux fonction en même temps:

      https://openclassrooms.com/forum/sujet/afficher-un-field-acf-de-type-taxonomie-a3295

      Et donc la bonne syntaxe pour afficher un champ ACF de type taxonomie c'est ça:

        echo esc_html($valeur['titre_taxo']->name );


      Caroline

      • Partager sur Facebook
      • Partager sur Twitter

      afficher des fields ACF

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      • Editeur
      • Markdown