Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » Как в open graph вывести картинку DLE 11.1?

Как в open graph вывести картинку DLE 11.1?


     16.07.2016    Все вопросы » Общие вопросы по PHP    3909

вопрос
В выводится 1 картинка вставленная в полном описании. Как сделать чтоб с начало выводилась с дополнительного поля, а если не заполнено то с описания

Ответил: irrwisch


Вы про существование гугла вообще слышали?

открываете /engine/modules/show.full.php, находите там
if ( count($images) ) $social_tags['image'] = $images[0];
заменяете на

$xfieldsdata = xfieldsdataload( $row['xfields'] );
if ($xfieldsdata['socimg'] != NULL) {
    $social_tags['image'] = $xfieldsdata['socimg'];
} elseif ( count($images) ) {
    $social_tags['image'] = $images[0];
} else {
    $social_tags['image'] = 'http://domain.com/uploads/logo.png';
}
В данном коде заменяете socimg на название нужного вам поля и
http://domain.com/uploads/logo.png
заменяете на свой путь к картинке, которая будет браться, если поле пустое

Ах да, тип поля одна строка, в данное поле вставляется только ссылка на изображение, если у вас тип поля "загружаемое изображение", то работать не будет

11 комментариев

Jossey
Юзер

Jossey - 16 июля 2016 16:49 -

в meta og:image

Jossey
Юзер

Jossey - 16 июля 2016 17:58 -

***Комментарий удален***

baseroad
Юзер

baseroad - 18 июля 2016 16:46 -

Jossey,
А как сделать, чтобы брало картинку из доп. поля? У меня постеры заливаются через доп. поле, а Open Graph берет первую попавшуюся картинку, а так не очень и хорошо... В соц. сети выкладываешь, а там фотки подгружаются, которые в самом посте стоят.(

irrwisch
Юзер

irrwisch - 18 июля 2016 17:13 -

***Комментарий удален***

baseroad
Юзер

baseroad - 18 июля 2016 19:41 -

irrwisch,
А у меня как раз и стоит "Загружаемое изображение"((((

irrwisch
Юзер

irrwisch - 18 июля 2016 20:34 -

Ну тогда вам в стол заказов, так как данный тип поля вставляет относительные ссылки (это первый "косяк"), да ещё надо добавлять регулярку, которая будет оставлять только ссылку, удаляя html код от тега img, который добавляется у данного типа поля автоматически.

UsurpatorVaticana
Юзер

UsurpatorVaticana - 7 января 2017 02:01 -

Я разобрался, сделаю вам за 2$.
skype: suwka.cyc

vitnet
PHP-developer

vitnet - 26 октября 2017 19:06 -

Откройте файл engine/modules/show.full.php

найдите
			$xfieldsdata = xfieldsdataload( $row['xfields'] );

далее
					if( $thumb_url ) {
						$xfieldsdata[$value[0]] = "<a href=\"$img_url\" class=\"highslide\" target=\"_blank\"><img class=\"xfieldimage {$value[0]}\" src=\"$thumb_url\" alt=\"\" /></a>";
					} else $xfieldsdata[$value[0]] = "<img class=\"xfieldimage {$value[0]}\" src=\"{$img_url}\" alt=\"\" />";

добавьте ниже
					if( $img_url ) {
						$social_tags['image'] = $img_url;
					}

kolyma
Юзер

kolyma - 19 декабря 2016 00:56 -

Цитата: baseroad
А у меня как раз и стоит "Загружаемое изображение"((((

Вы решили проблему?

UsurpatorVaticana
Юзер

UsurpatorVaticana - 7 января 2017 02:03 -

baseroad,
kolyma,
Цена вопроса 2$, skype: suwka.cyc

Heavy1
Юзер

Heavy1 - 26 октября 2017 13:34 -

UsurpatorVaticana, баблоруб

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх