Новости Joomla

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

👩‍💻 Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1. Это релиз, в который включены уже проверенные изменения, но ещё очень многие исправления и улучшения ждут своей очереди. Joomla следит за качеством и безопасностью своего кода и каждое изменение должно быть успешно протестировано как минимум ещё двумя участниками сообщества. Разработка Joomla ведётся на платформе GitHub.Филипп Уолтон (Philip Walton) - один из разработчиков, кто активно вносит свой вклад в ядро Joomla. Он уже несколько месяцев посвящает свои послеполуденные часы пятницы работе с Joomla и предлагает присоединиться к нему. 📆 Пятница, 30 мая 2025, с 15:00 до 17:00 по UTC (Лондон) - с 18:00 до 20:00 по Москве.В чате Google Meet Филипп готов помочь с тестированием тем, кто будет делать это в первый раз. А так же он подготовил список лёгких Pull Request, которые можно протестировать довольно быстро. Чем больше тестов будет проведено сейчас, тем меньше ошибок вылезет потом. На данный момент 148 (уже 147 на момент написания заметки) PR на GitHub Joomla ждут тестирования.👩‍💻 Open to all. All together.Также вам поможет сделать первые шаги это видео.GitHub JoomlaДа, это вечер пятницы. Но тестирование занимает порой минут 15, а доброе дело сделано. Просто убедитесь, что разработчик чего-то не пропустил и всё работает как ожидается.#joomla #joomla6 #community

0 Пользователей и 1 Гость просматривают эту тему.
  • 19 Ответов
  • 5365 Просмотров
*

kik84

  • Завсегдатай
  • 1350
  • 64 / 4
Open graph без плагина
« : 08.11.2015, 14:34:07 »
Хочу без использования сторонних плагинов вывести Open Graph protocol, чтобы данные генерировались в файле шаблона.
<meta property="og:title" content="" />
<meta property="og:type" content="website" />
<meta property="og:url" content="" />
<meta property="og:description" content=""/>
<meta property="og:image" content="" />

Подскажите как правильно заполнить  ^-^
И как сделать, чтобы выбиралось либо имеющееся изображение из материала, либо лого, если оно отсутствует?
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Open graph без плагина
« Ответ #1 : 08.11.2015, 14:58:47 »
Первые 4 тега можно вывести через шаблон. С изображением сложнее, но можно тоже через шаблон: название изображения привязать к Id, например img_115
« Последнее редактирование: 08.11.2015, 15:10:34 от Филипп Сорокин »
*

kik84

  • Завсегдатай
  • 1350
  • 64 / 4
Re: Open graph без плагина
« Ответ #2 : 08.11.2015, 15:57:51 »
Нашел только такой вариант http://joomlaforum.ru/index.php/topic,275868.msg1545495.html#msg1545495
head.php ведь может быть заменен при обновлении?
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Open graph без плагина
« Ответ #3 : 08.11.2015, 17:08:25 »
Нашел только такой вариант http://joomlaforum.ru/index.php/topic,275868.msg1545495.html#msg1545495
head.php ведь может быть заменен при обновлении?
Обязательно будет заменён.
*

kik84

  • Завсегдатай
  • 1350
  • 64 / 4
Re: Open graph без плагина
« Ответ #4 : 08.11.2015, 17:27:15 »
Обязательно будет заменён.
Подскажите, как правильно прописать переменные в шаблоне?
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Open graph без плагина
« Ответ #5 : 08.11.2015, 17:38:29 »
Подскажите, как правильно прописать переменные в шаблоне?
Вы с изображением определились? Вам подходит вариант с привязкой к имени изображения ID материала?
*

kik84

  • Завсегдатай
  • 1350
  • 64 / 4
Re: Open graph без плагина
« Ответ #6 : 08.11.2015, 18:17:30 »
Вы с изображением определились? Вам подходит вариант с привязкой к имени изображения ID материала?
Да http://joxi.ru/12Mp9EOIpl99mJ. А если изображений нет, то подставить логотип.
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Open graph без плагина
« Ответ #7 : 08.11.2015, 19:38:55 »
Да http://joxi.ru/12Mp9EOIpl99mJ. А если изображений нет, то подставить логотип.
Что именно да? Привязать имя файла изображения к ID?
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Open graph без плагина
« Ответ #8 : 08.11.2015, 20:41:14 »
Код: php
$app = JFactory::getApplication();
$doc = JFactory::getDocument();
$page_title = $doc->getTitle();
$page_uri = JURI::current();
$page_description = $doc->getDescription();
$article_id = $app->input->getInt('id', '');
$img_source = "images/img_{$article_id}.jpg";
$logo_source = "images/logo.jpg";

// Получаем компонент и его представление
$option = $app->input->getString('option', '');
$view = $app->input->getString('view', '');

// Проверяем, если изображение существует, и что текущая страница является именно материалом com_content
if ($option === "com_content" && $view === "article" && file_exists(JPATH_ROOT . DIRECTORY_SEPARATOR . $img_source)) {
    $meta_source = JURI::root(). $img_source;
} else {
    $meta_source = JURI::root(). $logo_source;
}
« Последнее редактирование: 07.03.2016, 12:45:25 от Филипп Сорокин »
*

