diff --git a/e107_plugins/social/e_event.php b/e107_plugins/social/e_event.php index 3d6b950ad..2a82db02d 100644 --- a/e107_plugins/social/e_event.php +++ b/e107_plugins/social/e_event.php @@ -26,10 +26,45 @@ class social_event function config() { + $event = array(); + + $event[] = array( + 'name' => "system_meta_pre", + 'function' => "ogg_image_add", + ); - + return $event; + + } + + /** + * Callback function to add og:image if there is no any + */ + function ogg_image_add() + { + $ogImage = e107::pref('social','og_image', false); + + if(e_ADMIN_AREA !==true) { + $ogimgexist = FALSE; + + // check if we have og:image defined + $response = e107::getSingleton('eResponse'); + $data = $response->getMeta(); + foreach($data as $m) { + if($m['name'] == 'og:image') { + $ogimgexist = TRUE; + } + } + + if(!empty($ogImage) && !$ogimgexist) { + e107::meta('og:image',e107::getParser()->thumbUrl($ogImage,'w=500',false,true)); + unset($ogImage); + } + + } + } } //end class -?> \ No newline at end of file +?>