Новости Joomla

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

intcorp

  • Захожу иногда
  • 456
  • 12 / 0
Open Graph metadata
« : 20.09.2013, 14:08:35 »
Кто как реализовал у себя Open Graph metadata для товаров и категорий?
Нашел классный плагин HD-OG для Joomla 2.5, но он не поддерживает картинки магазина  :dry:
*

Igorenia

  • Захожу иногда
  • 156
  • 6 / 0
Re: Open Graph metadata
« Ответ #1 : 25.10.2013, 01:18:06 »
А зачем реализовывать Open Graph для JoomShopping? Яндекс в своих расширенных сниппетах для товаров ими не руководствуется, а использует YML.
Для Google же это реализовывается через Schema.org. Для JoomShopping это не раз обсуждалось, например тут.
*

nevigen

  • Moderator
  • 10431
  • 862 / 25
  • http://n*****n.com
Re: Open Graph metadata
« Ответ #2 : 25.10.2013, 08:11:13 »
Open Graph metadata для фейсбук
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

intcorp

  • Захожу иногда
  • 456
  • 12 / 0
Re: Open Graph metadata
« Ответ #3 : 25.10.2013, 12:01:34 »
Не только фейсбук, а все нормальные соцсети.
Open Graph отображается в коде структурированных данных RDFa в обычных результатах поиска http://www.google.com/webmasters/tools/richsnippets?q=http%3A%2F%2Flr-company.com.ua%2Fkatalog%2Ftelo%2Faloe-vera-nabor-dlya-ukhoda-za-volosami-i-telom - вместо картики товара URL сайта как и в значении Open Graph
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Open Graph metadata
« Ответ #4 : 25.10.2013, 12:06:59 »
ну судя по тому, что JoomShopping - нормальная соцсеть, то в нем конечно надо Open Graph metadata использовать обязательно :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

intcorp

  • Захожу иногда
  • 456
  • 12 / 0
Re: Open Graph metadata
« Ответ #5 : 25.10.2013, 12:10:30 »
ну судя по тому, что JoomShopping - нормальная соцсеть, то в нем конечно надо Open Graph metadata использовать обязательно :)
Это абы что отписать?)
Киньте ссылку с Open Graph и без таковой на страницу соц сети и поймете о чем речь.
Яндекс тоже приветствует данную разметку особенно в видео каталогах http://help.yandex.ru/webmaster/video/open-graph-markup.xml
« Последнее редактирование: 25.10.2013, 12:14:07 от intcorp »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Open Graph metadata
« Ответ #6 : 25.10.2013, 13:00:31 »
Цитировать
Это абы что отписать?)
сори. вчитался. не понял сразу что надо. думал вы об выдаче поисковой.

intcorp, есть предложение. вы описываете подробно, так сказать, цели и задачи, чтобы было понятно всем, а не только вам, что за плагин такой, и на кой оно надо. а мы в свою очередь адаптируем его для ЖШ. как вам?

и кстати по поводу
Цитировать
Не только фейсбук, а все нормальные соцсети.
что то я так сходу не нашел, кто еще кроме фейсбука. в частности, наши какие понимают?
« Последнее редактирование: 25.10.2013, 13:20:23 от dmitry_stas »
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

intcorp

  • Захожу иногда
  • 456
  • 12 / 0