kik84

  • Завсегдатай
  • 1350
  • 64 / 4
Re: Open graph без плагина
« Ответ #9 : 09.11.2015, 10:04:51 »
Спс, работает, но с изображением не получается, как в выводе добавить две переменные: либо лого, либо изображение из материала?
<meta property="og:image" content="<?php echo $logo_source ?>" />
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Open graph без плагина
« Ответ #10 : 09.11.2015, 10:37:16 »
Код
$meta_source
Перед этим определите $logo_source и img_source
*

kik84

  • Завсегдатай
  • 1350
  • 64 / 4
Re: Open graph без плагина
« Ответ #11 : 09.11.2015, 14:22:06 »
Можно еще глупый вопрос, $img_source = "images/stati/img_{$article_id}.jpg"; Т.е. мне в эту папку надо помещать изображения с названием img_idматериала.jpg?
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Open graph без плагина
« Ответ #12 : 09.11.2015, 14:43:27 »
Ну да! По крайней мере так задумано :)
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Open graph без плагина
« Ответ #13 : 10.11.2015, 16:37:41 »
удалено
« Последнее редактирование: 07.03.2016, 12:29:44 от Филипп Сорокин »
*

kik84

  • Завсегдатай
  • 1350
  • 64 / 4
Re: Open graph без плагина
« Ответ #14 : 06.03.2016, 20:18:19 »
Нужна ваша помощь, хочу добавить проверку на наличие "Изображение полного текста материала", т.е. если оно есть, то подставляем его для OG, если нет, то $logo_source = "images/logo.jpg";
Спасибо  ^-^
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Open graph без плагина
« Ответ #15 : 07.03.2016, 12:31:10 »
Код: php
$app = JFactory::getApplication();
$doc = JFactory::getDocument();
$option = $app->input->getCmd('option');
$view = $app->input->getCmd('view');

if($option === "com_content" && $view === "article")
{
    $id = $app->input->getCmd('id');
    $article = JTable::getInstance("content");
    $article->load($id);
    $images = json_decode($article->get('images'));
    
    if (!empty(images->image_fulltext)) {
        // раз
    } else {
        // два
    }
}
« Последнее редактирование: 07.03.2016, 12:45:09 от Филипп Сорокин »
*

kik84

  • Завсегдатай
  • 1350
  • 64 / 4
Re: Open graph без плагина
« Ответ #16 : 07.03.2016, 13:15:44 »
Пробую совместить ваш код с кодом от effrit из этой темы http://joomlaforum.ru/index.php/topic,322786.msg1614553.html#msg1614553, но пока лишь ошибка 500 на последнее условие проверки image_fulltext

Код
$article_id = (JRequest::getVar('option')==='com_content' && JRequest::getVar('view')==='article')? JRequest::getInt('id') : 0;
if($article_id){
$db = JFactory::getDbo();
$query = $db->getQuery(true)
->select($db->quoteName('images'))
->from($db->quoteName('#__content'))
->where('id = '. $db->Quote($article_id));

$db->setQuery($query);
$data = $db->loadResult();
$pics = json_decode($data);
echo $pics->image_fulltext;
}

$option = $app->input->getCmd('option');
$view = $app->input->getCmd('view');
if($option === "com_content" && $view === "article")
{
    $id = $app->input->getCmd('id');
    $article = JTable::getInstance("content");
    $article->load($id);
    $images = json_decode($article->get('images'));
    if (!empty(images->image_fulltext)) {
$logo_source = "images/sn.png";
    } else {
$images->image_fulltext;
    }
}
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Open graph без плагина
« Ответ #17 : 07.03.2016, 13:23:30 »
Ничего не понял. Что нужно сделать-то?
*

kik84

  • Завсегдатай
  • 1350
  • 64 / 4
Re: Open graph без плагина
« Ответ #18 : 07.03.2016, 13:50:59 »
Ничего не понял. Что нужно сделать-то?

Вытянуть изображение из fulltext материала и, если оно существует, подставить вместо $img_source = "images/img_{$article_id}.jpg";, если нет, то $logo_source.
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Open graph без плагина
« Ответ #19 : 07.03.2016, 14:34:01 »
Решение я написал выше.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

При обновлении плагина helix3 слетает сендвич в мобильном шаблоне

Автор gorbi_U

Ответов: 0
Просмотров: 1349
Последний ответ 25.01.2023, 10:55:44
от gorbi_U
Helix 3 : Open Graph - не та подпись к ссылке на сайт в FB и не отражается картинка и в ВК, и в FB

Автор lesovik

Ответов: 1
Просмотров: 1651
Последний ответ 23.01.2021, 18:46:15
от gorbi_U
Facebook игнорирует Open Graph

Автор Chez

Ответов: 4
Просмотров: 1260
Последний ответ 28.06.2016, 16:18:34
от kik84
Разметка Open Graph

Автор Mnojitell

Ответов: 6
Просмотров: 7441
Последний ответ 08.05.2016, 09:14:28
от Viktop
Не работает код плагина в Custom module

Автор marynel1548

Ответов: 3
Просмотров: 949
Последний ответ 02.04.2016, 14:33:55
от zikkuratvk