Jump to content
Sign in to follow this  
mushindo

Automatic Store Feeds Contribution

Recommended Posts

Our Google Base feed seems to work well. I was wondering, though, has anyone an idea how to adapt this contribution so it will output a ROR.xml file?

 

It is meant to go in a seller's server for those shopping sites that want to pull only product info.

Right now I'm going through all kinds of contortions to try to get the right file created.

 

 

Here's how the sample file is supposed to look:

 

	
<!-- This is a sample ROR file describing Products -->
−
<rdf:RDF>
<!-- First Product -->
−
<Resource>
<type>Product</type>
<title>Name or Title of Product One</title>
<url>http://www.acme.com/product_one.htm</url>
<desc>Description of Product One</desc>
<keywords>keyword1, keyword2, keyword3</keywords>
<image>http://www.acme.com/product_one.gif</image>
<imageSmall>http://www.acme.com/product_one_small.gif</imageSmall>
<price>12.95</price>
<currency>USD</currency>
<available>yes</available>
</Resource>
<!-- Second Product -->
−
<Resource>
<type>Product</type>
<title>Name or Title of Product Two</title>
<url>http://www.acme.com/product_two.htm</url>
<desc>Description of Product Two</desc>
<keywords>keyword1, keyword2, keyword3</keywords>
<image>http://www.acme.com/product_two.gif</image>
<imageSmall>http://www.acme.com/product_two_small.gif</imageSmall>
<price>19.95</price>
<currency>USD</currency>
<available>yes</available>
</Resource>
</rdf:RDF>

 

I use the header tags contribution, so it would seem do-able to be able to get keywords. The code is beyond me, though. Any help would be appreciated.

Share this post


Link to post
Share on other sites

What is ROR?

 

ROR (Resources of a Resource) is a rapidly growing independant XML format for describing any object of your content in a generic fashion, so any search engine can better understand that content. RORweb.com is the official ROR website.

 

ROR promotes the concept of structured feeds (which is related to the concept of structured blogging) enabling search engines to complement text search with structured information to better understand meaning. ROR information is typically stored in a ROR feed called ror.xml placed in your website's main directory. Unlike Google Base, ROR feeds can be easily accessed by all search engines: at http://www.your-website-name.com/ror.xml

 

Above info from: http://www.rorweb.com/#samples

Share this post


Link to post
Share on other sites

I fixed a bug in my multi-language version of Automated Store Feeds v3.2 which prevented the items to be listed in Google Base US *and* UK.

 

(I changed the id for the US and UK feeds, so that they have distinct ids, which is a requirement of Google Base.)

 

The fixed version (v3.2a) is now available in the contribution section:

http://www.oscommerce.com/community/contributions,4455

 

If you are trying to submit your items to Google Base US & UK, then you need to use this newer version. (Simply replace froogle_us.php & froogle_uk.php by the new ones.)

 

Regards,

 

-Ben

Share this post


Link to post
Share on other sites
Hi baalwww,

 

Check to see if your paths are all alright in your /catalog/admin/configure.php

 

It seems to me that there could be a path problem since your feed file is not placed where it should be.

 

Tell us how it goes.

 

Regards,

 

-Ben

 

Ben, if you were trying to submit to Google Base US *and* UK, then use this newer version (v3.2a), that will fix your problem. (Simply replace froogle_us.php & froogle_uk.php by the new ones.)

The US and UK feeds had the same ids, so Google Base considered the products as being duplicate and was only displaying the more recent submited feed.

 

Regards,

 

-Ben

Share this post


Link to post
Share on other sites
Our Google Base feed seems to work well. I was wondering, though, has anyone an idea how to adapt this contribution so it will output a ROR.xml file?

 

It is meant to go in a seller's server for those shopping sites that want to pull only product info.

Right now I'm going through all kinds of contortions to try to get the right file created.

Here's how the sample file is supposed to look:

 

	
<!-- This is a sample ROR file describing Products -->
−
<rdf:RDF>
<!-- First Product -->
−
<Resource>
<type>Product</type>
<title>Name or Title of Product One</title>
<url>http://www.acme.com/product_one.htm</url>
<desc>Description of Product One</desc>
<keywords>keyword1, keyword2, keyword3</keywords>
<image>http://www.acme.com/product_one.gif</image>
<imageSmall>http://www.acme.com/product_one_small.gif</imageSmall>
<price>12.95</price>
<currency>USD</currency>
<available>yes</available>
</Resource>
<!-- Second Product -->
−
<Resource>
<type>Product</type>
<title>Name or Title of Product Two</title>
<url>http://www.acme.com/product_two.htm</url>
<desc>Description of Product Two</desc>
<keywords>keyword1, keyword2, keyword3</keywords>
<image>http://www.acme.com/product_two.gif</image>
<imageSmall>http://www.acme.com/product_two_small.gif</imageSmall>
<price>19.95</price>
<currency>USD</currency>
<available>yes</available>
</Resource>
</rdf:RDF>

 

