Used with events: "spress.before_render_blocks", "spress.after_render_blocks", "spress.before_render_page", "spress.after_render_page".
Author: Victor Puertas (vpgugr@gmail.com)
Inheritance: extends ContentEvent
 public function onAfterRenderPage(RenderEvent $event)
 {
     $id = $event->getId();
     if ($this->isExcluded($id)) {
         return;
     }
     $this->io->write('Beautifying HTML: ' . $event->getId());
     $event->setContent(\Mihaeu\HtmlFormatter::format($event->getContent()));
 }
 public function onAfterRenderPage(RenderEvent $event)
 {
     $id = $event->getId();
     if (in_array($id, $this->html_compress_exclude) || preg_match('/(.*)?\\.(jpe?g|png|gif|ico|svg|psd|tiff|webm|mov|avi|mkv|mp4)$/i', $id)) {
         return;
     }
     $this->io->write('Minify/Compress html: ' . $event->getId());
     $event->setContent(\WyriHaximus\HtmlCompress\Factory::construct()->compress($event->getContent()));
 }
 public function onAfterRender(RenderEvent $event)
 {
     // Google Analytics Content.
     $ga_code = "\n      <!-- Google Analytics Tracker -->\n      <script>\n        (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){\n        (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),\n        m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)\n        })(window,document,'script','//www.google-analytics.com/analytics.js','ga');\n\n        ga('create', 'GA_ID', 'GA_SITE');\n        ga('send', 'pageview');\n      </script>\n      <!-- End of Google Analytics Tracker -->";
     // Validate if Google Analytics settigns are available.
     if (isset($this->googleAnalyticsID) && isset($this->googleAnalyticsSite)) {
         // Get content
         $content = $event->getContent();
         // Set google analytics variables
         $ga_code = str_replace('GA_ID', $this->googleAnalyticsID, $ga_code);
         $ga_code = str_replace('GA_SITE', $this->googleAnalyticsSite, $ga_code);
         // Append Google Analytics code to end of page
         $content = str_replace('</body>', $ga_code . "\n </body> ", $content);
         $event->setContent($content);
     }
 }
Example #4
0
 /**
  * @expectedException \RuntimeException
  */
 public function testUrlWithoutStartWithSlash()
 {
     $item = new Item('Test of content', 'index.html', ['title' => 'My posts']);
     $event = new RenderEvent($item, Item::SNAPSHOT_RAW, Item::SNAPSHOT_PATH_RELATIVE);
     $event->setRelativeUrl('index.html');
 }