Skip to content
Snippets Groups Projects
Commit 7231ba4a authored by Fabian Galinski's avatar Fabian Galinski :pouting_cat:
Browse files

[TASK] Improvements of the og:image tags

parent 20422026
No related branches found
No related tags found
No related merge requests found
...@@ -72,24 +72,6 @@ abstract class AbstractController extends ActionController { ...@@ -72,24 +72,6 @@ abstract class AbstractController extends ActionController {
throw new RuntimeException(parent::errorAction()); throw new RuntimeException(parent::errorAction());
} }
/**
* Adds the og:image tag with the given image to the meta data.
*
* @param string $image
* @return void
*/
public function addOgImageMetaTag($image) {
/** @var $typoScriptController TypoScriptFrontendController */
$typoScriptController = $GLOBALS['TSFE'];
/** @var PageRenderer $pageRenderer */
$pageRenderer = $typoScriptController->getPageRenderer();
$pageRenderer->addHeaderDataRegex(
'<meta property="og:image" content=".*?"',
'<meta property="og:image" content="' . $image . '"'
);
}
/** /**
* Returns the meta data of the given news. * Returns the meta data of the given news.
* *
......
...@@ -26,6 +26,7 @@ namespace SGalinski\SgNews\Controller; ...@@ -26,6 +26,7 @@ namespace SGalinski\SgNews\Controller;
* This copyright notice MUST APPEAR in all copies of the script! * This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/ ***************************************************************/
use SGalinski\ProjectBase\Service\HeaderMetaDataService;
use SGalinski\SgNews\Domain\Model\Category; use SGalinski\SgNews\Domain\Model\Category;
use SGalinski\SgNews\Domain\Model\News; use SGalinski\SgNews\Domain\Model\News;
use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Core\Utility\GeneralUtility;
...@@ -94,6 +95,12 @@ class ListByCategoryController extends AbstractController { ...@@ -94,6 +95,12 @@ class ListByCategoryController extends AbstractController {
$newsMetaData[] = $data; $newsMetaData[] = $data;
} }
if ($highlightedNewsMetaData['image']) {
HeaderMetaDataService::addOgImageToHeader($highlightedNewsMetaData['image']);
} elseif ($highlightedNewsMetaData['teaserImage']) {
HeaderMetaDataService::addOgImageToHeader($highlightedNewsMetaData['teaserImage']);
}
$this->view->assign('numberOfPages', $numberOfPages); $this->view->assign('numberOfPages', $numberOfPages);
$this->view->assign('newsMetaData', $newsMetaData); $this->view->assign('newsMetaData', $newsMetaData);
$this->view->assign('category', $selectedCategory); $this->view->assign('category', $selectedCategory);
...@@ -101,4 +108,4 @@ class ListByCategoryController extends AbstractController { ...@@ -101,4 +108,4 @@ class ListByCategoryController extends AbstractController {
} }
} }
?> ?>
\ No newline at end of file
...@@ -26,6 +26,7 @@ namespace SGalinski\SgNews\Controller; ...@@ -26,6 +26,7 @@ namespace SGalinski\SgNews\Controller;
* This copyright notice MUST APPEAR in all copies of the script! * This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/ ***************************************************************/
use SGalinski\ProjectBase\Service\HeaderMetaDataService;
use SGalinski\SgNews\Domain\Model\Category; use SGalinski\SgNews\Domain\Model\Category;
use SGalinski\SgNews\Domain\Model\News; use SGalinski\SgNews\Domain\Model\News;
use TYPO3\CMS\Extbase\Persistence\Generic\Query; use TYPO3\CMS\Extbase\Persistence\Generic\Query;
...@@ -85,9 +86,15 @@ class OverviewController extends AbstractController { ...@@ -85,9 +86,15 @@ class OverviewController extends AbstractController {
$highlightedNewsMetaData = $this->getMetaDataForNews($highlightedNews, $category); $highlightedNewsMetaData = $this->getMetaDataForNews($highlightedNews, $category);
} }
if ($highlightedNewsMetaData['image']) {
HeaderMetaDataService::addOgImageToHeader($highlightedNewsMetaData['image']);
} elseif ($highlightedNewsMetaData['teaserImage']) {
HeaderMetaDataService::addOgImageToHeader($highlightedNewsMetaData['teaserImage']);
}
$this->view->assign('newsByCategory', $newsByCategory); $this->view->assign('newsByCategory', $newsByCategory);
$this->view->assign('highlightedNewsMetaData', $highlightedNewsMetaData); $this->view->assign('highlightedNewsMetaData', $highlightedNewsMetaData);
} }
} }
?> ?>
\ No newline at end of file
...@@ -26,6 +26,7 @@ namespace SGalinski\SgNews\Controller; ...@@ -26,6 +26,7 @@ namespace SGalinski\SgNews\Controller;
* This copyright notice MUST APPEAR in all copies of the script! * This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/ ***************************************************************/
use SGalinski\ProjectBase\Service\HeaderMetaDataService;
use SGalinski\SgNews\Domain\Model\Category; use SGalinski\SgNews\Domain\Model\Category;
use SGalinski\SgNews\Domain\Model\News; use SGalinski\SgNews\Domain\Model\News;
use TYPO3\CMS\Core\Page\PageRenderer; use TYPO3\CMS\Core\Page\PageRenderer;
...@@ -94,13 +95,9 @@ class SingleViewController extends AbstractController { ...@@ -94,13 +95,9 @@ class SingleViewController extends AbstractController {
$newsAuthor = $news->getAuthorFrontendUser(); $newsAuthor = $news->getAuthorFrontendUser();
$newsMetaData = $this->getMetaDataForNews($news, $newsCategory); $newsMetaData = $this->getMetaDataForNews($news, $newsCategory);
if ($newsMetaData['image']) { if ($newsMetaData['image']) {
$pageRenderer->addHeaderData( HeaderMetaDataService::addOgImageToHeader($newsMetaData['image']);
'<meta property="og:image" content="' . $newsMetaData['image'] . '" />'
);
} elseif ($newsMetaData['teaserImage']) { } elseif ($newsMetaData['teaserImage']) {
$pageRenderer->addHeaderData( HeaderMetaDataService::addOgImageToHeader($newsMetaData['teaserImage']);
'<meta property="og:image" content="' . $newsMetaData['teaserImage'] . '" />'
);
} }
if ($this->settings['facebookPublisher'] !== '') { if ($this->settings['facebookPublisher'] !== '') {
...@@ -121,4 +118,4 @@ class SingleViewController extends AbstractController { ...@@ -121,4 +118,4 @@ class SingleViewController extends AbstractController {
} }
} }
?> ?>
\ No newline at end of file
...@@ -25,7 +25,8 @@ $EM_CONF[$_EXTKEY] = array( ...@@ -25,7 +25,8 @@ $EM_CONF[$_EXTKEY] = array(
'typo3' => '6.2.0-6.2.99', 'typo3' => '6.2.0-6.2.99',
'php' => '5.4.0-5.6.99', 'php' => '5.4.0-5.6.99',
'pw_comments' => '3.0.0-3.9.99', 'pw_comments' => '3.0.0-3.9.99',
'rx_shariff' => '2.1.0-' 'rx_shariff' => '2.1.0-',
'project_base' => '1.0.0-'
), ),
'conflicts' => array(), 'conflicts' => array(),
'suggests' => array(), 'suggests' => array(),
...@@ -34,4 +35,4 @@ $EM_CONF[$_EXTKEY] = array( ...@@ -34,4 +35,4 @@ $EM_CONF[$_EXTKEY] = array(
'_md5_values_when_last_written' => '', '_md5_values_when_last_written' => '',
); );
?> ?>
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment