WordPress:如何按类别输出 Post 图像?

WordPress: How to output Post images by category?

我试图逐一遍历所有类别,然后打印出 post title/image/image-link。我怎样才能使我的代码工作?

<?php $categories= get_categories();
        foreach ($categories as $cat) {
            echo '<div>'.
            $posts = get_posts(array('category' => $cat->term_id));
            if ($posts) {
                foreach ($posts as $p) {
                    echo get_the_post_title( $p->title ).'<br>';
                    echo get_the_post_thumbnail( $p->ID, 'medium' ).'<br>';
                    echo get_the_post_thumbnail_link( $p->imagelink, 'medium' ).'<br>';
                }
            }
        }
?>

我知道我的 echo 语句在第二个 foreach 循环中可能是错误的,但绝对重要的是第一个 for 循环保持原样 same/where。请帮忙

所以...

  1. 第 3 行有错别字。
  2. get_the_post_thumbnail() 不是函数,请使用 get_the_title().
  3. get_the_post_thumbnail_link() 不是一个函数(如果你没有定义),使用 wp_get_attachment_image_src().

试试这个:

<?php $categories= get_categories();
        foreach ($categories as $cat) {
            echo '<div>';
            $posts = get_posts(array('category' => $cat->term_id));
            if ($posts) {
                foreach ($posts as $p) {
                    echo get_the_title( $p->ID ).'<br>';
                    echo get_the_post_thumbnail( $p->ID, 'medium' ).'<br>';
                    echo wp_get_attachment_image_src( get_post_thumbnail_id($p->ID), 'medium' )[0];

                }
            }
        }
?>