Dima83
Новичок
У меня на сайте будет несколько вопросов, и при нажатии нужно чтобы вопрос отпечатывался на “холсте” и отправлялся на страницу в социальных сетях. Картинку я уже подготовил где будет размещаться вопрос. Код создания картинки с вопросом выглядит вот так:
Теперь полученные данные картинки с вопросом base64 мне нужно как-то добавить в атрибут content meta-тега где есть свойства og:image, чтобы при нажатии кнопки (пользователем) картинка вместе с вопросом отправлялась в соц.сети включая и описание.
Почему-то у меня не получается это сделать картинка не отправляется только текст. Я попытался прямую ссылку на картинку внедрить и протестировать все нормально отправляется вместе с изображением. А base64 никак.
Может я что-то делаю не правильно, подскажите как сделать так чтобы сгенерированная картинка отправлялась в социальные сети?
Код полностью.
PHP:
<?php
header("Content-Type: text/html; charset=utf-8");
$image = imagecreatefromjpeg('images/img.jpg');
$color_text = imagecolorallocate($image,255,255,255);
$text='Вопрос № 1';
imagettftext($image, 12, 0, 50, 25, $color_text, 'fonts/Forum-Regular.ttf', $text);
ob_start();
imagepng ($image);
$output = ob_get_contents();
ob_end_clean();
$img = "data: image/png;base64,".base64_encode($output)."";
//Чтобы проверить как будет отображаться картинка
//echo '<img id="photo" src="'.$img.'" />';
?>
Почему-то у меня не получается это сделать картинка не отправляется только текст. Я попытался прямую ссылку на картинку внедрить и протестировать все нормально отправляется вместе с изображением. А base64 никак.
Может я что-то делаю не правильно, подскажите как сделать так чтобы сгенерированная картинка отправлялась в социальные сети?
Код полностью.
HTML:
<?php
header("Content-Type: text/html; charset=utf-8");
$image = imagecreatefromjpeg('images/img.jpg');
$color_text = imagecolorallocate($image,255,255,255);
$text='Вопрос № 1';
imagettftext($image, 12, 0, 50, 25, $color_text, 'fonts/Forum-Regular.ttf', $text);
ob_start();
imagepng ($image);
$output = ob_get_contents();
ob_end_clean();
$img = "data: image/png;base64,".base64_encode($output)."";
//echo '<img id="photo" src="'.$img.'" />';
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Пример шеринга</title>
<meta property="og:locale" content="ru_RU" />
<meta property="og:type" content="article" />
<meta property="og:title" content="Назание статьи" />
<meta property="og:description" content="Описание статьи" />
<meta property="og:url" content="https://mysite.ru/rect7.php" />
<meta property="og:site_name" content="MYSITE.RU" /><meta property="article:published_time" content="2022-05-18T12:53:47+00:00" />
<!-- https://i.pinimg.com/originals/9e/c9/00/9ec9008c6c71983deadcca3c09b7f90f.jpg -->
<meta property="og:image" content="<?php echo $img; ?>" />
<meta property="og:image:width" content="800" /><meta property="og:image:height" content="492" />
<meta property="og:image:type" content="image/jpeg" />
<meta name="author" content="Автор" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:label1" content="Написано автором" />
<meta name="twitter:data1" content="Автор" />
<meta name="twitter:label2" content="Примерное время для чтения" />
<meta name="twitter:data2" content="3 минуты" />
</head>
<body>
<a href="https://vk.com/share.php?url=https://mysite.ru/rect7.php" data-modal-vkontakte onclick="javascript:window.open(this.href,'', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=600,width=600');return false;">
ВК
</a>
<a href="https://connect.ok.ru/dk?st.cmd=WidgetSharePreview&service=odnoklassniki&st.shareUrl=https://mysite.ru/rect7.php" data-modal-ok onclick="javascript:window.open(this.href,'', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=600,width=600');return false;">
OK
</a>
</body>
</html>