繁体   English   中英

从Wordpress外部检索Wordpress附件

[英]Retrieve a Wordpress attachment from outside of Wordpress

我希望能够捕获已附加到Wordpress帖子上的照片,并独立于我的Wordpress安装显示它。

我的用法是,我在我的Wordpress安装范围之外的页面上显示摘录的最新文章(例如mysite.com/blog/是Wordpress所在的位置,但在mysite.com/index.php我显示了现在摘录),现在我希望能够将图像附加到帖子上(不一定是帖子作者,而是任何随意附加的图像...甚至可能未显示在帖子中...仅附加到该图像上) )。

我用自己的类来获取最新文章的摘录,该类连接到wordpress数据库并对该数据库运行自己的SQL查询。 这很简单。 问题是,我看不到附件图像与帖子如何关联!

在研究Wordpress代码本身时,我看到以下功能:

function the_attachment_link( $id = 0, $fullsize = false, $deprecated = false, $permalink = false )  {
        if ( !empty( $deprecated ) )
            _deprecated_argument( __FUNCTION__, '2.5' );

        if ( $fullsize )
            echo wp_get_attachment_link($id, 'full', $permalink);
        else
            echo wp_get_attachment_link($id, 'thumbnail', $permalink);
     }

看起来它可能会抓住一个附加的图像,但是我仍然看不到(也不知道如何从Wordpress外部使用此功能)。

您将如何获取附在Wordpress帖子上的图像,以在Wordpress安装之外显示?

额外...这是我首先获取帖子文本的方式:

SELECT * FROM wp_posts p
            INNER JOIN wp_term_relationships rs ON p.ID = rs.object_id
            INNER JOIN wp_term_taxonomy tt ON tt.term_id = rs.term_taxonomy_id
            WHERE rs.term_taxonomy_id IN ($termId) AND p.post_type = 'post'
            AND p.post_status='publish'

但是,由于我在数据库中看不到任何有关附件的照片,因此我不知道如何去抓取它。 想法?

更多额外信息...这是我如何从Wordpress“循环”中抓取此类照片的方法:

$args = array( 'post_type' => 'attachment', 'numberposts' => -1, 'post_status' => null, 'post_parent' => $post->ID ); 
$attachments = get_posts($args);
if ($attachments) {
    foreach ( $attachments as $attachment ) {
        echo apply_filters( 'the_title' , $attachment->post_title );
        the_attachment_link( $attachment->ID , false );
    }
}

但是,我当然不能只从Wordpress外部完全调用它。

附件列在wp_posts数据库中。 它们的关联方式如下: post_type = 'attachment', post_parent = post_id 但是我想你知道。

编辑

另外,您可以通过从wordpress的主目录包含wp-blog-header.php来访问wordpress类和函数。 因此,现在您可以使用本机的wordpress功能,请查看“ 图像附件收件人”

您是否尝试过使用“ 自定义字段” 您可以创建一个新的自定义字段,名称为“ attached_image”或任何您想要的字段,并带有要附加的图像的URL。 然后,您只需从数据库中检索该信息。 我认为它们保存在表“ yourprefix_postmeta”中,该表具有字段“ post_id”(您的帖子)和“ meta_key”(在我的示例中为“ attached_image”)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM