SEO форум вебмастеров TalkWebber.ru

Чтобы пользоваться всеми его возможностями, необходимо зарегистрироваться. Без регистрации Вы сможете только читать определенные темы. Мы будем благодарны, если Вы примите участие в нашем проекте и будете развивать форум вместе с нами!

  • Хотите поместить баннер на наш сайт или закрепить свою тему с цветом? Зайдите в эту тему!

og:image из доп поля dle 10.3

lolfika

Новичок
Пользователь
Регистрация
03.11
Сообщения
102
Репутация
16
#1
привет всем
у меня есть проблема
когда добавляешь новост в сорсе же добавляются теги

<meta property="og:site_name" content="---------" />
<meta property="og:type" content="article" />
<meta property="og:title" content="---------" />
<meta property="og:url" content="

Please Login or Register to view hidden text.

test test.html" />

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

я вывожу картинки через доп поля и тег og:img не добавляется
как сделать так чтобы отображать доп поля на пример poster как og:img тег
 

PunPun

[ SAD ]
Модератор
Регистрация
12.13
Сообщения
3,410
Репутация
1,026
Возраст
28
#2
открыть /engine/modules/show.full.php
найти:

$social_tags['url'] = $full_link;
ниже вставить

Код:
$xfieldsdata = xfieldsdataload( $row['xfields'] );
$social_tags['img'] = $xfieldsdata['tvoedoppole'];
 

lolfika

Новичок
Пользователь
Регистрация
03.11
Сообщения
102
Репутация
16
#3
Gameer написал(а):
открыть /engine/modules/show.full.php
найти:

$social_tags['url'] = $full_link;
ниже вставить


$xfieldsdata = xfieldsdataload( $row['xfields'] );
$social_tags['img'] = $xfieldsdata['tvoedoppole'];
да теперь все работает но есть еще одна проблема

как я уже говорил постеры вывожу через доп поля но я в новость еще добавляю скриншоты на пример кадры из фильма
и тут косяк потому что в сорсе отображает уже вставление в новость скриншоты а не картинку именно из доп поля poster

то есть как указать чтобы отображалось картинка именно из доп поля poster
 

PunPun

[ SAD ]
Модератор
Регистрация
12.13
Сообщения
3,410
Репутация
1,026
Возраст
28
#4
lolfika написал(а):
да теперь все работает но есть еще одна проблема
Отменить все правки в том файле, вернуть в исходный вариант.
Найти в том же файле

if ( count($images) ) $social_tags['image'] = $images[0];
заменить на

$xfieldsdata = xfieldsdataload( $row['xfields'] );
$social_tags['image'] = $xfieldsdata['tvoedoppole'];
И да, от простого спасибо не отказался.
 

lolfika

Новичок
Пользователь
Регистрация
03.11
Сообщения
102
Репутация
16
#5
огромное спасибо тебе за помощь
теперь все работает прекрасно :good: :good:
 

lolfika

Новичок
Пользователь
Регистрация
03.11
Сообщения
102
Репутация
16
#6
Gameer написал(а):
Отменить все правки в том файле, вернуть в исходный вариант.
Найти в том же файле

if ( count($images) ) $social_tags['image'] = $images[0];
заменить на

$xfieldsdata = xfieldsdataload( $row['xfields'] );
$social_tags['image'] = $xfieldsdata['tvoedoppole'];
И да, от простого спасибо не отказался.
а как на DLE 9.6 настроить этот хак?
на новых версиях работает прекрасно но теперь нужно для 9.6

если есть время помоги мне пожалуйста
 

PunPun

[ SAD ]
Модератор
Регистрация
12.13
Сообщения
3,410
Репутация
1,026
Возраст
28
#7
lolfika написал(а):
а как на DLE 9.6 настроить этот хак?
на новых версиях работает прекрасно но теперь нужно для 9.6

если есть время помоги мне пожалуйста
А на DLE 9.6 нету стандартного og:image
 

lolfika

Новичок
Пользователь
Регистрация
03.11
Сообщения
102
Репутация
16
#8
Gameer написал(а):
А на DLE 9.6 нету стандартного og:image
никак нельзя по другому вывести в коде страницы og:image ?
 

PowerSlime

Гость
Пользователь
Регистрация
11.14
Сообщения
66
Репутация
8
#9
lolfika написал(а):
никак нельзя по другому вывести в коде страницы og:image ?
Хм... Я давно не работал с доп полями, но есть маленький совет.

В общем выглядит OG:img так:


<meta property="og:image" content="URL" />

Сам тег находится в теге <head>.
Вариант таков:
  1. Создаём доп.поле (Допустим под названием NAME)
  2. Открываем main.tpl и в <head>, желательно перед </head> вставляем код

    [xfgiven_NAME]<meta property="og:image" content="[xfvalue_NAME]" />[/xfgiven_NAME]

Попробуй. Должно работать :) А остальные теги можно также перед </head> добавить и добавить поддержку с помощью доп. полей.
 

