Пытаюсь в шаблоне статьи добраться до intro image, но не

получается. J4.1.2
Собственно я хочу выводить open graph в шаблоне статьи. Не подскажите как получить картинку?
//OpenGraph
if (isset($images->image_intro) and !empty($images->image_intro))
{
$timage= htmlspecialchars(JURI::root().$images->image_intro);
}
elseif (isset($images->image_fulltext) and !empty($images->image_fulltext))
{
$timage= htmlspecialchars(JURI::root().$images->image_fulltext);
}
else
{
$timage= 'картинка по умолчанию';
}
$doc =& JFactory::getDocument();
$doc->addCustomTag( '
<meta name="twitter:title" content="'.$this->escape($this->item->title).'">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:url" content="'.str_replace('" ','&quot;',JURI::current()).'"="">
<meta name="twitter:description" content="'.strip_tags($this->item->introtext).'">
<meta name="twitter:image" content="'.$timage.'">
<meta property="og:title" content="'.$this->escape($this->item->title).'"/>
<meta property="og:type" content="article"/>
<meta property="og:url" content="'.str_replace('" ','&quot;',juri::current()).'"="">
<meta property="og:image" content="'.$timage.'"/>
<meta property="og:description" content="'.strip_tags($this->item->introtext).'"/>
');

12 ответов

21 просмотр

Это не работает?

Сергей-Kuznetsov Автор вопроса
Sergey Tolkachyov
Это не работает?

Всё работает кроме вывода вступительного изображения статьи.

Старый код, на j4 он и не должен работать.

Сергей-Kuznetsov Автор вопроса
Artem Pavluk
Старый код, на j4 он и не должен работать.

Отсюда вопрос, как сделать? Или это секрет?

Artem Pavluk
Старый код, на j4 он и не должен работать.

Он может работать, но не факт. Не у компа. Подскажите ему как картинки в массиве посмотреть.

Сергей Kuznetsov
Отсюда вопрос, как сделать? Или это секрет?

Я с телефона мне не удобно, зайдите на официальную документацию.

Сергей Kuznetsov
Отсюда вопрос, как сделать? Или это секрет?

Там к картинкам доступ не через $images, а через $this->item->что-то-там

Сергей-Kuznetsov Автор вопроса
Sergey Tolkachyov
Там к картинкам доступ не через $images, а через $...

Примерно вот так я получил intro image. Всё заработало $regexImageSrc = '/#joomlaImage?([^\'" >]+)/'; $img= preg_replace($regexImageSrc, '', json_decode($this->item->images)->image_intro);

Сергей Kuznetsov
Отсюда вопрос, как сделать? Или это секрет?

Я на своем сайте сделал статью с описанием кодом. Там можно скачать готовый файл php для статьи и категории https://seomatrix.net/joomla4/razmetka-open-graph

Сергей Kuznetsov
Отсюда вопрос, как сделать? Или это секрет?

https://github.com/master3-blank-template/Master3_J4/tree/main/tpl_master3_j4/html/layouts/joomla/content вот так переопределяются стандартные макеты материала, картинки в т.ч.

Сергей Kuznetsov
Примерно вот так я получил intro image. Всё зарабо...

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

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

Обсуждают сегодня

Народ! Впервые клиенту пришло письмо от РКН, у вас, дескать, есть яндекс метрика, а нигде не написано, что вы ее юзаете. Никто не сталкивался?
Sasha Beep
10
В clientsettings есть поле client_rates. В поле pagebuilder. Как получить то его?)
Andrey K
8
У меня вот другая проблема, внезапная. Есть интернет магаз, есть товар. Цены не указана (пока что), написано "цена не проставлена". У товара есть p/n (код производителя). Идём...
Oleg Nosov
1
Яндекс маршрутизатор кто-нибудь использовал с своих проектах, чтоб через него маршруты составить/посчитать? Насколько простой/муторный сервис?
Dreamer_0x01 VeseloV
7
мляяяяяя [!if? &is=`[!$_SESSION['mgrRole']!]:is:1` &then=`admin`!]
Sasha Beep
6
В pb нет возможности копировать строки?
Andrey K
5
От толщины пачки?)
Jacov Borisov
3
А куда пропали описание полей в ClientSettings?
Дмитрий
6
Сделал краткий обзор магазина из статьи и заодно там же записал инструкцию по развёртыванию. https://www.youtube.com/watch?v=8-sE1vNk95Q (чё думаете по звуку? кое-что поменял...
Andrey K
17
А где @Grinyaha уважаемый пропал?
Am Ambrion
14
Карта сайта