CMS DataLife Engine - Система управления сайтами

odys

Своя картинка в og:image в полной новости для версии 13

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

Ребят, у кого есть познания, доработайте пожалуйста этот плагин, чтобы можно было добавить дополнительное поле "Галерея изображений". Например, чтобы он также выводил в og:image первую полную картинку из галереи изображений.

  • Поддерживаю 1

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


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

@odys, можно немного изменить плагин, чтобы картинки из новости брались не уменьшенные, а оригинальные? Имеется ввиду картинки из текста новости {fullimage-x}, а не из доп. поля.

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

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


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

@odys, почему такой странный адрес картинки прописывается?

<meta property="og:image" content="https://site.ru/uploads/posts/Фильм про Пластичного человека|2018-12/1544533313_film-plastichnyj-chelovek.jpg">

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


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

@odys, почему такой странный адрес картинки прописывается?

 


<meta property="og:image" content="https://site.ru/uploads/posts/Фильм про Пластичного человека|2018-12/1544533313_film-plastichnyj-chelovek.jpg">

 

а что в доп. поле пишешь?

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


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

а что в доп. поле пишешь?

доп поле типа Изображение. Просто загружаю картинку и прописываю ей alt, который в dle 13.1 появился.

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


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

доп поле типа Изображение. Просто загружаю картинку и прописываю ей alt, который в dle 13.1 появился.

тогда вообще не понятно, зачем главной картинке alt отличный от title? Ну да ладно, я ещё не смотрел версию 31.1, пока нет времени поправить

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


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

тогда вообще не понятно, зачем главной картинке alt отличный от title? Ну да ладно, я ещё не смотрел версию 31.1, пока нет времени поправить

А разве хорошо, когда alt с title одинаковый? Я читал, что он должен быть свой.

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


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

А разве хорошо, когда alt с title одинаковый?

нет, не хорошо, когда у тебя 5-10 картинок с одинаковым alt, а вот одна, главная, тут уже другой вопрос.

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


Ссылка на сообщение
Поделиться на другие сайты
В 16.05.2018 в 00:24, odys сказал:

По умолчанию в DLE в полной новости картинка в meta og:image выводится первая картинка загруженная к новости. Плагин «og:image» позволит выбрать источник картинки доп. поле (загружаемое изображение).

Получаю такую строку в og после установки плагина.

 

<meta property="og:image" content="http://dev.xn--80ady2a0c.xn--p1ai/uploads/posts/<!--dle_image_begin:http://dev.xn--80ady2a0c.xn--p1ai/uploads/posts/2018-12/1545424321_lida.jpg|--><img src="/uploads/posts/2018-12/1545424321_lida.jpg" style="max-width:100%;" alt="Тест 2"><!--dle_image_end-->">

 

В настройках Прописано доп поле с типом: Несколько строк

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


Ссылка на сообщение
Поделиться на другие сайты
В 29.12.2018 в 14:11, blagoy_vip сказал:

Получаю такую строку в og после установки плагина.

 

<meta property="og:image" content="http://dev.xn--80ady2a0c.xn--p1ai/uploads/posts/<!--dle_image_begin:http://dev.xn--80ady2a0c.xn--p1ai/uploads/posts/2018-12/1545424321_lida.jpg|--><img src="/uploads/posts/2018-12/1545424321_lida.jpg" style="max-width:100%;" alt="Тест 2"><!--dle_image_end-->">

 

В настройках Прописано доп поле с типом: Несколько строк

Потому что нужно уметь читать описание плагина, и как не странно, там окажется что нет ни слова про доп.поле может быть несколько строк...

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


Ссылка на сообщение
Поделиться на другие сайты
В 30.12.2018 в 15:34, SSID сказал:

Потому что нужно уметь читать описание плагина, и как не странно, там окажется что нет ни слова про доп.поле может быть несколько строк...

Я понимаю, подскажите, как поправить этот баг.

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


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

В версии 13.2 показывает ошибку. Не может найти эту строчку

if ( count($images) ) $social_tags['image'] = $images[0];

 

Вроде как всё работает если вставить после этого

        if ( count($images) ) {
            $social_tags['image'] = str_replace("/thumbs/","/",$images[0]);
            $social_tags['image'] = str_replace("/medium/","/",$social_tags['image']);
        }

 

Так правильно будет?

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


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

Так правильно будет?

я не знаю, не смотрел ещё, пока на работе. Вечером обновлюсь и плагин обновлю.

  • Нравится 1

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


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

