Skip to content
Snippets Groups Projects
Commit e538f3ec authored by Patrick Barroca's avatar Patrick Barroca :grin:
Browse files

rel #20851 : Add Article image in meta og:image for facebook share.

parent 8e41c3fe
Branches
Tags
3 merge requests!780Master,!755Stable,!754Hotline#20851 facebook share output html
ticket 20851: Améliore le contenu partagé à facebook des articles.
......@@ -917,6 +917,18 @@ class Class_Article extends Storm_Model_Abstract {
return '';
}
public function getFirstImageAbsoluteURL() {
if(!$url = $this->getFirstImageURL())
return '';
if (filter_var($url, FILTER_VALIDATE_URL) === FALSE)
$url = Class_Url::absolute($url);
return $url;
}
/**
* @param int $value
* @return Class_Article
......
......@@ -743,6 +743,7 @@ class Class_ScriptLoader {
public function addCmsMeta($article) {
$this->_metas[] = '<meta property="og:title" content="' . $article->getTitre() . '" />';
$this->_metas[] = '<meta property="og:image" content="' . $article->getFirstImageAbsoluteURL() . '" />';
$this->_metas[] = '<meta property="og:description" content="' . strip_tags($article->getSummary()) . '" />';
return $this;
}
......
......@@ -33,12 +33,11 @@ class CmsControllerRssNoProfileTest extends AbstractControllerTestCase {
$this->dispatch('cms/rss');
}
/** @test */
public function titleShouldBeFluxIndisponible() {
$this->assertXPathContentContains('//channel/title', 'Flux indisponible');
}
}
......@@ -762,7 +761,7 @@ abstract class CmsControllerWithFeteDeLaFriteTestCase extends AbstractController
$article= $this->fixture('Class_Article',
['id' =>224,
'titre' => 'La fête de la frite',
'contenu' => '<div>Une fête appétissante</div>',
'contenu' => '<div><img src="userfiles/image/foo.jpg" /><p>Une fête appétissante</p></div>',
'events_debut' => '2011-09-03 12:00',
'events_fin' => '2011-10-05 16:00',
'tags' => 'Tout public;Concert',
......@@ -805,6 +804,12 @@ class CmsControllerViewNoticeMetasTest extends CmsControllerWithFeteDeLaFriteTes
$this->assertXPath('//meta[@property="og:description"][@content="Une fête appétissante"]');
}
/** @test */
public function pageShouldContainImageMeta() {
$this->assertXPath('//meta[@property="og:image"][@content="' . ROOT_URL . BASE_URL . '/userfiles/image/foo.jpg"]');
}
}
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment