3dAggregator è un componente per joomla che serve per importare in automatico gli elementi di un feed RSS fra gli articoli del proprio sito web. Molti feed rss però non contengono l’intero articolo ma soltanto una parte di esso. Attraverso le modifiche che andremo ad effettuare sarà possibile inserire e personalizzare l’articolo importato attraverso i feed.

L’obbiettivo della modificare è prendere il contenuto dell’articolo originale del feed e attraverso un semplice parser html importare l’intero articolo all’interno del database di joomla! Andremo solo ad aggiungere codice quindi non eliminate niente!!

Una volta installato 3dAggregator utilizziamo un FTP Client (per esempio FileZilla) per scaricare e modificare il file che andremo a modificare. Il file è “controller.php” ed è contenuto nella cartella “administrator/components/com_3daggregator”.
Apriamo il file con un’editor di testo adeguato e andiamo a inserire il codice alla riga 539, prima della condizione “if (intval($count) == 0)” .

Ed ecco il codice che andremo ad inserire:

if (!empty($origLink) && strpos($origLink,’SitoWebDaDoveSiPrendeL’Articolo‘)){ //Traduzione: Se trovi il feed di quel sito lì allora fai come ti dico io
$my_content = file_get_contents($origLink); //prende il contenuto HTML del link originale all’articolo
$da=’ElementoUnivocoPartenza‘;
$a=’ElementoUnivocoArrivo‘;
$da_pos=strpos($my_content,$da);
$a_pos=strpos($my_content,$a);
$result =  substr($my_content,($da_pos+strlen($da1)),$a_pos-($da_pos+strlen($da1)));  //prendo quello che è scritto dall’elemento $da all’elemento $a. Sommate alla posizione la lunghezza della stringa $a o $da dipendentemente dal fatto che volete inserire quest’ultima nell’articolo o meno. Aggiungete o sottraete altre cifre a seconda delle necessità.
$result=mb_convert_encoding($result, ‘UTF-8’,mb_detect_encoding($result, ‘UTF-8, ISO-8859-1’, true)); //Riga necessaria se la pagina codificata è in un formato diverso da UTF-8, altrimenti omettetela.
$content[‘introtext’] =  $result;
$content[‘metadesc’]=substr($result,0,300); //per aggiungere i primi 300 caratteri nella metadescrizione
$content[‘metadesc’]=$item_description; //se invece volete inserire nella metadescrizione quello che era scritto nel feed
}
Gli elementi Univoci dovete trovarli guardando la sorgente HTML dell’articolo originale che andate a prelevare. Questi elementi dovranno essere comuni a tutti gli articoli presenti nel sito. Potete prendere anche più caratteri senza un senso logico per assicurarvi che sia una stringa univoca (per esempio: ns-serif;”><div>).
Inoltre potete modificare $result per personalizzare l’articolo.
Infine sostituiamo con il client FTP il file modificato con il controller.php presente sul sito web.
Questa guida vi risparmierà un bel pò di tempo!
Se avete domande chiedete pure attraverso i commenti!! 😉
Be Sociable, Share!