最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

php - How can I properly loop through an array gotten from my wordpress database and display it to my site

programmeradmin2浏览0评论

I am trying to display some posts information from my database on my live site. I have done the query correctly because I can view the items on the live site. But I need to take three items to display. The post title, the post content which houses the images, and the post id which links to the posts. I seem to have written it correctly but it does not do anything.

This is the code

<?php 
    global $wpdb;               
    $results = $wpdb->get_results( "SELECT * FROM $wpdb->posts WHERE `post_type`='post' AND `post_status` = 'publish' LIMIT    20" );

  foreach ($results) {
   
  echo "<div class="card">
            <div class="img">
             <img src="{post_content}" alt="">
            </div>
            <div class="info">
               <h5>{post_title}</h5>
            </div>
          </div>";
  }
   //echo "<pre>";print_r($results);echo"</pre>";
                    
?> 

I am quite new to wordpress and PHP in general.

I am trying to display some posts information from my database on my live site. I have done the query correctly because I can view the items on the live site. But I need to take three items to display. The post title, the post content which houses the images, and the post id which links to the posts. I seem to have written it correctly but it does not do anything.

This is the code

<?php 
    global $wpdb;               
    $results = $wpdb->get_results( "SELECT * FROM $wpdb->posts WHERE `post_type`='post' AND `post_status` = 'publish' LIMIT    20" );

  foreach ($results) {
   
  echo "<div class="card">
            <div class="img">
             <img src="{post_content}" alt="">
            </div>
            <div class="info">
               <h5>{post_title}</h5>
            </div>
          </div>";
  }
   //echo "<pre>";print_r($results);echo"</pre>";
                    
?> 

I am quite new to wordpress and PHP in general.

Share Improve this question asked Sep 20, 2020 at 9:17 Chinomso JohnsonChinomso Johnson 32 bronze badges 1
  • Question should be moved to stackoverflow, this is a code related issue. – amarinediary Commented Sep 20, 2020 at 11:54
Add a comment  | 

1 Answer 1

Reset to default 0

Try this

global $wpdb;               
    $results = $wpdb->get_results( "SELECT * FROM $wpdb->posts WHERE `post_type`='post' AND `post_status` = 'publish' LIMIT    20" );

  foreach ($results as $result) {
 
  echo '<div class="card">
            <div class="img">
             <img src="'.get_the_post_thumbnail_url( $result -> ID, 'thumbnail' ).'" alt="">
            </div>
            <div class="info">
               <h5>'.$result->post_title.'</h5>
            </div>
          </div>';
  }
发布评论

评论列表(0)

  1. 暂无评论