web-dev-qa-db-fra.com

Compter toutes les images d'un certain type de message

J'ai suivi deux messages liés à ma requête. L'une concernait le nombre d'images jointes à un message et la seconde concernait toutes les images d'un type de message donné . J'ai essayé de combiner les deux codes de la manière suivante, mais cela n'a pas aidé:

$query = new WP_Query( array( 'post_type' => 'gallery', 'posts_per_page' => -1 ) );
if( $query->have_posts() ){
    while($query->have_posts()){
        $query->the_post();
        $attachments = get_children( array( 'post_parent' => $parent->ID, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID' ) );
        $count = count( $attachments );
    }
}

Quelqu'un peut-il m'aider à compter toutes les images attachées à un type de message donné?

1
navjotjsingh

Essayez de placer ceci dans votre fichier de fonctions, puis placez <?php $attachment_count; ?> dans un fichier de modèle.

function attachment_count() {
global $post;
    //Get all attachments
    $attachments = get_posts( array(
        'post_type' => 'attachment',
        'posts_per_page' => -1
    ) );

    $att_count = 0;
    if ( $attachments ) {
        foreach ( $attachments as $attachment ) {
            // Check for the post type based on individual attachment's parent
            if ( 'gallery' == get_post_type($attachment->post_parent) ) {
                $att_count = $att_count + 1;
            }
        }
        echo $att_count;
    }
}
2
5t3ph