WordPress插件WPCode上传图片自动添加SEO的代码

经过 小朱笔记 | 12 月 27, 2025 | WordPress技巧 | 0条评论

在 WordPress 中,使用 WPCode 插件(或手动在 functions.php 中)添加代码来自动完善图片 SEO 是一个非常高效的方法。这通常通过获取图片文件名并将其自动填充到图片的 替代文本 (Alt Text)标题 (Title)描述 (Description) 中来实现。

你可以将以下代码添加到 WPCode 的 New Snippet 中(类型选择 PHP Snippet):

自动添加图片 SEO 属性代码

add_action('add_attachment', 'tm_set_image_meta_by_post_title');

function tm_set_image_meta_by_post_title($post_ID) {
    // --- 自定义设置 ---
    $default_prefix = "官方站"; // 如果图片不是在文章里上传的,使用的回退前缀
    $separator = " - ";        // 分隔符
    // ------------------

    if (wp_attachment_is_image($post_ID)) {
        $final_prefix = $default_prefix;

        // 获取图片所属的文章(父级)
        $post_parent_id = get_post($post_ID)->post_parent;

        // 如果图片是在文章/页面内上传的
        if ($post_parent_id) {
            $parent_post = get_post($post_parent_id);
            if (!empty($parent_post->post_title)) {
                // 获取文章标题
                $final_prefix = $parent_post->post_title;
            }
        }

        // 1. 获取并美化文件名(去除连字符、转为首字母大写)
        $raw_title = get_post($post_ID)->post_title;
        $clean_title = preg_replace('%\s*[-_\s]+\s*%', ' ', $raw_title);
        $clean_title = ucwords(strtolower($clean_title));

        // 2. 拼接:文章标题 + 分隔符 + 图片文件名
        $final_seo_text = $final_prefix . $separator . $clean_title;

        // 3. 更新图片所有的 SEO 属性
        $my_image_meta = array(
            'ID'           => $post_ID,
            'post_title'   => $final_seo_text, // 标题
            'post_excerpt' => $final_seo_text, // 摘要/说明
            'post_content' => $final_seo_text, // 描述
        );

        // 特别更新 Alt Text (对 Google 图片搜索最重要)
        update_post_meta($post_ID, '_wp_attachment_image_alt', $final_seo_text);

        // 执行数据库更新
        wp_update_post($my_image_meta);
    }
}

在 WPCode 中设置:

  1. 进入 WPCode > + Add Snippet
  2. 选择 Add Your Custom Code (New Snippet)
  3. Code Type 更改为 PHP Snippet
  4. 将上面的代码粘贴进去。
  5. 在下方 Insertion 选项中,确保选择 Auto Insert,位置为 Everywhere
  6. 将右上角的开关从 Inactive 切换为 Active,然后点击 Save Snippet

代码说明:

  1. $my_prefix: 你可以将它修改为你的网站名、品牌名或者特定的关键词(例如:2025新款)。
  2. $separator: 这是前缀和文件名之间的连接符,常用的有空格、短横线 - 或 竖线 |
  3. 最终效果示例:
    • 上传文件名: running-shoes.jpg
    • 设置的前缀: 我的商店
    • 生成的 Alt/标题: 我的商店 - Running Shoes
  4. 如果是写文章上传,图片名以文章名作为前缀,前提要先写好文章名。

0条评论

提交评论

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理