在WordPress中以编程方式添加带缩略图的帖子

时间:2010-04-20 09:52:54

标签: wordpress thumbnails

我知道我可以使用WordPress中的wp_insert_post()功能以编程方式添加帖子,但我想添加带缩略图的帖子,并且就此而言,还要将帖子照片调整大小/裁剪为正确的WordPress大小。

所有这些都是以编程方式实现的,还是我需要手动完成一些工作(即调整大小/裁剪)?

3 个答案:

答案 0 :(得分:14)

查看wp_insert_attachment(),在wp-includes / post.php(Codex article)中找到。

所以你先使用wp_insert_post()创建帖子,然后附上文件,就像这样(修改了Codex):

<?php 
    $post_id = wp_insert_post( $my_post_data ); 

    $attach_id = wp_insert_attachment( $attachment, $filename, $post_id );
    $attach_data = wp_generate_attachment_metadata( $attach_id, $filename );
    wp_update_attachment_metadata( $attach_id,  $attach_data );
?>

关于图像大小调整/裁剪,如果转到媒体设置(yoursite.com/wp-admin/options-media.php),则可以为图像定义自定义尺寸。可能没有您想要的那么强大,但如果您将输出与TimThumb Script之类的东西进行整合,您可能会接近您正在寻找的内容。

要查看该函数具有的所有变量,请阅读post.php中的注释信息。

答案 1 :(得分:5)

使用wordpress的'wp_insert_post和wp_insert_attachment函数插入帖子和附件后,只要主题支持发布缩略图,就可以使用带附件ID的_thumbnail_id将缩略图添加到帖子中。

// $post_id = wp_insert_post(...)
// $attach_id = wp_insert_attachment(...)

add_post_meta($post_id, '_thumbnail_id', $attach_id, true);

通过这种方式,您可以使用wordpress默认函数进行缩略图调整等。

答案 2 :(得分:1)

自问题提出以来,已有2篇文章被撰写。两者都为您的问题提供略有不同的解决方我希望这些可以帮助别人:

以编程方式将数千个精选图片帖子缩略图导入WordPress http://www.zdnet.com/blog/diy-it/programmatically-importing-thousands-of-featured-image-post-thumbnails-into-wordpress/118

如何:在WordPress中以编程方式通过URL上传媒体 http://theme.fm/2011/10/how-to-upload-media-via-url-programmatically-in-wordpress-2657/