如何使用 $wpdb 类在 wordpress 中显示特色图像

Posted

技术标签:

【中文标题】如何使用 $wpdb 类在 wordpress 中显示特色图像【英文标题】:how to show a featured image in wordpress using the $wpdb class 【发布时间】:2016-03-01 02:30:12 【问题描述】:

我正在尝试从外部网站获取帖子以显示在我自己的网站上,而我只是通过 wordpress $wpdb 类来实现这一点。

我已设法在我的网站上显示来自外部网站的帖子标题,但是,我无法显示与其自己的帖子相关联的特色图片。

任何帮助将不胜感激。

<?php

$mydb = new wpdb('root','','test','localhost');
$rows = $mydb->get_results(" select post_title, guid FROM wp_posts WHERE post_parent = '21' ");
echo '<ul>';
foreach ($rows as $obj) : ?>

    <li><a href="http://localhost/database2/2015/11/26/<?php echo $obj->post_title; ?>"><?php echo $obj->post_title; ?></a></li>
    <?php echo $obj->meta_value; ?>
<?php
endforeach;
echo '</ul>'; 
?>

【问题讨论】:

您如何获得这些帖子?直接连接数据库?使用 API? 不,我正在使用 $wpdb 类中内置的 wordpress 连接数据库 有很多可用的示例。你找不到一个。 echo get_the_post_thumbnail( $page-&gt;ID, 'thumbnail' );。请参考这里。不要让你的代码复杂。 ***.com/questions/11261883/… 【参考方案1】:

我设法使用以下 SQL 查询从外部数据库中获取了帖子的相关特色图片:

    "SELECT
    p1.*,
    wm2.meta_value
FROM
wp_posts p1
LEFT JOIN
    wp_postmeta wm1
    ON (
    wm1.post_id = p1.id
    AND wm1.meta_value IS NOT NULL
    AND wm1.meta_key = '_thumbnail_id'
    )
LEFT JOIN
wp_postmeta wm2
ON (
    wm1.meta_value = wm2.post_id
    AND wm2.meta_key = '_wp_attached_file'
    AND wm2.meta_value IS NOT NULL
)
WHERE
    p1.post_status= %s
    AND p1.post_type=%s
ORDER BY
    p1.post_date DESC
 LIMIT 4", 'publish','post'));

【讨论】:

以上是关于如何使用 $wpdb 类在 wordpress 中显示特色图像的主要内容,如果未能解决你的问题,请参考以下文章

wordpress 常用函数-wpdb类

在 wordpress 中使用 $wpdb 运行 SQL 命令

使用 WordPress $wpdb 将数据插入到 WordPress 数据库中的表中

Wordpress - $wpdb->插入 - MySQL NOW()

使用 PHI 信息进行 SQL 调用时,WordPress $wpdb 对象是不是安全?

Wordpress $wpdb 在外部 sql 数据库上准备