Re: Open Graph metadata
« Ответ #7 : 25.10.2013, 13:44:52 »
Open Graph поддерживают: Фейсбук, Твиттер, Вконтакте, LinkedIn, Google+, по идее и одноклассники
Плагин HD-OG генерирует Open Graph для обычных материалов (по идее и других компонентов без поддержки og:image)на основе их мета тегов + берет интро картинку. Для джумшоппинга так же работает, за исключением og:image изображений товара и категории, которые плагин вытаскивать не умеет, вставляя URL главной страницы вместо ссылки на картинку.
Генерируемые мета:
Цитировать
<meta property="og:title" content="Heidi Klum Парфюмерная серия - Компания LR Украина "/>
<meta property="og:type" content="website"/>
<meta property="og:url" content="http://lr-company.com.ua/katalog/heidi-klum/heidi-klum-parfyumernaya-seriya"/>
<meta property="og:image" content="http://lr-company.com.ua/" />
<meta property="og:description" content="Heidi Klum Парфюмерная серия" />
<meta property="og:site_name" content="Компания LR Украина " />
<meta property="og:locale" content="ru_RU"/>
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Open Graph metadata
« Ответ #8 : 25.10.2013, 15:06:27 »
если можно еще вот этой фразы
Цитировать
Киньте ссылку с Open Graph ... на страницу соц сети
раскройте смысл на примере например ВКонтакте или Одноклассники. или ссылку просто, если у них это описано
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

intcorp

  • Захожу иногда
  • 456
  • 12 / 0
Re: Open Graph metadata
« Ответ #9 : 25.10.2013, 15:21:15 »
если можно еще вот этой фразы раскройте смысл на примере например ВКонтакте или Одноклассники. или ссылку просто, если у них это описано
Суть в том, что если запостить на стену (к примеру) вконтакте ссылку на страницу с Open Graph, то отобразится блок с заголовком страницы, описанием и картинкой, которые прописаны в Open Graph. Иначе, там отображается не всегда то, что хотелось бы, особенно это касается картинок. Это же касается добавления ссылок с группу и когда люди ставят лайки с рекомендациями страницы.
Вкратце, Open Graph - основа успешного продвижения сайта через соц сети.
*

instalator_

  • Новичок
  • 4
  • 0 / 0
Re: Open Graph metadata
« Ответ #10 : 31.10.2013, 15:52:57 »
Не решил вопрос с отображением картинок? сейчас пытаюсь покапать HD_OG.php для добавления пути картинки в теги, пока без результатно.

Вот на что наткнулся, но не ясно куда вставлять
http://stackoverflow.com/questions/12939909/get-images-from-article-in-joomla-with-php
« Последнее редактирование: 31.10.2013, 16:08:08 от instalator_ »
*

instalator_

  • Новичок
  • 4
  • 0 / 0
Re: Open Graph metadata
« Ответ #11 : 31.10.2013, 16:25:31 »
Вообщем вот что получилось, если что не так поправте. Ссылка вроде на кртинку в теге появилась.
подправленный файл HD_OG.php
Код
<?php
# HD-OG   3                                       
# Copyright (C) 2013 by Hyde-Design                 
# Homepage   : www.hyde-design.co.uk            
# Author     : Hyde-Design                   
# Email      : sales@hyde-design.co.uk            
# Version    : 3.2                               
# License    : http://www.gnu.org/copyleft/gpl.html GNU/GPL 

// no direct access
defined('_JEXEC') or die('Restricted access');
$buffer = JResponse::getBody();
jimport('joomla.plugin.plugin');
jimport('joomla.application.component.model');




