Задача
При использовании WordPress с WooCommerce и плагином Yoast SEO многие сталкиваются с ситуацией:
когда кидаешь ссылку на товар (например, в Telegram, ВКонтакте, WhatsApp), то в предпросмотр автоматически подтягивается фото товара.
Не всегда это удобно:
иногда картинка слишком большая,
не подходит по дизайну,
или в принципе нужно, чтобы ссылка подгружалась без изображения.
Причина
Yoast SEO автоматически генерирует метатеги Open Graph, в том числе:
Именно этот тег отвечает за то, чтобы соцсети и мессенджеры брали картинку в превью.
Решение
Чтобы убрать загрузку фото товара при шаринге ссылки, нужно отключить вывод метатега og:image только для страниц товаров WooCommerce.
Сделать это можно с помощью фильтра wpseo_frontend_presenter_classes, который управляет «презентерами» Yoast SEO.
Рабочий код
Вставьте в functions.php вашей дочерней темы или добавьте через плагин Code Snippets:
// Убираем og:image только на страницах товара
add_filter( 'wpseo_frontend_presenter_classes', function( $classes ) {
if ( ! is_singular( 'product' ) ) {
return $classes;
}
$to_remove = 'Yoast\\WP\\SEO\\Presenters\\Open_Graph\\Image_Presenter';
foreach ( $classes as $key => $class ) {
if ( $class === $to_remove ) {
unset( $classes[ $key ] );
}
}
// вернуть заново индексированный массив
return array_values( $classes );
}, 11 );
Как это работает
Фильтр проверяет: если мы находимся на странице товара (
is_singular('product')),из списка презентеров Yoast исключается
Image_Presenter,в итоге метатег
<meta property="og:image"...>больше не выводится.
Проверка
Обновите страницу товара и посмотрите исходный код (
Ctrl+U).Убедитесь, что мета-тег
og:imageотсутствует.Вставьте ссылку на товар в Telegram, ВКонтакте или WhatsApp — картинка больше не подтягивается.
⚡Важно: социальные сети кешируют предпросмотры. Чтобы обновить кэш, можно:
В Facebook — использовать Sharing Debugger.
В Telegram — переслать ссылку через @WebpageBot или отправить её с параметром
?v=1.В ВКонтакте — дождаться обновления (либо тоже добавить
?nocache=1к ссылке).
Итог
Теперь ссылки на товары WooCommerce не будут грузиться с фото товара.
Это решение удобно, если вам нужно, чтобы при отправке ссылки отображался только заголовок и описание, без картинок.