vendor/christianbarkowsky/rel-canonical/modules/ModuleNewsReaderRelCannonical.php line 47

Open in your IDE?
  1. <?php
  2. /**
  3.  * Rel Canonical
  4.  *
  5.  * @copyright Christian Barkowsky 2013-2022
  6.  * @package   contao-rel-canonical
  7.  * @author    Christian Barkowsky <https://plenta.io>
  8.  * @license   LGPL
  9.  */
  10. namespace Barkowsky\RelCanonical;
  11. use Contao\Input;
  12. use Contao\System;
  13. use Contao\NewsModel;
  14. use Contao\ModuleNewsReader;
  15. class ModuleNewsReaderRelCannonical extends ModuleNewsReader
  16. {
  17.     public function generate()
  18.     {
  19.         return parent::generate();
  20.     }
  21.     protected function compile()
  22.     {
  23.         global $objPage;
  24.         $objNewsItem NewsModel::findPublishedByParentAndIdOrAlias(Input::get('items'), $this->news_archives);
  25.         
  26.         if ($objNewsItem === null) {
  27.             parent::compile();
  28.         }
  29.         $objPage->canonicalType $objNewsItem->canonicalType;
  30.         $objPage->canonicalJumpTo $objNewsItem->canonicalJumpTo;
  31.         $objPage->canonicalWebsite $objNewsItem->canonicalWebsite;
  32.         if ($objNewsItem->canonicalType == 'self') {
  33.             $objPage->canonicalType 'external';
  34.             $request System::getContainer()->get('request_stack')->getCurrentRequest();
  35.             $objPage->canonicalWebsite $request->getSchemeAndHttpHost().$request->getBaseUrl().$request->getPathInfo();
  36.         }
  37.         parent::compile();
  38.     }
  39. }