De joomla component beschreven op deze site bied een komplete oplossing voor het integreren van affilaite feeds met een joomla site. Het gaat hier om functionaliteit aan de achterkant: beheer van de feeds en de automatische import en de voorkant weergave van de geimporteerde data.

Een komplete oplossing als voor joomla voor andere CMS systemen wordt hier niet geboden. Ze zijn er wel. Onderaan de pagina staan een aantal voorbeelden. Onderstaand een aantal oplossingen om deze parser te gebruiken met andere CMS systemen.

Importeren van RSS feeds.

Alle grote CMS systemen beschikken over een extensie ( module, plugin ) die het mogelijk maakt RSS feeds te importeren als content. Gebaseerd op de parser die ook voor de joomla extensie gebruikt wordt is er een standalone datafeeds naar RSS converter. Hier is geen admin panel bij, de feeds worden geconfigureerd in php of xml bestanden. De uitleg op deze site m.b.t. configuratie en callback functies geldt ook voor de stand alone versie. Als je wel een admin wilt, kun je een joomla site neerzetten, in de feed configuratie kun je de instellingen van een feed exporten als xml, die je weer voor de datafeeds2rss tool kunt gebruiken

RSS Importers

  • Drupal : feedapi

 

Tonen van RSS feeds

Een andere optie is het weergeven van RSS feeds naast (bestaande) content. Stel je hebt een (bestaande) website met veel content waar je advertenties op basis van affiliatefeeds aan wilt toevoegen. Hiervoor bouw je naast je bestaande site een nieuwe (joomla) website die gebruikt gaat worden als leverancier van rss feeds. Voor alle grote CMS systemen is er wel een extensie om RSS feeds te tonen. In tegenstelling tot de vorige oplossing importeer je hier de data niet in het CMS van je hoofd website maar toon je slechts een deel van de affiliate site.

Een voorbeeld hiervan is te vinden op deze demo-site op basis van mediawiki: Op de pagina over boormachines is een feed van deze huis en tuin site toegevoegd. bij de rss feeds van com_datafeeds kun je een query meegeven

Het mooiste is dan een RSS module die feedds laat zien op basis van de tags op de pagina.

Importeren als content

Als je de datafeeds als echte content importeert in je CMS (als content,article, post, page,node etc) zijn er geen beperkingen in het gebruik van de gemaakt pagina, de pagina is immers een standaard onderdeel van je CMS en je kunt er alle extensies op los laten.

Er zijn wel wat potentiele problemen: CMS systemen zijn er niet op ingericht om duizenden artikelen met bijbehorende tags ( categorien, taxanomie rubrieken etc) te beheren, al ze het al kunnen joomla kent bijvoorbeeld alleen een eenvoudige rubricering.  Wordpress bijvoorbeeld is prima in staat om duizenden artikelen te beheren, maar de admin loopt hopeloos vast als je te wild gaat met de rubrieken en tags voor de artikelen. Een landen site met landen-regio's- steden heeft duizenden tags en dat gaat fout.

Voor kleine feeds kan het een oplossing zijn, de parser die bij de joomla component hoort is ook voorzien in het toevoegen van extra/andere import functie. Ook is het datafeeds2rss te verbouwen. Bij de eerste verloopt de import dan via een joomla site, bij de tweede is het een zelfstandige toepassing.

Er is een experimentele versie van een wordpress importer. Deze gaat in de komende tijd uitgewerkt worden en kan dan hier gedownload worden: vakantiehuizen demo, dagaanbiedingen demo

PHP includen

Een andere mogelijkheid is het importen van de data ( via joomla of standalone) en daarna een eigen stukje php code te includen in je content of in een sidebar widget. Bijvoorbeeld een widget die producten laat zijn op basis van tags in de artikelen.

wordpress

Andere systemen

standalone

Veel CSV import tools, als iemand ervaring ermee heeft hoor ik het graag.

