vendor/numero2/contao-opengraph3/src/Resources/contao/classes/OpenGraphNews.php line 32

Open in your IDE?
  1. <?php
  2. /**
  3.  * Contao Open Source CMS
  4.  *
  5.  * Copyright (c) 2005-2021 Leo Feyer
  6.  *
  7.  * @package   Opengraph3
  8.  * @author    Benny Born <benny.born@numero2.de>
  9.  * @author    Michael Bösherz <michael.boesherz@numero2.de>
  10.  * @license   LGPL
  11.  * @copyright 2021 numero2 - Agentur für digitales Marketing GbR
  12.  */
  13. namespace numero2\OpenGraph3;
  14. use Contao\Config;
  15. use Contao\Input;
  16. use Contao\NewsModel;
  17. use Contao\StringUtil;
  18. class OpenGraphNews {
  19.     /**
  20.      * Appends OpenGraph data from news articles
  21.      *
  22.      * @param $objModule
  23.      */
  24.     public static function addModuleData$objModule ): void {
  25.         $newsArchives = [];
  26.         $newsArchives StringUtil::deserialize($objModule->news_archives);
  27.         $objArticle NULL;
  28.         $objArticle NewsModel::findPublishedByParentAndIdOrAlias(Input::get('items'), $newsArchives);
  29.         if( null !== $objArticle ) {
  30.             OpenGraph3::addProperty('og_type','article',$objArticle);
  31.             // add published time
  32.             if( $objArticle->time ) {
  33.                 $date = new \DateTime();
  34.                 $date->setTimestamp($objArticle->time);
  35.                 $date $date->format(Config::get('datimFormat'));
  36.                 OpenGraph3::addProperty('og_article_published_time',$date,$objArticle);
  37.             }
  38.             // add modified time
  39.             if( $objArticle->tstamp ) {
  40.                 $date = new \DateTime();
  41.                 $date->setTimestamp($objArticle->tstamp);
  42.                 $date $date->format(Config::get('datimFormat'));
  43.                 OpenGraph3::addProperty('og_article_modified_time',$date,$objArticle);
  44.             }
  45.             OpenGraph3::addTagsToPage$objArticle );
  46.         }
  47.     }
  48. }