Skip to content

Instantly share code, notes, and snippets.

@Jamesking56
Last active April 19, 2021 12:05
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 6 You must be signed in to fork a gist
  • Save Jamesking56/4773838 to your computer and use it in GitHub Desktop.
Save Jamesking56/4773838 to your computer and use it in GitHub Desktop.
Read Wordpress Export XML to PHP
<?php
/**
* WordPress class - Manages the WordPress XML file and gets all data from that.
*/
class Wordpress
{
public static $wpXML;
function __construct($wpXML)
{
$this->wpXML = $wpXML;
}
public function getPosts()
{
$xml = simplexml_load_file($this->wpXML);
$posts = array();
foreach($xml->channel->item as $item)
{
$categories = array();
foreach($item->category as $category)
{
//echo $category['domain'];
if($category['nicename'] != "uncategorized" && $category['domain'] == "category")
{
//echo 'Yep';
$categories[] = $category['nicename'];
}
}
$content = $item->children('http://purl.org/rss/1.0/modules/content/');
$posts[] = array(
"title"=>$item->title,
"content"=>$content->encoded,
"pubDate"=>$item->pubDate,
"categories"=>implode(",", $categories),
"slug"=>str_replace("/", "", str_replace("http://blog.jamesking56.co.uk/", "", $item->guid))
);
}
return $posts;
}
}
?>
@stuartcusackie
Copy link

Anybody else getting these errors?

simplexml_load_file(): I/O warning : failed to load external entity "<?xml version="1.0" encoding="UTF-8" ?>

@Jamesking56
Copy link
Author

Anybody else getting these errors?

simplexml_load_file(): I/O warning : failed to load external entity "<?xml version="1.0" encoding="UTF-8" ?>

See this StackOverflow answer: https://stackoverflow.com/a/21661663/941446

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment