wordpress批量给没有图片的文章自动添加图片

作者:大公子 时间:25-01-13 阅读数:43人阅读

WordPress采集时没有一张张添加图片,由于采集的文章太多,手动添加图片不现实。在网上找了一段代码,可以给没有图片的文章自动添加图片,有图片的文章则不会添加。

网上找到的代码出现一些问题,添加代码以后图片可以添加,但是原来的文章段落(p标签)没有了,自动给文章添加标签和内链的功能也失效了。检测以后把正确代码分享给大家。

将以下代码复制到当前使用的主题文件的functions.php文件中:(路径一般在 wp-content文件夹 和模板在一起)

if (!is_page()) {
        global $post;
        $temp_url = "";
        if (!has_post_thumbnail()) {
            $id      = $post->ID;
            preg_match_all('/<img.*?(?: |\\t|\\r|\\n)?src=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>/sim', $content, $strResult, PREG_PATTERN_ORDER);
            $n = count($strResult[1]);
            if ($n <= 0) {
                $temp_no                 = rand(1, 51);
                $temp_url                = "<center><p><img src='" . get_bloginfo('url') . "/images/" . $temp_no . ".jpg' alt='" . $post->post_title . "'></p></center>";
                $content                 = $temp_url . $content;
                $my_post                 = array();
                $my_post['ID']           = $id;
                $my_post['post_content'] = $content;
                wp_update_post($my_post);
            }
        }
    }
    return $content;
}


这样,就能智能的实现如果文章没有图片就随机调用站点根目录下image文件夹中一张图片,函数中我们规定了选取51张随机图片中的一张,我们这些图片命名为1.jpg、2.jpg、.....51.jpg,所以,我们要准备好这些图片并且上传到网站根目录的images文件夹中,如果没有这个文件夹则新建一个即可。这里即使我们刷新文章页这个调用的随机图片也不会改变,实现永久固定为那张图片。

wordpress批量给没有图片的文章自动添加图片