class plgSystemHD_OG extends JPlugin
{function plgSystemHD_OG(&$subject, $config) {parent::__construct($subject, $config);
$this->_plugin = JPluginHelper::getPlugin( 'system', 'HD_OG' );
}

function onAfterRender()
{ $element_url = '/administrator/'; $current_url = $_SERVER['REQUEST_URI'];
global $mainframe;
$buffer = JResponse::getBody();
if (strstr($current_url, $element_url)) {;} else {

$document = &JFactory::getDocument();
$app = JFactory::getApplication();

$hdog_title_tmp = $document->getTitle();
$hdog_title = '
<meta property="og:title" content="'.$hdog_title_tmp.'"/>
';
$hdog_type_tmp = $this->params->get( 'hdog_type' );
$hdog_type =  '<meta property="og:type" content="'.$hdog_type_tmp.'"/>
';
$hdog_base = $document->getBase();
$hdog_url =   '<meta property="og:url" content="'.$hdog_base.'"/>
';

//get thumbnail image
$doc = new DOMDocument();
@$doc->loadHTML($buffer);
$images = $doc->getElementsByTagName('img');
if (strlen($hdog_base) <= 26)
{
    $image = $images->item(0)->getAttribute('src');
}
else
{
    $image = $images->item(1)->getAttribute('src');
}
if (substr($image, 0, 4)!= 'http') $image = JURI::base().$image;
$hdog_image =   '<meta property="og:image" content="'.$image.'" />
';


        //check article view

        $view =JRequest::getVar('view');
        if ($view == "article") {
        $articlesModel = JModel::getInstance('ContentModelArticle');
        $articleId = JRequest::getInt('id', 0);
        $hdog_image_thumb = '<meta property="og:image" content="'.$articleId.'" />
';            $article = $articlesModel->getItem($articleId);
              $imagesCode = $article->images; $thumbCode = str_replace("\/", "/", $imagesCode); $thumb = explode('"', $thumbCode); $thumb_img = $thumb[03];
              if (!empty($thumb_img)) {$hdog_image_thumb = '<meta property="og:image" content="'.JURI::base().$thumb_img.'" />
';}           else {$hdog_image_thumb = '<meta property="og:image" content="'.JURI::base().$hdog_image_tmp.'" />
';}}         
        //check category view
        if ($view == "category") {
        $categoriesModel = JModel::getInstance('ContentModelCategories');
        $category = JRequest::getVar('id');
        $category = '9';
        $db = JFactory::getDbo();
        $query = $db->getQuery(true);
         $query->select ('alias');
         $query->from('#__categories');
         $query->where('id=$category');

             $db->setQuery($query);
             $results = $db->loadObjectList();

             
//       echo 'xx '.$results.' xx';
                 
        };
         $hdog_image_thumb = '<meta property="og:image" content="'.$categoryId.'" />
';           
             
  if (!empty($thumb_img)) {$hdog_image_thumb = '<meta property="og:image" content="'.JURI::base().$thumb_img.'" />
';}           else {$hdog_image_thumb = ''.$hdog_image.'
';};

        //get meta description
$hdog_desc_tmp = $document->getDescription();
$hdog_desc =   '<meta property="og:description" content="'.$hdog_desc_tmp.'" />
';

        //get site name
$hdog_name_tmp = $app->getCfg('sitename');
        $hdog_name =   '<meta property="og:site_name" content="'.$hdog_name_tmp.'" />
';

        //get locale
        $lang =& JFactory::getLanguage(); $sitelanguage = $lang->getTag(); $oglanguage = str_replace ('-', '_', $sitelanguage);
$hdog_locale = '<meta property="og:locale" content="'.$oglanguage.'"/>
';
       
        //get admin id
$hdog_admins_tmp = $this->params->get( 'hdog_admins' );
        $hdog_admins =   '<meta property="fb:admins" content="'.$hdog_admins_tmp.'"/>
';

        // render all to screen
$hdog_all = $hdog_title.$hdog_type.$hdog_url.$hdog_image_thumb.$hdog_desc.$hdog_name.$hdog_locale;
$use_admin = $this->params->get( 'use_admin' );
if ($use_admin == '1') {$hdog_all = $hdog_all.$hdog_admins;}
        $buffer = str_replace ('<html xmlns="http://www.w3.org/1999/xhtml"', '<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:og="http://ogp.me/ns#"
      xmlns:fb="http://www.facebook.com/2008/fbml" ', $buffer);
    $buffer = str_replace ('</title>', '</title>'.$hdog_all, $buffer);

JResponse::setBody($buffer);
return true;
}}}
*

intcorp

  • Захожу иногда
  • 456
  • 12 / 0
Re: Open Graph metadata
« Ответ #12 : 31.10.2013, 18:43:01 »
У меня с этим кодом вытаскивает картинку из слайдшоу, что в категории шопа, что в карточке товара.
*

Exciter

  • Захожу иногда
  • 155
  • 9 / 0
  • Теория + практика
Re: Open Graph metadata
« Ответ #13 : 18.12.2014, 18:21:19 »
Стандартными средствами Joomla этого не сделать.
Код
public function fetchHead
выводит только
Код
meta name
meta property не вывести

Надо либо код Joomla допиливать, либо искать третью сторону для решения.
*

EGGroup_CCTV

  • Новичок
  • 5
  • 2 / 0
Re: Open Graph metadata
« Ответ #14 : 30.03.2015, 18:16:39 »
У меня реализовано все, что бы картинку вытащить (из товара) нужно плагин устанавливать отдельно. Если ссылку не удалят http://videonabludenie26.ru/katalog-tovarov/ip-kamery/dlya-vnutrenney-ustanovki/vc-8241-2-8-12-ir.htmlможете перейти и посмотреть как работает все это. Да и кстати, так же реализовано и "twitter:image:src" 
*

ViktorMah

  • Захожу иногда
  • 253
  • 30 / 0
Re: Open Graph metadata
« Ответ #15 : 31.03.2015, 09:49:07 »
я вот думаю, а что мешает разместить сей код прямо в шаблоне карточки товара? как это делается для разметки schema.org
что позволит прямо из объекта подхватывать картинки
Код: html4strict
<meta property="og:title" content="Heidi Klum Парфюмерная серия - Компания LR Украина "/>
<meta property="og:type" content="website"/>
<meta property="og:url" content="http://lr-company.com.ua/katalog/heidi-klum/heidi-klum-parfyumernaya-seriya"/>
<meta property="og:image" content="http://lr-company.com.ua/" />
<meta property="og:description" content="Heidi Klum Парфюмерная серия" />
<meta property="og:site_name" content="Компания LR Украина " />
<meta property="og:locale" content="ru_RU"/>
« Последнее редактирование: 31.03.2015, 22:01:18 от ViktorMah »
*

EGGroup_CCTV

  • Новичок
  • 5
  • 2 / 0
Re: Open Graph metadata
« Ответ #16 : 31.03.2015, 10:56:31 »
Что бы более менее это все автоматизировать я сделал к примеру так: добавил в файл http://ваш сайт.ru/libraries/joomla/document/html/renderer/head.php
Код
$buffer .= $tab . '<meta property="og:description" content="' . htmlspecialchars($documentDescription). '" />' . $lnEnd;
$buffer .= $tab . '<meta property="og:title" content="' . htmlspecialchars($document->getTitle(), ENT_COMPAT, 'UTF-8'). '"/>' . $lnEnd;
$buffer .= $tab . '<meta property="og:url" content="' . $document->getBase(). '" />' . $lnEnd;
$buffer .= $tab . '<meta property="og:site_name" content="EGGoup CCTV" />' . $lnEnd;
$buffer .= $tab . '<meta property="og:type" content="website" />' . $lnEnd;

в принципе этого достаточно, а что бы с картинкой неразберихи не было нужно плагин дополнительно установить и наступит счастье))))
*

