web-dev-qa-db-fra.com

Extrayez les champs personnalisés avancés dans le post-plugin associé

J'utilise le plugin Advanced Custom Fields et les messages connexes microkid. Je voudrais afficher mes champs personnalisés dans Articles connexes C'est ce que j'ai eu jusqu'à présent?

<?php //related artworks

$related = MRP_get_related_posts( $post->ID, true, false, 'quote_list' );

//for testing related array
//print_r ($related);

if(!empty($related)) {
    foreach($related as $key => $value) {
        $related = get_post($value);
        $related_id=$related->ID;
        $related_content=$related->post_excerpt;
        $related_url=$related->get_permalink;
        echo "<div><h4>".get_the_title($related_id)."</h4></div>";
        //echo get_the_post_thumbnail($related_id);
        echo "".$related_content."<br/><br/>";
        echo "<a href=".get_permalink($related_id).">read more</a>";
        //for testing related array
        //print_r ($related);
    }

}?>

Mais comment pourrais-je extraire mon champ personnalisé avancé? Merci beaucoup,

1
jmysona

Selon les champs personnalisés avancés, vous obtenez la valeur avec get_fieldhttp://www.advancedcustomfields.com/docs/functions/get_field/

Il suffit de changer "text_field" pour votre clé de champ.

<?php
$related = MRP_get_related_posts( $post->ID, true, false, 'quote_list' );

if( !empty( $related ) ) {
    foreach( $related as $key => $value ) { 

        // Get post
        $related = get_post( $value );

        // Get the field "text_field" on all posts
        $value = get_field( "text_field", $related->ID  );

        $output = '<div><h4>';
            $output .= get_the_title( $related->ID );
        $output .= '</div></h4>';

        // print the value from ACF

        if( $value ) {
            $output .= $value;
        }

        $output .= $related->post_excerpt;

        $output .= '<a href="'. get_permalink( $related->ID  ) .'">'. __('Read more','domain') .'</a>';
    }

    // Echo 
    echo $output;
}
1
Pontus Abrahamsson

Utilisez la fonction get_post_meta () pour obtenir des données dans un champ personnalisé. Incluez cette fonction dans votre boucle et définissez les bons paramètres. Le premier paramètre est l'id de la publication ($ related_id), le deuxième est la clé, les balises méta clé/nom et le troisième paramètre défini sur true si vous n'obtenez qu'un seul paramètre.

Pour obtenir toutes les métadonnées, utilisez get_post_custom ($ related_id).

Pour identifier les données et la clé, vous pouvez utiliser le plug-in Debug Objects, mais uniquement la version git.https: //github.com/bueltge/Debug-Objects

0
bueltge