Your IP : 216.73.216.240
<?php
/*
* @package Tech Fry Library
* @license https://www.gnu.org/licenses/gpl-3.0.en.html
*/
namespace TechFry\Library\View\Html;
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Uri\Uri;
class TfOg
{
public static function add_tags($data = array())
{
// $data - title, type, image, description
// type - website, article, product, video, book, profile
$data = (array) $data;
// Do not add open graph if image is not available
if (!isset($data['image']) || empty($data['image']))
{
return false;
}
$doc = Factory::getDocument();
$property = 'property';
$uri = Uri::getInstance();
// 1. Title
$doc->setMetaData('og:title', $data['title'], $property);
// 2. Type
if (!isset($data['type']) || empty($data['type']))
{
$data['type'] = 'article';
}
$doc->setMetaData('og:type', $data['type'], $property);
// 3. Image
$img = HTMLHelper::cleanImageURL($data['image']);
$image_size = filesize(JPATH_ROOT . '/' . $img->url);
if ($image_size > 0)
{
$doc->setMetaData('og:image', $uri->base() . $img->url, $property);
}
// 4. Url
$doc->setMetaData('og:url', $uri, $property);
// 5. Description
$description = HTMLHelper::_('string.truncate', strip_tags($data['description']), 300);
$doc->setMetaData('og:description', $description, $property);
return true;
}
}