I use the header tags contribution, so it would seem do-able to be able to get keywords. The code is beyond me, though. Any help would be appreciated.

 

Hi lostndazed,

 

I think that it would not be so difficult to do, it would just need time to do it. You could re-use the mysql queries from the current feeds and simply modify the output (by inserting the different <> tags where they need to be).

I don't know for the header tags contribution, as I do not use it personnaly, but you could simply tweak the mysql query to get this information as well.

 

I would suggest though that you release this under a different contribution name, so that it would be easier to track and to manage the versions.

 

Please post here if you manage to do this - I'd be interested to use that, but unfortunately don't have enough time to make it right now.

 

Regards,

 

-Ben

Share this post


Link to post
Share on other sites
Hi there,

 

I have installed the contrib as decribed, but when I go into admin, and click 'store feeds' i get the following error:

 

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, webmaster@cottonbottom.com.au and inform them of the time the error occurred, and anything you might have done that may have caused the error.

 

More information about this error may be available in the server error log.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

--------------------------------------------------------------------------------

 

Apache/1.3.37 Server at www.cottonbottom.com.au Port 80

Any ideas on what I need to do?

 

I would be really greatful for any help you could provide.

 

Thanks so much,

 

Jessica

 

I am having this same problem. I changed permissions through CoffeeCup DirectFTP to 777 and I still get this problem. The store I am working on does not have a "catalog" category, if that makes a difference. "store" is there instead of "catalog". All other folders are correct, however.

Share this post


Link to post
Share on other sites
I am having this same problem. I changed permissions through CoffeeCup DirectFTP to 777 and I still get this problem. The store I am working on does not have a "catalog" category, if that makes a difference. "store" is there instead of "catalog". All other folders are correct, however.

 

Hi Melissa,

 

A 500 Internal Server error is a generic type of error - it doesn't tell us much about the error itself.

So you will need to contact your web host (as explained in the error message) with the date and time, and what's you've done, so that they can look in the logs and give you more information about this error.

 

It is possible that your web server is misconfigured in some small way, and that it causes problems only for specific operations.

 

I don't know too much what it could be. Perhaps that you can try to search elsewhere in the forums for "500 Internal Server error", maybe you will find some hints or a solution.

 

Tell us what happens with it.

 

Regards,

 

-Ben

Share this post


Link to post
Share on other sites

I was notified today that I needed to update my feed to meet google base's new requirements and installed this and am really liking it (particularly the feature where it doesn't include $0 products!) but I'm not sure it meets the minimum requirements as I'm understanding them from Google's site- for example, according to their page (http://base.google.com/base/products.html) the following attributes are required:

* brand

* condition

* description

* expiration_date

* id

* image_link

* link

* price

* product_type

* title

 

But the feed is missing these:

* brand

* condition

* expiration_date

* product_type

 

Is there a way to add these to the feed? Or even to hardcode for attributes that are the same for everything (for example, expiration date or the non-required attribute of payment)?

Share this post


Link to post
Share on other sites
I was notified today that I needed to update my feed to meet google base's new requirements and installed this and am really liking it (particularly the feature where it doesn't include $0 products!) but I'm not sure it meets the minimum requirements as I'm understanding them from Google's site- for example, according to their page (http://base.google.com/base/products.html) the following attributes are required:

* brand

* condition

* description

* expiration_date

* id

* image_link

* link

* price

* product_type

* title

 

But the feed is missing these:

* brand

* condition

* expiration_date

* product_type

 

Is there a way to add these to the feed? Or even to hardcode for attributes that are the same for everything (for example, expiration date or the non-required attribute of payment)?

 

Same issue with me

 

I received an email from Google Base saying...

 

Hello,

 

As you know, we're always looking for new ways to improve our product search experience, both for our users and for content providers. We've found that one of the most effective ways to help users conduct faster and more effective searches is to describe products with relevant attributes - ideally those assigned by the people who best understand their own products, meaning you.

 

