Как вывести id товара на странице товара woocommerce?
Стал настраивать выгрузку товаров woocommerce в FB через пиксель Facebook. Для отображения тегов был установлен дополнительно плагин OpenGraph.
При проверки тегов микро данных для пикселя, выдает ошибку что не хватает ID товара. "A required field is missing: id
Products without "id" information can't be uploaded. Please check that this field is included for each product in a separate, labeled column."
Вставил код:
add_action( 'woocommerce_before_single_product_summary', 'cusom_woo_info_1', 10 );
function cusom_woo_info_1() {
global $post;
echo 'Product ID: ' . $post->ID;
}
в functions.phр для вывода id.
И все равно при проверки этот пресловутый ID товара не находит.
Шаблон карточки товара сделан на Elementor pro.
Что можно сделать чтобы пиксель FB находил ID товара. Может есть код другой, или расширение?
Во первых, как выше написал Антон, желательно получать ID не post, а product.
Но, вопрос в том, где и как его получить.
То, что вы использовали хук woocommerce_before_single_product_summary - не факт, что это поможет, так как вы просто выводите ID в интерфейс. При этом, вы используете elementor, которому может быть все равно на этот хук.
ID товара нужно выводить в разметку OpenGraph. Откройте исходный код страницы в браузере, посмотрите, что туда выводится. Скорее всего ничего. Я не знаю, как работает плагин OpenGraph, нужно понять, может ли он "цеплять" какие-либо данные из магазина. Возможно, у него есть настройки, которые позволяют "связать" разметку с товарами магазина.
Антон Литвиненко, добрый день!
В общем попробовал по вашему совету вставить код "global $product;
$id = $product->get_id();" но FB пиксель все равно не находит микроданные id товара. Все микроданные такие как: title, description, price, link, image_link, availability, sale_price, locale - находит, id товара нет (((
Михаил Нестеров, Михаил, добрый день. Посмотрел код страницы вы были правы ничего туда не выводиться. Самое странное что OpenGraph цепляет основные микроданные как я писал выше, такие как: title, description, price, link, image_link, availability, sale_price, locale инфу товара, но id не цепляет. Тариф по настроению. Перелопатил уже столько материала не пойму в чем дело. По сути микроданные должны быть отражены как минимум в functions.phр как я понял, но там даже намека нет на это. И как вытащить id товара вообще понятия не имею(