Source of file FbInstantArticlesTransformer.php
Size: 1,583 Bytes - Last Modified: 2021-12-24T06:48:00+00:00
/var/www/docs.ssmods.com/process/src/code/FbInstantArticlesTransformer.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 | <?php class FbInstantArticlesTransformer { /** * @param $content * * @return mixed */ public function getTransformContent($content) { if (!$content) { return false; } \Logger::configure( [ 'rootLogger' => [ 'appenders' => ['facebook-instantarticles-transformer'], ], 'appenders' => [ 'facebook-instantarticles-transformer' => [ 'class' => 'LoggerAppenderConsole', 'threshold' => 'INFO', 'layout' => [ 'class' => 'LoggerLayoutSimple', ], ], ], ] ); $instantArticle = \Facebook\InstantArticles\Elements\InstantArticle::create(); $transformer = new \Facebook\InstantArticles\Transformer\Transformer(); // Load the rules from a file $rules = file_get_contents('rules/transformer-rules.json', true); $transformer->loadRules($rules); libxml_use_internal_errors(true); $document = new DOMDocument(); $document->preserveWhiteSpace = true; $document->loadHTML(mb_convert_encoding($content, 'HTML-ENTITIES', 'UTF-8')); libxml_use_internal_errors(false); $transformer->transform($instantArticle, $document); $result = $instantArticle->render('', true)."\n"; // $warnings = $transformer->getWarnings(); return $result; } } |