Здравствуйте. Подскажите, как можно решить проблему. Использую решение для автопостинга новостей.
Всё настроил, автопостинг работает. Но, единственное, когда создается новая новость, в самом facebook при прикреплении ссылки не подвязывается изображение. Пример на скрине 1. Проверяю через отладчик перепостов (), там выдает такую информацию (скрин 2). Через несколько секунд еще раз проверяю, там выдает такую информацию (скрин 3). И еще через несколько минут пробую снова - изображение нормально там отображается. То есть, как я понимаю, изображение асинхронно подгружается для фейсбука, а пока это время оно будет недоступно. Пытался в component_epilog.php для детальной новости подобный код сделать, но все равно ничего не помогает.
В результате всю информацию сразу при загрузке страницы нормально добавляет (скрин 4). Но, при этом, публикация на фейсбуке уже есть. И только если через некоторое время обновить публикацию (скрин 5), то она отобразится, как надо. Скажите, возможно ли что-то с этим сделать, чтобы вручную не обновлять публикации? Может каким-то образом кэш битрикса связан с этим?
Всё настроил, автопостинг работает. Но, единственное, когда создается новая новость, в самом facebook при прикреплении ссылки не подвязывается изображение. Пример на скрине 1. Проверяю через отладчик перепостов (), там выдает такую информацию (скрин 2). Через несколько секунд еще раз проверяю, там выдает такую информацию (скрин 3). И еще через несколько минут пробую снова - изображение нормально там отображается. То есть, как я понимаю, изображение асинхронно подгружается для фейсбука, а пока это время оно будет недоступно. Пытался в component_epilog.php для детальной новости подобный код сделать, но все равно ничего не помогает.
| Код |
|---|
$res_og = CIBlockElement::GetByID($arResult['ID']);
if($element_for_og = $res_og->GetNext()) {
$image_og = CFile::GetByID($element_for_og["DETAIL_PICTURE"]);
$image_og = $image_og->Fetch();
$image_og_path = CFile::GetPath($element_for_og["DETAIL_PICTURE"]);
if($image_og_path) $APPLICATION->AddHeadString('<met a property="og:image" content="http://'.$_SERVER["HTTP_HOST"].$image_og_path.'"/>');
$APPLICATION->AddHeadString('<met a property="og:type" content="article" />');
$APPLICATION->AddHeadString('<met a property="og:title" content="'.$arResult["NAME"].'" />');
if($image_og["WIDTH"]) $APPLICATION->AddHeadString('<met a property="og:image:width" content="'.$image_og["WIDTH"].'"/>');
if($image_og["HEIGHT"]) $APPLICATION->AddHeadString('<met a property="og:image:height" content="'.$image_og["HEIGHT"].'"/>');
}
|
В результате всю информацию сразу при загрузке страницы нормально добавляет (скрин 4). Но, при этом, публикация на фейсбуке уже есть. И только если через некоторое время обновить публикацию (скрин 5), то она отобразится, как надо. Скажите, возможно ли что-то с этим сделать, чтобы вручную не обновлять публикации? Может каким-то образом кэш битрикса связан с этим?