Перейти к содержанию
L0ky

Путь к произвольному изображению

Рекомендуемые сообщения

Для тегов OG использую модификатор SEO Facebook Open Graph Tags (добавил к теме) все отлично работает, но есть один нюанс, на ряде страниц (главная, категория) модификатор в og:image подставляет логотип, что в соц.сетях выглядит как г.....но, как вместо логотипа подставить произвольно взятое изображение из библиотеки? >_< 

 

В контроллере одно

                $data['logo_meta'] = str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 600, 315));

 

В темплейтах главное другое:

                <meta property="og:image" content="<?php echo $logo_meta; ?>" >
                <meta property="og:image:width" content="600" >
                <meta property="og:image:height" content="315" >

 

В категории вообще третье :

                } else {
                    $this->document->addOGMeta( 'property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 600, 315)) );
                    $this->document->addOGMeta('property="og:image:width"', '600');
                    $this->document->addOGMeta('property="og:image:height"', '315');

 

В общем моя логика пасует :(

 

 

 

facebook-opengraph-tags-simple-blog.ocmod.xml

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если добавляем просто картинку так:

Spoiler

line 62
$data['logo_meta'] = str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 300, 300));
replace with
$data['logo_meta'] = str_replace(' ', '%20', $this->model_tool_image->resize('catalog/fb-img.jpg'), 300, 300));

line 109
$this->document->addOGMeta( 'property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 300, 300)) );
replace with
$this->document->addOGMeta( 'property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize('catalog/fb-img.jpg'), 300, 300)) );

line 169
$this->document->addOGMeta( 'property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 300, 300)) );
replace with
$this->document->addOGMeta( 'property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize('catalog/fb-img.jpg'), 300, 300)) );

line 197
$this->document->addOGMeta('property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 300, 300)) );
replace with
$this->document->addOGMeta('property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize('catalog/fb-img.jpg', 300, 300)) );

line 237
$this->document->addOGMeta('property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 300, 300)) );
replace with
$this->document->addOGMeta('property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize('catalog/fb-img.jpg', 300, 300)) );

картинка будеть 300х300px и ее путь catalog/fb-img.jpg (в папке catalog имя - fb-img.jpg)

Если надо добавить картинка 600х315px прийдется переделат еще 300, 300 на 600, 315  и 

Spoiler

$this->document->addOGMeta('property="og:image:width"', '300');
$this->document->addOGMeta('property="og:image:height"', '300');

для каждое изменение

Самий правильний вариант ето добавит вибор картинки в настройках, но к сожалению я очень занята и некогда с етим заниматся.

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, Agatha65 сказал:

Если добавляем просто картинку так:

  Показать контент

line 62
$data['logo_meta'] = str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 300, 300));
replace with
$data['logo_meta'] = str_replace(' ', '%20', $this->model_tool_image->resize('catalog/fb-img.jpg'), 300, 300));

line 109
$this->document->addOGMeta( 'property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 300, 300)) );
replace with
$this->document->addOGMeta( 'property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize('catalog/fb-img.jpg'), 300, 300)) );

line 169
$this->document->addOGMeta( 'property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 300, 300)) );
replace with
$this->document->addOGMeta( 'property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize('catalog/fb-img.jpg'), 300, 300)) );

line 197
$this->document->addOGMeta('property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 300, 300)) );
replace with
$this->document->addOGMeta('property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize('catalog/fb-img.jpg', 300, 300)) );

line 237
$this->document->addOGMeta('property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize($this->config->get('config_logo'), 300, 300)) );
replace with
$this->document->addOGMeta('property="og:image"', str_replace(' ', '%20', $this->model_tool_image->resize('catalog/fb-img.jpg', 300, 300)) );

картинка будеть 300х300px и ее путь catalog/fb-img.jpg (в папке catalog имя - fb-img.jpg)

Если надо добавить картинка 600х315px прийдется переделат еще 300, 300 на 600, 315  и 

  Показать контент

$this->document->addOGMeta('property="og:image:width"', '300');
$this->document->addOGMeta('property="og:image:height"', '300');

для каждое изменение

Самий правильний вариант ето добавит вибор картинки в настройках, но к сожалению я очень занята и некогда с етим заниматся.

Т.е. если я не буду выпендриваться и просто загружу картинку 600х315 мне хватит и этого варианта?

Изменено пользователем L0ky

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

L0ky, надо добавит размер везде.

Вот для картинка 600х315 имя картинки fb-img.jpg

facebook-opengraph-tags-simple-blog-custom-image.ocmod.xml

Для Фейсбука, как и в жизни размер имеет значение :)

Если картинка менше 600х315, она отображается слева, а заглавие, описание и ссылка спарава.

Когда размер картинки больше 600px картинка отображается сверху, а заглавие, описание и ссылка внизу.

Spoiler

fb-image-size-example.png.3798bdfa4984c615148621fea2b4be7d.png

 

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, Agatha65 сказал:

L0ky, надо добавит размер везде.

Вот для картинка 600х315 имя картинки fb-img.jpg

facebook-opengraph-tags-simple-blog-custom-image.ocmod.xml

Для Фейсбука, как и в жизни размер имеет значение :)

Если картинка менше 600х315, она отображается слева, а заглавие, описание и ссылка спарава.

Когда размер картинки больше 600px картинка отображается сверху, а заглавие, описание и ссылка внизу.

  Скрыть контент

fb-image-size-example.png.3798bdfa4984c615148621fea2b4be7d.png

 

 

При том модификаторе что вы дали, сайт отдает 500 ошибку и в логах падает ошибка - 

[Thu Mar 16 10:12:14 2017] [error] [client 95.67.96.18] PHP Fatal error:  Only variables can be passed by reference in 
/home/uh413434/domains/tropickava.com.ua/public_html/system/storage/modification/catalog/controller
/common/header.php on line 269

которая ссылается на эту строчку (в system/storage/modification/catalog/controller/common/header.php )

                $data['logo_meta'] = str_replace(' ', '%20', $this->model_tool_image->resize('catalog/fb-img.jpg'), 600, 315));

 

 

Изменено пользователем L0ky

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо но не работает решение :(((

 

Вот здесь - https://developers.facebook.com/tools/debug/og/object/

 

Объект с URL-адресом "https://tropickava.com.ua/coffee-premium" типа "website" недопустим, так как не было предоставлено требуемое свойство "og:image:url" типа "url".
Warning
 
Errors That Must Be Fixed
В объекте отсутствует требуемое значение Объект с URL-адресом "https://tropickava.com.ua/coffee-premium" типа "website" недопустим, так как не было предоставлено требуемое свойство "og:image:url" типа "url".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.