The first version of the component addressed the dutch affiliate market, therefor most text strings are still in Dutch. The component has an Englsh language file but if your backend or frontend language is different you will see a lot of dutch text. To change  the text to English (and your own language) do the following:

  1. Copy the file language/en-GB/en-GB.com_datafeeds.ini into the directory of your own language xx-YY/xx-YY.com_datafeeds.ini on the server.
  2. Put the file in  administrator/language/xx-YY as well

To translate:

  1. Translate the strings in xx-YY/xx-YY.com_datafeeds.ini
  2. Send the translated file to This email address is being protected from spambots. You need JavaScript enabled to view it. :)

Setting the string in the administrator to English is in progress

 

Setting the front end strings

The strings and the currency sign used on the front end can/must be customised in the menu configuration. The picture below depicts the locations of the strings, on the front page and in the menu.

 

Character encodings are a major issue when dealing with datafeeds. Quite often feeds are incorrectly encoded, feeds are encoded twice, older versions of PHP do not support UTF8 (multi-byte) correctly, same for old versions of mysql. In mysql the settings of the collation is important, for joomla this should be set to utf8.

Many feeds have some kind of 'problems'. This pagee depicts some common issue's on solutions

Splitting Stuff

Many feeds have a complete tree in the 'category' instead of splitting their categories nicely for you. For example (from a tradedoubler CSV feed)

merchantcategoryname Donna > Scarpe > Derby

You can't assign this merchantcategoryname directly to Select1..Select3. The solution is using a callback function.

By default the callback function generic_cb is used. Instead of this function add and use a function splitting the category.

The joomla article url's show the article id, the category and the section. This leads to canonical issues whenever the section or category changes. Same problem when a section/category menu is added or a site switches from non-SEF to SEF url's.

 

The article canonical plugin will put a canonical link in the header of the document, pointing search engine's to the right location:

 

http://www.affiliatefeeds.nl/en/46-general/3060-quick-guide.html

 

<link href="http://www.affiliatefeeds.nl/en/47-datafeeds/3060-quick-guide.html" rel="canonical" />

 

Joomla 2.5

download

Joomla 1.5

download

Joomla 3.x has its own canonical system.

 

 

 

 

 

People over at joomlatune created a nice component to comment on articles and even better it allow to comment on anything using the simple API.


 

it's not a big issue to enable commenting on single item's but it is quite difficult to make it perfect:

 

jcomment assumes that all articles/items are unrelated, but in product feeds an item (product) might appear several times, for example the same hotel from different travel-agency's.

 

Often identical items/product have the same title, but different feeds might have different names for them. And on the other hand items with the same name might be very different.

 

The 'normal' mod_datemenu menus show a hierarchical structure of categories based on the settings of he component joomla menu

This layout shows just a single level, for example just 'menu level 3'. This layout can be usefull to show the list of feeds/merchants (See 'AANBIEDERS REIZEN'). Or a list of gender (voor wie)

Een veel voorkomend probleem in feeds zijn de verschillende schrijfwijzen, bijvoorbeeld in reizen en vakantie feeds worden landen en regio's op verschillende wijzen geschreven.  Neem bijvoorbeeld

 

'Vierwaldstaettersee' versus 'Vierwoudstedenmeer' of 'Saasdal' en 'Saasdal Noord'

 

Bovenstaande zijn twee voorbeelden van veel voorkomende problemen in de vakantie feeds, verschillende schrijfwijzen voor hetzelfde, of varianten van regio's. zoals twee regio's die elkaar overlapen en die je wellicht toch als 1 wilt presenteren. Onderstaande script geeft een illustratie hoe deze twee problemen op te lossen zijn.

 

De xml parser kan gebruikt worden zonder database, de gegevens worden dan per feed als bestand opgeslagen. Weergave is dan mogelijk per feed. ( demo )

 

Het toevoegen van feeds is dan handmatig puzzelwerk. onderstaand een tutorial aan de hand van de 2call feed van daisycon