You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

求助:如何自动配置Woocommerce商品的Facebook分享主图?

解决WooCommerce商品分享自动设置Facebook图片的问题

嘿,我明白你手动设置Yoast SEO的商品分享图太麻烦了,下面给你两个适合非开发者的自动化方案,一步步操作就能搞定:

方案一:开启Yoast SEO自带的自动抓取功能

其实Yoast SEO本身就支持自动把商品主图设为Facebook分享图,可能你没开启对应的设置:

  • 后台进入「Yoast SEO」→「设置」→「社交」标签页
  • 切换到「Facebook」板块,确保「添加Open Graph元数据」选项是勾选状态
  • 保存设置后,Yoast应该会自动把每个商品的主图作为Facebook分享的默认图片

如果这个方法没生效,可能是部分商品没设置主图,或者Yoast的优先级设置有问题,试试下面的代码方案。

方案二:用代码片段强制绑定商品主图(无需修改主题文件)

非开发者可以用「Code Snippets」插件来添加代码,不用直接碰主题的functions.php,更安全:

  1. 后台搜索安装「Code Snippets」插件并激活
  2. 进入「Snippets」→「Add New」,新建一个代码片段
  3. 粘贴下面的代码:
add_filter( 'wpseo_opengraph_image', 'custom_woocommerce_product_og_image' );
function custom_woocommerce_product_og_image( $image ) {
    // 只在商品详情页生效
    if ( is_product() ) {
        global $product;
        // 获取商品主图的ID
        $product_image_id = $product->get_image_id();
        if ( $product_image_id ) {
            // 用商品主图替换默认分享图
            $image = wp_get_attachment_image_url( $product_image_id, 'full' );
        }
    }
    return $image;
}
  1. 给片段起个名字(比如「自动设置商品Facebook分享图」),点击「Activate」激活即可

可选:添加无主图时的 fallback 图片

如果有些商品没设置主图,你可以指定一张默认图片兜底,把上面的代码替换成这个版本,记得把https://your-site.com/wp-content/uploads/your-fallback-image.jpg换成你自己的图片URL:

add_filter( 'wpseo_opengraph_image', 'custom_woocommerce_product_og_image_with_fallback' );
function custom_woocommerce_product_og_image_with_fallback( $image ) {
    if ( is_product() ) {
        global $product;
        $product_image_id = $product->get_image_id();
        if ( $product_image_id ) {
            $image = wp_get_attachment_image_url( $product_image_id, 'full' );
        } else {
            // 替换成你的兜底图片URL
            $image = 'https://your-site.com/wp-content/uploads/your-fallback-image.jpg';
        }
    }
    return $image;
}

测试效果

设置完成后,用Facebook的官方分享调试工具刷新商品页面的缓存,就能看到分享时显示的是商品主图了。

内容的提问来源于stack exchange,提问作者DDark Burning Chris

火山引擎 最新活动