Создание единого оператора $OG_IMAGE$
Испытывая регулярные проблемы при постинге фото в соц-сети со временем приходит понимание, что нужно не просто себе добавить материал, при крепить несколько фото и готово, к каждому посту еще нужно готовить отдельное фото соответствующих размеров специально для постинга.
Думаю многие из вас замечали, вроде добавил в новость либо в блоге вполне нормальное фото, но постится демо. Никто не задумывался почему так происходит, а происходит все из-за того, что фейсбук принимает фото размерами:
Фото максимальных размеров - 600 x 315 пикселей.
Фото минимальных размеров - 200 x 200 пикселей.
Если ваше фото размерами больше чем 600 x 315 либо меньше 200 x 200, при постинге ваш пост будет без фото и если попробовать опубликовать пост то в отладчике публикаций появится ошибка. Часто фейсбук публикует сторонние фото не те что вы указываете так как находит на странице более подходящее по размерам так как ваше фото наверняка не угодило по политике фейсбука.
Постоянные проблемы при постинге наталкивают на мысль, а почему бы не создать новый оператор $OG_IMAGE$ который бы по похожему принципу как и $SOCIAL_IMAGE_SRC$ который извлекает фото как прикрепленное с помощью доп поля фото так и просто добавленные фото в материале. Оператор должен выполнять проверку по добавленным в материале фото, если находит фото размерами больше чем 600 x 315, чтобы автоматически уменьшал фото под этот размер, если нет фото подходящих размеров чтобы выводил фото размерами 200 x 200 если подобное присутствует.
Нужно чтобы этот новый оператор $OG_IMAGE$ автоматически определял большое фото в материале если оно превышает размеры 600 x 315, чтобы как результат выводил конструкцию:
Надеюсь моя идея поможет многим пользователям в Юкоз чтобы один раз и наконец избавиться от проблем с постингом изображений, как пример предоставляю ссылку на документацию от фейсбук - https://developers.facebook.com/docs/sharing/best-practices#images
Да, я знаю, сегодня даже есть чудесный сервис https://usocial.pro/meta
но там точно так же нужно указывать ссылку на картинку.
А ведь куда проще было бы просто использовать уже готовый функционал - прикреплять к странице сайта картинку и затем использовать её в коде шаблона страниц.
Беда в том, что на данный момент в коде шаблона страниц (это который "Страницы сайта") переменная, например, $Image1$ вообще недоступна.
Т.е., вставив в шаблон для страниц сайта следующий код:
<html prefix="og: http://ogp.me/ns#">
<head>
<meta property="og:title" content="$SITE_NAME$ - $MODULE_NAME$" />
<meta property="og:type" content="website" />
<meta property="og:url" content="$HOME_PAGE_LINK$$REQUEST_URI$" />
<meta property="og:image" content="$IMAGE1$" />
</head>
переменная $Image1$ не раскроется, потому что нам доступна только переменная
$CONTENT$
а $Image1$ раскрывается уже на стадии отображения контента.
:(