【问题标题】:Adding posts with thumbnail programmatically in WordPress在 WordPress 中以编程方式添加带有缩略图的帖子
【发布时间】:2023-03-07 22:42:01
【问题描述】:

我知道我可以使用 WordPress 中的 wp_insert_post() 函数以编程方式添加帖子,但我想添加带有缩略图的帖子,为此,还要将帖子照片调整/裁剪为正确的 WordPress 尺寸。

这一切都可以通过编程方式实现吗,还是我需要手动进行一些工作(即调整大小/裁剪)?

【问题讨论】:

    标签: wordpress thumbnails


    【解决方案1】:

    查看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 );
        set_post_thumbnail( $post_id, $attach_id );
    ?>
    

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

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

    【讨论】:

      【解决方案2】:

      使用 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 默认功能来调整缩略图大小等。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-15
        • 1970-01-01
        • 1970-01-01
        • 2014-04-15
        • 2021-04-24
        相关资源
        最近更新 更多