Ben bezig met samenvoegen van meerdere RSS feeds op de website, tot dusver al een heel eind gekomen, maar nu ben ik loop ik vast bij de category in de feed.
Ook al bevat een item meerdere categories, krijg ik uiteindelijk enkel de eerste category in beeld met onderstaande code.
Klik hierom het resultaat te zien.

-- opgelost --
welke category toont hij?

De eerste? De laatste?

---
Overigens geweldig dat de MSX nog leeft.
Moet de mijne eens opsporen. Zal wel onder het stof zitten...
Tot dusver, wordt de eerste categorie enkel getoond uitgaand van de RSS feeds.
De feed urls zitten in script bijgesloten.

Volgens mij moet er een extra array bijgebouwd worden, voor de categorien specifiek, maar dan nog blijft de vraag hoe is dit in eind resultaat te embedden met meerdere feeds. Ben benieuwd naar de mogelijke oplossingen.

[size=xsmall]Toevoeging op 25/07/2017 15:31:54:[/size]

Heb de oplossing al gevonden:
<?php
foreach ($urlArray as $url) {
    $rss->load($url['url'], LIBXML_NOCDATA);

    foreach ($rss->getElementsByTagName('item') as $node) {
		$categorie = "";
		$categories = $node->getElementsByTagName('category');
		foreach ($categories as $category) {
        $categorie = "".$categorie." | ".$category->nodeValue."";
		
}


        $item = array ( 
            'site'  => $url['name'],
			'site_source'  => $url['source'],
            'title' => $node->getElementsByTagName('title')->item(0)->nodeValue,
            'desc'  => $node->getElementsByTagName('description')->item(0)->nodeValue,
            'link'  => $node->getElementsByTagName('link')->item(0)->nodeValue,
            'author'  => $node->getElementsByTagName('creator')->item(0)->nodeValue,
			'category' => $categorie,
			'date'  => $node->getElementsByTagName('pubDate')->item(0)->nodeValue,
            );

        array_push($feed, $item);

    }
}?>



moet enkel nog scheidingsteken | nog opruimen, maar het resultaat is iig bereikt.
Zet meteen ook alle code ff recht dan :).

En wat refactoring wellicht. ($item = array(...) + array_push($feed, $item) = $feed[] = array(...))

En misschien wat annotatie.

Reageren