Schema.org для woocommerce

При добавлении товаров с сайта на woocommerce в Яндекс товары, требуется микроразметка. Ее достаточно несложно реализовать без плагинов — кодом:

add_action('wp_head', function() {
    if (!is_product()) return;
    
    global $product;
    
    $schema = [
        '@context' => 'https://schema.org',
        '@type' => 'Product',
        'name' => $product->get_name(),
        'image' => wp_get_attachment_url($product->get_image_id()),
        'description' => wp_strip_all_tags($product->get_short_description()),
        'sku' => $product->get_sku(),
        'brand' => [
            '@type' => 'Brand',
            'name' => $product->get_attribute('pa_brand') ?: 'N/A'
        ],
        'offers' => [
            '@type' => 'Offer',
            'url' => get_permalink(),
            'priceCurrency' => get_woocommerce_currency(),
            'price' => $product->get_price(),
            'availability' => $product->is_in_stock() 
                ? 'https://schema.org/InStock' 
                : 'https://schema.org/OutOfStock'
        ]
    ];
    
    // AggregateRating, если есть отзывы
    if ($product->get_review_count() > 0) {
        $schema['aggregateRating'] = [
            '@type' => 'AggregateRating',
            'ratingValue' => $product->get_average_rating(),
            'reviewCount' => $product->get_review_count()
        ];
    }
    
    echo '<script type="application/ld+json">' . 
         wp_json_encode($schema, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE) . 
         '</script>';
});

 

Прокрутить вверх
Расчитать стоимость создания сайта онлайн

Ответьте на несколько вопросов и получите скидку 20%