alex_volkhov

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Open Graph metadata
« Ответ #17 : 25.06.2015, 12:24:51 »
в принципе этого достаточно, а что бы с картинкой неразберихи не было нужно плагин дополнительно установить и наступит счастье))))
А какой именно плагин еще надо установить? Есть ли вообще что-то чтобы настроить всю микроразметку, Open Graph и т.п. для Joomla и VirtueMart?
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Re: Open Graph metadata
« Ответ #18 : 10.07.2015, 07:34:40 »
А какой именно плагин еще надо установить? Есть ли вообще что-то чтобы настроить всю микроразметку, Open Graph и т.п. для Joomla и VirtueMart?
С такими вопросами обращайтесь в раздел VirtueMart. Данный раздел относится к JoomShopping
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

Modis

  • Захожу иногда
  • 153
  • 0 / 0
Re: Open Graph metadata
« Ответ #19 : 04.11.2019, 12:06:20 »
Если кто зайдет в эту тему, как и я, то мне помог плагин Phoca Open Graph System Plugin
*

darkghost

  • Живу я здесь
  • 2212
  • 97 / 0
Re: Open Graph metadata
« Ответ #20 : 22.01.2020, 19:08:49 »
Что бы более менее это все автоматизировать я сделал к примеру так: добавил в файл http://ваш сайт.ru/libraries/joomla/document/html/renderer/head.php
Код
$buffer .= $tab . '<meta property="og:description" content="' . htmlspecialchars($documentDescription). '" />' . $lnEnd;
......