PunPun

[ SAD ]
Модератор
Регистрация
12.13
Сообщения
3,410
Репутация
1,026
Возраст
28
#10
PowerSlime написал(а):
Хм... Я давно не работал с доп полями, но есть маленький совет.

В общем выглядит OG:img так:


<meta property="og:image" content="URL" />

Сам тег находится в теге <head>.
Вариант таков:
  1. Создаём доп.поле (Допустим под названием NAME)
  2. Открываем main.tpl и в <head>, желательно перед </head> вставляем код

    [xfgiven_NAME]<meta property="og:image" content="[xfvalue_NAME]" />[/xfgiven_NAME]

Попробуй. Должно работать :) А остальные теги можно также перед </head> добавить и добавить поддержку с помощью доп. полей.
Добавить еще тег [aviable=showfull] иначе будет вылазить текст [/xfgiven_NAME]
 

PowerSlime

Гость
Пользователь
Регистрация
11.14
Сообщения
66
Репутация
8
#11
Gameer написал(а):
Добавить еще тег [aviable=showfull] иначе будет вылазить текст [/xfgiven_NAME]
Хм... По идеи не должен, но с showfull - согласен!
Тогда конечная строка выйдет:

Код:
[aviable=showfull][xfgiven_NAME]<meta property="og:image" content="[xfvalue_NAME]" />[/xfgiven_NAME][/aviable]
 

mxneo

Завсегдатай
Пользователь
Регистрация
09.10
Сообщения
903
Репутация
618
Возраст
26
#12
Gameer написал(а):
Добавить еще тег [aviable=showfull] иначе будет вылазить текст [/xfgiven_NAME]
xfgiven и xf* теги в main не работают...
 

PunPun

[ SAD ]
Модератор
Регистрация
12.13
Сообщения
3,410
Репутация
1,026
Возраст
28
#13
mxneo написал(а):
xfgiven и xf* теги в main не работают...
Может быть я по этому и сказал обернуть их в тег aviable ?
 

mxneo

Завсегдатай
Пользователь
Регистрация
09.10
Сообщения
903
Репутация
618
Возраст
26
#14
Gameer написал(а):
Может быть я по этому и сказал обернуть их в тег aviable ?
aviable парсится в index.php. данные xf* есть в modules/show.fill.php. не поможет.
 

PunPun

[ SAD ]
Модератор
Регистрация
12.13
Сообщения
3,410
Репутация
1,026
Возраст
28
#15
Открыть /engine/modules/show.full.php найти :

if ( $row['fixed'] ) {
Выше вставить :

$xfieldsdata = xfieldsdataload( $row['xfields'] );
$metatags['image'] = "<meta property=\"og:image\" content=\"{$xfieldsdata['tvoedoppole']}\" />";
Далее открыть /engine/engine.php найти код :



<meta name="keywords" content="{$metatags['keywords']}">{$disable_index}


Рядом вставить :
Код:
{$metatags['image']}
 

mxneo

Завсегдатай
Пользователь
Регистрация
09.10
Сообщения
903
Репутация
618
Возраст
26
#16
Gameer написал(а):
Открыть /engine/modules/show.full.php найти :

if ( $row['fixed'] ) {
Выше вставить :

$xfieldsdata = xfieldsdataload( $row['xfields'] );
$metatags['image'] = "<meta property=\"og:image\" content=\"{$xfieldsdata['tvoedoppole']}\" />";
Далее открыть /engine/engine.php найти код :



<meta name="keywords" content="{$metatags['keywords']}">{$disable_index}


Рядом вставить :

{$metatags['image']}
Данный вариант работать будет, но рекомендую не говнокодить, и убрать лишний вызов функции xfieldsdataload, в show.full.php уже есть xfieldsdataload...
 

PunPun

[ SAD ]
Модератор
Регистрация
12.13
Сообщения
3,410
Репутация
1,026
Возраст
28
#17
mxneo написал(а):
Данный вариант работать будет, но рекомендую не говнокодить, и убрать лишний вызов функции xfieldsdataload, в show.full.php уже есть xfieldsdataload...
я скинул набросок, все сделать можно и по другому.
 

GRAND_LAW

Новичок
Проверенные
Регистрация
07.10
Сообщения
130
Репутация
12
#18
Отменить все правки в том файле, вернуть в исходный вариант.
Найти в том же файле

if ( count($images) ) $social_tags['image'] = $images[0];
заменить на

$xfieldsdata = xfieldsdataload( $row['xfields'] );
$social_tags['image'] = $xfieldsdata['tvoedoppole'];
И да, от простого спасибо не отказался.
Выводится:
<meta property="og:image" content="2018-08/1535724544_1529593694_2018-06-21-18-06-www_insales_ru1.png">


А картинка нахходится в /uploads/posts/2018-08/1535724544_1529593694_2018-06-21-18-06-www_insales_ru1.png