Temat zmieniłem.

Wysłałem ci linka do dokumentacji: https://ogp.me/

W swoich projektach umieszczam tagi OG w dwóch miejscach: w indeksie szablonu z warunkiem by wyświetlał się na wszystkich stronach poza artykułami i w widoku artykułu.
Poza tym podpinam do tagów różne dane:

Kod PHP:
include_once(JPATH_ROOT.'/templates/<moj-szablon>/truncate.php');

$totruncate strip_tags($this->item->introtext);

$og_type 'article';
$og_url JURI::current();
if(
$images->image_intro) {
    
$og_obrazek $images->image_intro;
} else {
    
$og_obrazek 'templates/<moj-szablon>/images/default-background-cover.jpg';
}
$og_image =  JRoute::_(JURI::root(false) . $og_obrazek);
$og_desc limit_text($totruncate,400);
$og_title $this->item->title;

$app =JFactory::getApplication();
$og_sitename $app->getCfg('sitename');

$doc JFactory::getDocument();
$doc->addCustomTag('<meta property="og:type" content="article"/>');
$doc->addCustomTag('<meta property="og:url" content="'.$og_url.'"/>');
$doc->addCustomTag('<meta property="og:site_name" content="'.$og_sitename.'"/>');
$doc->addCustomTag('<meta property="og:image" content="'.$og_image.'"/>');
$doc->addCustomTag('<meta property="og:description" content="'.$og_desc.'"/>');
$doc->addCustomTag('<meta property="og:title" content="'.$og_title.'"/>');
$doc->addCustomTag('<meta property="fb:app_id" content="<moj-fb-id>"/>');
$doc->addCustomTag('<meta property="og:logo" content="'.JURI::root().'templates/'.$this->template.'/images/logo.png'.'" size="320x320" />'); 
Ma to tę zaletę, ze raz wdrożone gra samo... minus, że trzeba ogarniać php, szablony i widoki Joomli.

Zawsze możesz sobie coś doinstalować: https://extensions.joomla.org/tags/open-graph/