• Как исправить "Задайте значение для одного из следующих элементов данных: "offers", "review" или "aggregateRating"."?

    @dfnsk
    Если не хочется париться с плагином (мне не хочется), можно две строчки в коде поправить. А именно в /wp-content/plugins/woocommerce/includes/class-wc-structured-data.php находите строку
    if ( apply_filters( 'woocommerce_structured_data_product_limit', is_product_taxonomy() || is_shop() ) )


    Нам надо выше неё переставить определение недостающих полей. Часть из них уже определена ниже, надо просто перести следующие строки выше этого IF'а:
    $markup['image'] = wp_get_attachment_url( $product->get_image_id() );
    $markup['description'] = wpautop( do_shortcode( $product->get_short_description() ? $product->get_short_description() : $product->get_description() ) );


    Ещё два значения, которые Гугл в феврале сделал обязательными (строго рекомендованными) - это бренд и sku. Ну тут от вас зависит, что сюда писать. У меня магазин монобрендовый, а все артикулы у товаров прописаны (кроме вариативных), поэтому у меня просто получилось:
    $markup['brand'] = "Bialetti";
    $markup['sku'] = $product->get_sku();
    if (empty($markup['sku'])) { $markup['sku'] = $product->get_slug(); }


    Последний IF нужен для того, чтобы задать SKU для вариативных товаров, им я назначил просто slug (он тоже уникальный), чтобы Гугл отстал и перестал ворнинги рисовать.

    Вуаля, ошибок больше нет. Живой пример: https://mokapot.ru/product-category/bialetti-moka-...
    Ответ написан
    7 комментариев