web-dev-qa-db-ja.com

現在のユーザーがコメントした投稿をすべて一覧表示する

ログインしているユーザーによるコメントがあるすべての投稿を(Foodsカスタム投稿タイプで)表示するページが必要です。

リストには、タイトルへのリンクを付けてタイトルを表示するだけです。

これは可能ですか?

これまでに試したこと

<?php if (is_user_logged_in() ) : ?>

<?php
        if ( is_user_logged_in()) {

        global $current_user;
        get_currentuserinfo();

        $args=array(
            'post_type' => 'foods',
            'posts_per_page' => 5,
        );
        $my_query = null;
        $my_query = new WP_Query($args);
        if( $my_query->have_posts() ) {
        echo 'Your Comments';
        while ($my_query->have_posts()) : $my_query->the_post(); ?>
        <p><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></p>
        <?php
        endwhile;
        }
        wp_reset_query();  // Restore global post data stomped by the_post().
        }
    ?>
<?php endif; ?> 

しかし、もちろん私はまだ使っていません$ current_user-> ID。使い方はまだわかりません。

2
Bernie

フィルタや手動のSQLクエリを避けたい場合は、(未テストの)試してみることができます。

$args = array(
    'post_type'      => 'foods',
    'posts_per_page' => 5,
    'post__in' => array_unique( 
         wp_list_pluck( 
            get_comments( array(
                'user_id' => get_current_user_id() 
                )
            ),       
            'comment_post_ID' 
         )
    ),
);
$my_query = new WP_Query( $args );
3
birgire