使用缩略图或介绍图像从wordpress db中选择帖子

时间:2014-07-21 10:53:31

标签: php mysql wordpress

我一直试图将wordpress网站的mysql数据库中的帖子提取到我自己的脚本中几天。

<?php

 $querystr = "
    SELECT DISTINCT $wpdb->posts.* 
    FROM $wpdb->posts, $wpdb->postmeta
    WHERE $wpdb->posts.ID = $wpdb->postmeta.post_id 
    AND $wpdb->postmeta.meta_key = 'tag' 
    AND $wpdb->postmeta.meta_value = 'email' 
    AND $wpdb->posts.post_status = 'publish' 
    AND $wpdb->posts.post_type = 'post'
    AND $wpdb->posts.post_date < NOW()
    ORDER BY $wpdb->posts.post_date DESC
 ";

 $pageposts = $wpdb->get_results($querystr, OBJECT);

 ?>

我可以在原始网站上看到缩略图,但我无法弄清楚在db中获取该图像位置数据的位置。

为了获得当前的图像信息,我的查询有哪些增强功能?

2 个答案:

答案 0 :(得分:2)

您需要深入了解wp_postmeta表。这是您可以找到所有内容的地方。您可以使用以下查询获取缩略图ID:

SELECT * FROM 'wp_postmeta' WHERE post_id=**ID_HERE** AND meta_key='_thumbnail_id'

您将获得一个缩略图ID,您可以通过以下查询获得真实的缩略图:

SELECT * FROM 'wp_postmeta' WHERE post_id=**PREVIOUSLY_OBTAINED_ID**

这实际上会给你两行:

  1. 一个用于图片的网址(meta_key="_wp_attached_file")
  2. 一个用于图像信息,例如尺寸,标题等...... (meta_key="_wp_attachment_metadata")

答案 1 :(得分:1)

试试这段代码:

<?php echo get_the_post_thumbnail($page->ID, 'thumbnail'); ?>

此处有更多详情:http://codex.wordpress.org/Function_Reference/get_the_post_thumbnail