в принципе этого достаточно, а что бы с картинкой неразберихи не было нужно плагин дополнительно установить и наступит счастье))))
вот как-то так сделал, только некий аналогичный код добавил напрямую в шаблон и ...
На чистом сайте - работает, только вот на ЖШ выводит и вписаное мной ОпГ и ОпГ от ЖШ.
Можно ли установить "некое условие", чтобы если страница ЖШ - так не выводить вписаное мной ОпГ ?

Если кто зайдет в эту тему, как и я, то мне помог плагин Phoca Open Graph System Plugin

и если советуете плагин, он работает для всего сайта или только для ЖШ или на страницах без ЖШ ?
*

Cedars

  • Давно я тут
  • 585
  • 31 / 0
Re: Open Graph metadata
« Ответ #21 : 23.01.2020, 05:20:07 »
он работает для всего сайта или только для ЖШ или на страницах без ЖШ ?


Только для com_content компонента Joomla...
*

darkghost

  • Живу я здесь
  • 2212
  • 97 / 0
Re: Open Graph metadata
« Ответ #22 : 23.01.2020, 21:48:28 »

Только для com_content компонента Joomla...

Это получается, что плагин работает только для Жуумла
Есть ли подробная информация о плагине, его настройке и тд? Он автоматом "отключается" на ЖШ?
*

Cedars

  • Давно я тут
  • 585
  • 31 / 0
Re: Open Graph metadata
« Ответ #23 : 24.01.2020, 04:42:14 »
Он автоматом "отключается" на ЖШ?

он не отключается.. Он берет на выдачу из настроенных в его админке полей значения... если какое поле отсутствует - то берет из значения по умолчанию..
*

darkghost

  • Живу я здесь
  • 2212
  • 97 / 0
Re: Open Graph metadata
« Ответ #24 : 24.01.2020, 22:52:06 »
он не отключается.. Он берет на выдачу из настроенных в его админке полей значения... если какое поле отсутствует - то берет из значения по умолчанию..
Если у меня в ЖШ уже есть Open Graph то он просто будет дублироваться (ОпГ плагина + ОпГ ЖШ) иль что?
*

Cedars

  • Давно я тут
  • 585
  • 31 / 0
Re: Open Graph metadata
« Ответ #25 : 25.01.2020, 05:08:59 »
уже есть Open Graph то он просто будет дублироваться (ОпГ плагина + ОпГ ЖШ) иль что?
OpenGraph просто вставляет тэги микроразметки в head-секцию.. по логике таких тэгов туда можно хоть дюжину воткнуть... учитываться все равно будет или первый или последний (я не проверял в какой последовательности они работают)

А так - можно посмотреть по вот этому сервису https://smo.knowem.com/
*

tigra-uki

  • Давно я тут
  • 559
  • 11 / 0
  • Joom'лiстка
Re: Open Graph metadata
« Ответ #26 : 17.08.2020, 17:37:51 »
Phoca Open Graph System Plugin
благодарю за полезную информацию, Modis!
то, что нужно!
Слишком сконцентрированное внимание необходимо разбавлять действием.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться