I am new to drupal so please go easy on me :)

I am trying to import an rss feed from a wordpress site into nodes on my drupal site.
I have mapped the node processor as follow:
- Item GUID -> GUID as unique
- Title -> Title
- Published date - > Published Date
- Description -> Description

My initial import seems to work perfectly. However that is where it ends.
I haven't worried about setting up crons yet I am just using the manual import to try and recover new feed items - without success.

If I delete all of the created nodes and then do an import I will then get the RSS items back PLUS the new items.

Also... If I update an the wordpress RSS items the nodes will not update either - even if it is set to 'update existing nodes'

It is almost like the RSS is being cached?

Any suggestions would be appreciated.

Thanks
Karen

Comments

MegaChriz’s picture

Status: Active » Postponed (maintainer needs more info)

It looks like you configured your Feeds importer correctly. 'Update existing nodes' is exactly what you need if you want to update previously imported items. You also set one of the mapping targets as unique, which is also good.

By my knowlegde Feeds does not cache the retrieved RSS feed. I do not know much about Wordpress. Can it be that Wordpress caches the RSS feed it outputs?

karen-taylor’s picture

Thanks for your help. I have found my issue with the RSS feed at the wordpress end and have fixed the feed.
It had the set to a future date so once drupal imported the feed once it wouldn't look at it again.
As this field is optional I have removed it.
Now...I think the drupal feed module has cached the RSS feed? I have tested with a different feed and it is working.

Is it possible to clear the cache for this imported feed?
Thanks again
Karen

MegaChriz’s picture

Feeds doesn't look at dates on the RSS feed to determine if an item should be updated. Instead it looks per item in the feed if it had changed since the last import. If it does, Feeds updates this item on the website. If you change a single item in the RSS feed, Feeds should say "Updated 1 node". If you add one new item to the RSS feed (with a GUID value not used by other items in the feed), it should say "Created 1 node".

If you want to force updating items, even when the source feed did not change you could temporary enable the option "Skip hash check" on the processor settings page of your importer. Do a single import and disable the option again as there should be no need to update items on the website that haven't changed in the source feed.
An other way to trigger updating all items, is to make changes in the mapping configuration.

Does this help?

karen-taylor’s picture

Thanks again for your help Chriz

I have added a new story to my feed again. But drupal doesn't import the new node.
However I have found now if I clear the Drupal cache (configuration > performance) it will then import the new node.

So I guess it isn't a problem with my RSS but rather Drupal caching the feed.

I will try and set a time limit for the sites cache but I guess that will slow my site down? Is there a way to just prevent Drupal caching this one file?

Cheers,
karen

MegaChriz’s picture

Status: Postponed (maintainer needs more info) » Fixed

It sounds like you are meaning that the node doesn't show up on your website due to site caching, but that it has been imported into the database.

You could take a look at /admin/content to check if the nodes are being imported. That page (which should only be viewable by content admins) should list all nodes on the site without using the cache.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.