я не знаю, не смотрел ещё, пока на работе. Вечером обновлюсь и плагин обновлю.

Спасибо. Буду ждать. Вроде работает, однако если дополнительное поле не загружено, а просто вставлена картинка в текст новости, то в og:image выводит ссылку на миниатюру. Стоит плагин отключить, сразу ссылка на полную картинку, как и описано в нововведениях к версии 13.2

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


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

Спасибо. Буду ждать. Вроде работает, однако если дополнительное поле не загружено, а просто вставлена картинка в текст новости, то в og:image выводит ссылку на миниатюру. Стоит плагин отключить, сразу ссылка на полную картинку, как и описано в нововведениях к версии 13.2

только не забудь img заменить на своё значение и путь до картинки заглушки

<?xml version="1.0" encoding="utf-8"?>
<dleplugin>
	<name>og:image</name>
	<description>Картинка в meta из доп. поля</description>
	<icon></icon>
	<version>1.6</version>
	<dleversion>13.2</dleversion>
	<versioncompare>greater</versioncompare>
	<upgradeurl></upgradeurl>
	<filedelete>0</filedelete>
	<needplugin></needplugin>
	<mysqlinstall><![CDATA[]]></mysqlinstall>
	<mysqlupgrade><![CDATA[]]></mysqlupgrade>
	<mysqlenable><![CDATA[]]></mysqlenable>
	<mysqldisable><![CDATA[]]></mysqldisable>
	<mysqldelete><![CDATA[]]></mysqldelete>
	<phpinstall><![CDATA[]]></phpinstall>
	<phpupgrade><![CDATA[]]></phpupgrade>
	<phpenable><![CDATA[]]></phpenable>
	<phpdisable><![CDATA[]]></phpdisable>
	<phpdelete><![CDATA[]]></phpdelete>
	<file name="engine/modules/show.full.php">
		<operation action="replace">
			<searchcode><![CDATA[if ( count($images) ) {
			$social_tags['image'] = str_replace("/thumbs/","/",$images[0]);
			$social_tags['image'] = str_replace("/medium/","/",$social_tags['image']);
		}]]></searchcode>
			<replacecode><![CDATA[$xfieldsdata = xfieldsdataload( $row['xfields'] );
if (isset($xfieldsdata['img'])) {
	$socimgarticle = $config['http_home_url'].'uploads/posts/'.$xfieldsdata['img'];
} else {
	$socimgarticle = $images;
	
	if ( count($socimgarticle) ) {
		$socimgarticle = str_replace("/thumbs/","/",$socimgarticle[0]);
		$socimgarticle = str_replace("/medium/","/",$socimgarticle);
	} else {
		$socimgarticle = $config['http_home_url'].'uploads/kanaspo.jpg';
	}
}
$social_tags['image'] = $socimgarticle;]]></replacecode>
		</operation>
	</file>
</dleplugin>

 

  • Нравится 1

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


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

только не забудь img заменить на своё значение и путь до картинки заглушки

Спасибо за обновление.

Подскажите, если у меня два дополнительных полей, так будет правильно?

$xfieldsdata = xfieldsdataload( $row['xfields'] );
if (isset($xfieldsdata['glavfoto'])) {
    $socimgarticle = $config['http_home_url'].'uploads/posts/'.$xfieldsdata['glavfoto'];
} elseif (isset($xfieldsdata['photoalbom'])) {
    $socimgarticle = $config['http_home_url'].'uploads/posts/'.$xfieldsdata['photoalbom'];
} else {
    $socimgarticle = $images;
    
    if ( count($socimgarticle) ) {
        $socimgarticle = str_replace("/thumbs/","/",$socimgarticle[0]);
        $socimgarticle = str_replace("/medium/","/",$socimgarticle);
    } else {
        $socimgarticle = $config['http_home_url'].'uploads/gusev.png';
    }
}
$social_tags['image'] = $socimgarticle;

 

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

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


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

так будет правильно?

да

  • Нравится 1

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


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

@odys, не смотрели, как решить проблему, если прописываешь alt картинке? https://forum.dle-news.ru/topic/72594-своя-картинка-в-ogimage-в-полной-новости-для-версии-13/?do=findComment&comment=368617

 

Я тут смотрел showfull.php и там есть такой код:

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

Нельзя ли как-то в ваш плагин вставить типа {$img_url}, чтобы выводилась только ссылка на картинку, а alt нет?

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

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


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

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

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

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

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

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

Войти

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

Войти