That's why we're asking all Froogle merchants to send us bulk uploads in the Google Base format, with five additional attributes (along with the basic ones you've submitted in the past). Because we think it's important to provide a consistent user experience, we will no longer list items that don't meet a minimal number of attributes by the end of February 2007. Please review the following bulk uploads - they do not currently meet the minimum attribute requirement:

 

google_us_file.txt

 

For further explanation please visit our FAQ section

 

You can review this attribute requirement page to learn about these new guidelines for general product attributes and specific attributes per product type. You can also learn how to submit your feed using Google Base here. We recommend that you include as many attributes as possible; the more information you provide, the better chance you'll have of matching users' "refinement" queries.

 

We hope you'll continue enjoying the benefits of listing your products on Google, and even increase your potential customer base using the new Google Base format.

 

Thanks,

The Google Base Team

 

How would I go about adding these new required fields to the feed that is sent to them? I do all of my updates through VB ODBC connection to my database, but PHP is out of my scope. Any help you can provide would be greatly appreciated.

 

Chris

Share this post


Link to post
Share on other sites

I thought maybe it was because I never opened feeds into phpmyadmin, so I looked around and found phpadmin. I imported it into phpmyadmin and now my oscommerce is completely busted:

http://charmedbystarr.com/store/admin

I have the store itself backed up in an sql file but how to I upload the backup if there's no oscommerce?

Share this post


Link to post
Share on other sites
I am having this same problem. I changed permissions through CoffeeCup DirectFTP to 777 and I still get this problem. The store I am working on does not have a "catalog" category, if that makes a difference. "store" is there instead of "catalog". All other folders are correct, however.

When you downloaded the contrib and unzipped it there was a folder inside the folder named new installation that is called 'catalog' and contains all of the files you need. If you simply uploaded that folder onto your server as is then your store isn't going to find them- you will need to rename the folder 'store' and upload it again- if you've already modded your oscommerce files though you will need to go through and only reupload the new files for this contrib:

/store/admin/froogle_us.php

/store/admin/froogle_uk.php

/store/admin/froogle_de.php

/store/admin/feeders.php

/store/bidhopper.com

Share this post


Link to post
Share on other sites
Yeah, well, that's not even an issue now, since my store is busted. :'(

try to find the configuration file and re-upload it or, if you have the sql backed up, go into phpmyadmin, click on the database you use for the store and then on 'Import' and from there it's pretty self-explanatory. You could also, if you've been using the Admin section to do your backup's, try to 'backdoor' in by going straight to the backup page and telling the store to restore to an earlier date. The URL should be:

http://charmedbystarr.com/store/admin/backup.php

Share this post


Link to post
Share on other sites

Thanks for that info. I did manage to log in through there and restore. I can log in through store/admin but I still can't seem to get /store itself to show up. :(

Share this post


Link to post
Share on other sites
Thanks for that info. I did manage to log in through there and restore. I can log in through store/admin but I still can't seem to get /store itself to show up. :(

I would double-check the configuration settings- the file is located at store/includes/configure.php- and make sure your database connection is properly defined and in particular the password. It is the last section of code and begins with:

// define our database connection

define('DB_SERVER', 'localhost'); // eg, localhost - should not be NULL for productive servers

Share this post


Link to post
Share on other sites

The original store creator managed to help me through it. Seems that everytime I fixed the password in CoffeeCup DirectFTP and saved the configure files, they didn't really save. I finally just downloaded the configure files, deleted the ones on the server, editted them and reuploaded. Now everything is fixed.

 

I'm still scared to put these Automated Feeds in. I don't want to break anything again. The instructions are a bit confusing since I don't really know PHP and SQL, only HTML and CSS. What exactly does one do with the file, feeds.sql??

Edited by Aire

Share this post


Link to post
Share on other sites
The original store creator managed to help me through it. Seems that everytime I fixed the password in CoffeeCup DirectFTP and saved the configure files, they didn't really save. I finally just downloaded the configure files, deleted the ones on the server, editted them and reuploaded. Now everything is fixed.

 

I'm still scared to put these Automated Feeds in. I don't want to break anything again. The instructions are a bit confusing since I don't really know PHP and SQL, only HTML and CSS. What exactly does one do with the file, feeds.sql??

the feeds.sql file shouldn't break your store- just open it in Notepad and copy the entire thing- use 'Select All' so you don't miss anything- then open phpMyAdmin and navigate to that database and click on the 'sql' tab at the top of the right frame. Paste the contents of the feeds.sql file that you just copied into the text area (the heading on the box is:

'Run SQL query/queries on database') and then click on the button that says 'go'. When you go back into the Admin area of your store and click on the Configuration area you should then see a line that says 'Feed Settings' where you will input your username/password etc for the assorted feeds.

Share this post


Link to post
Share on other sites
I was notified today that I needed to update my feed to meet google base's new requirements and installed this and am really liking it (particularly the feature where it doesn't include $0 products!) but I'm not sure it meets the minimum requirements as I'm understanding them from Google's site- for example, according to their page (http://base.google.com/base/products.html) the following attributes are required:

* brand

* condition

* description

* expiration_date

* id

* image_link

* link

* price

* product_type

* title

 

But the feed is missing these:

* brand

* condition

* expiration_date

* product_type

 

Is there a way to add these to the feed? Or even to hardcode for attributes that are the same for everything (for example, expiration date or the non-required attribute of payment)?

 

I was able to get my froogle.php file to work with the new requirements and have posted it here it may work for you with just a little bit of editing.

Share this post


Link to post
Share on other sites

OK, I was brave and I put the coding in. I see Feed Settings now. I was able to put in my usernames and passwords. My only issue now is that the Store Feeds section still has that error posted before:

 

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

 

Please contact the server administrator, webmaster@charmedbystarr.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

 

More information about this error may be available in the server error log.

 

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

Apache/1.3.37 Server at www.charmedbystarr.com Port 80

 

I double checked my feeds folder and it is set at 777. Is the feeds folder supposed to be empty like that?

Share this post


Link to post
Share on other sites
OK, I was brave and I put the coding in. I see Feed Settings now. I was able to put in my usernames and passwords. My only issue now is that the Store Feeds section still has that error posted before:

I double checked my feeds folder and it is set at 777. Is the feeds folder supposed to be empty like that?

It is until a feed is created and stored there- did you upload the new files to your server? I think, and you would need to double-check your folder as I normally delete anything extra so I won't inadvertently add it to mine, that would be everything except column_left- so, for example, to store/admin/ you would add:

froogle_de.php

froogle_uk.php

froogle_us.php

yahoo.php

bizrate.php

feeders.php

Share this post


Link to post
Share on other sites
I was able to get my froogle.php file to work with the new requirements and have posted it here it may work for you with just a little bit of editing.

Thank you very much- I'm going to try that out later today!

Share this post


Link to post
Share on other sites

OK, reuploaded and it's showing up. Now when I Run Feed it says:

 

File completed: froogle_us_file.txt

 

Warning: ftp_login() [function.ftp-login]: Login incorrect. in /home/charm3/public_html/store/admin/froogle_us.php on line 436

FTP connection has failed!

Attempted to connect to uploads.google.com for user charmedbystarr

 

Script timer: 4.040047 seconds.

 

 

LOL, by the time I'm done, you'll have the perfect FAQ set up. :P

Share this post


Link to post
Share on other sites
OK, reuploaded and it's showing up. Now when I Run Feed it says:

LOL, by the time I'm done, you'll have the perfect FAQ set up. :P

Yep- just what Rachael said, double-check that you're using the username/password that froogle/google gave you when you signed up.

Share this post


Link to post
Share on other sites

Perhaps someone would be able to help be with this for the categories or product_type for a froogle feed.

 

This line of code works fine for me and returns my category names as the product_type which is a good thing:

 

		if($product_type == 1)
	{
		$catNameTemp = strtolower($catName);
		$output .= " \t " . $row->catName;
	}

 

However, I would like it to return a more uniform google category for the product_type so I have come up with this:

 

if($product_type == 1)
	{
		$catNameTemp = strtolower($catName);
		if($catNameTemp == "Necklaces/Pendants")
			$productTypeOut = "necklaces";
		else if($catNameTemp == "Rings")
			$productTypeOut = "rings";
		else if($catNameTemp == "Bracelets")
			$productTypeOut = "bracelets";
		else if($catNameTemp == "Brooches/Pins")
			$productTypeOut = "brooches";
		else if($catNameTemp == "Hatpins")
			$productTypeOut = "hatpins";
		else if($catNameTemp == "Watches/Fobs/Chains")
			$productTypeOut = "watches";
		else if($catNameTemp == "Tacks/Bars/Cufflinks")
			$productTypeOut = "cufflinks";
		else if($catNameTemp == "Belt Buckles")
			$productTypeOut = "Belt Buckles";
		else if($catNameTemp == "Charms")
			$productTypeOut = "charms";
		else if($catNameTemp == "Hair Jewelry")
			$productTypeOut = "hair jewelry";
		else if($catNameTemp == "Buttons")
			$productTypeOut = "buttons";
		else if($catNameTemp == "Earrings")
			$productTypeOut = "earrings";
		else if($catNameTemp == "Shoe/Fur/Dress Clips")
			$productTypeOut = "Shoe, Fur & Dress Clips";
		else
			$productTypeOut = "other";

		$output .= " \t " . $productTypeOut;
	}

 

Now, I did have this working at one point with just necklaces and charms, but now it doesnt seem to be working for me at all and only returns "other". I know I am missing something, but I just cant see it.

 

It doesnt seem to matter if I have the / in there or not its still not kicking in and the output is always "other".

 

Also, can I combine these two codes to create an output of a particular product type for categories I define with a separate output and rather than "other" have it return my category name for product types I do not specifically define?

 

I hope that made sense!

 

Thanks in advace for your help!

Edited by theantiquestore

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×