Создание единого оператора $OG_IMAGE$

Avatar
  • обновлен
Испытывая регулярные проблемы при постинге фото в соц-сети со временем приходит понимание, что нужно не просто себе добавить материал, при крепить несколько фото и готово, к каждому посту еще нужно готовить отдельное фото соответствующих размеров специально для постинга. Думаю многие из вас замечали, вроде добавил в новость либо в блоге вполне нормальное фото, но постится демо. Никто не задумывался почему так происходит, а происходит все из-за того, что фейсбук принимает фото размерами: Фото максимальных размеров - 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
Avatar
Я добавлю, что вообще хорошо бы иметь такую переменную хотя бы просто потому, что не придётся !!для каждой страницы сайта!! готовить специальное фото и вставлять на него руками ссылку, а можно будет просто вставить переменную в шаблон страниц и для каждой страницы сайта фотка будет подбираться автоматом из тех, что уже к ним прикреплены. При условии, что к странице есть несколько прикрепленных фото, предлагается сделать соотв. галочку: "фото для соц. сетей", например...

Да, я знаю, сегодня даже есть чудесный сервис 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$ раскрывается уже на стадии отображения контента.

:(
Avatar
Николай Черников
Все это решится если добавить больше вариантов для размеров фото.
Было бы вообще отлично, если бы была переменная типа $IMAGE(128,128)$ (где 128 размер фото) в которой можно было задать любой размер от исходного фото, как в wordpress. Но это большая нагрузка на сервер, а хранить их не рационально, поэтому было бы неплохо добавить Доп. размеры фото(хотя бы 5-6).