You are here

public function InstantArticleContentEntityNormalizer::analyticsFromSettings in Facebook Instant Articles 3.x

Same name and namespace in other branches
  1. 8.2 src/Normalizer/InstantArticleContentEntityNormalizer.php \Drupal\fb_instant_articles\Normalizer\InstantArticleContentEntityNormalizer::analyticsFromSettings()

Add analytics settings if any to the instant article normalize result.

Parameters

\Facebook\InstantArticles\Elements\InstantArticle $article: Instant article object we are normalizing to.

Return value

\Facebook\InstantArticles\Elements\InstantArticle Modified instant article.

1 call to InstantArticleContentEntityNormalizer::analyticsFromSettings()
InstantArticleContentEntityNormalizer::normalize in src/Normalizer/InstantArticleContentEntityNormalizer.php

File

src/Normalizer/InstantArticleContentEntityNormalizer.php, line 273

Class

InstantArticleContentEntityNormalizer
Facebook Instant Articles content entity normalizer.

Namespace

Drupal\fb_instant_articles\Normalizer

Code

public function analyticsFromSettings(InstantArticle $article) {

  // Add analytics from settings.
  if ($analytics_embed_code = $this->config
    ->get('analytics.embed_code')) {
    $document = new \DOMDocument();
    $fragment = $document
      ->createDocumentFragment();
    $valid_html = @$fragment
      ->appendXML($analytics_embed_code);
    if ($valid_html) {
      $article
        ->addChild(Analytics::create()
        ->withHTML($fragment));
    }
  }
  return $article;
}