Quantcast
Viewing all articles
Browse latest Browse all 3

add RSS feed dynamically using php

I have a set of articles in database I want to add their content to a file located in my project named rss.xml using the xml format.This is the xml file from https://developers.facebook.com/docs/instant-articles/publishing/setup-rss-feed.

<rss version="2.0"xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>News Publisher</title><link>http://www.example.com/</link><description>      Read our awesome news, every day.</description><language>en-us</language><lastBuildDate>2014-12-11T04:44:16Z</lastBuildDate><item><title>This is an Instant Article</title><link>http://example.com/article.html</link><guid>2fd4e1c67a2d28fced849ee1bb76e7391b93eb12</guid><pubDate>2014-12-11T04:44:16Z</pubDate><author>Mr. Author</author><description>This is my first Instant Article. How awesome is this?</description><content:encoded><!doctype html><html lang="en" prefix="op: http://media.facebook.com/op#"><head><meta charset="utf-8"><link rel="canonical" href="http://example.com/article.html"><meta property="op:markup_version" content="v1.0"></head><body><article><header><!— Article header goes here --></header><!— Article body goes here --><footer><!— Article footer goes here --></footer></article></body></html></content:encoded></item></channel></rss>

This is how far I got in my php:

$crud = new ArticleController();$file = 'rss.xml'; //open the file$xml = simplexml_load_file($file);$channel = $xml->channel; //get channel to add item to$list=$crud->getAll();  //Returns all articles in database$item = $channel->addChild('item');$item->addChild('title', 'a gallery');$item->addChild('pubDate', '12/12/2017');$item->addChild('description', 'something');$content = $item->addChild('content:encoded');$html = $content->addChild('html');$xml->asXML($file); //write to file

I'm not going far since my code is returning already a lot of warnings and errors such :

Warning: simplexml_load_file(): rss.xml:25: parser error : Opening and ending tag mismatch: meta line 24 and head in file.php on line 153Fatal error: Call to a member function children() on a non-object in /var/www/html/pfe2017/controller/ArticleController.php on line 156

Can anyone please help explaining how to accomplish the desired outcome with providing examples?


Viewing all articles
Browse latest Browse all 3

Trending Articles