Thank you for purchasing our Compare+ Price Comparison Plugin. If you have any questions that are beyond the scope of this help file, please feel free to email us on firstname.lastname@example.org. Thanks so much!
Processing product feeds is a pretty intensive job and you will need to have a powerful server when you intend to run this plugin with very large XML feeds containing thousands of products. This obviosuly has an impact on performance. Your server might be able to process e.g. 10,000 without any problems but is likely to struggle with a feed that has 40,000 products.
We advise you to start off small and limit the number of products included in a feed at source. Most affiliate networks provide an interface where you can customise your feed and we suggest to include only a couple of categories to start with until you find your server’s limit. There is little point in selecting every single product for an online book retailer as the 100,000+ products are most likely going to exceed your server’s limits.
We also added a limit field in the feed management page so that you have another way of limiting the number of products getting processed. This is a useful feature which you should use when you are setting up your first product feeds and learning your way around the system. Only have a couple
Here is a list of compability requirements for our Compare+ plugin:
Your server compatibility is checked when the plugin is loaded and there might be problems when the minimum requiremens are not met.
Values you can also check if you are on shared hosting to determine how well your site will run:
Please note that products won’t appear on your website until the category and product have been mapped. However, it is possible to “force” the category and product import. We do not recommend this as you will end up with thousands of produts each listing only a single retailer.
Another point to note is that products with the same EAN number will be associated with each other automatically, but you need to have mapped the category for them to get imported.
Feeds are essentially a list of products from a merchant or retailer, typically made available by affiliate networks (e.g. Belboon, Tradedoubler, Zanox etc) and sometimes provided directly by the retailer.
Product feeds contain product information such product id, name, deeplink, image URL, category and price. You can download the feed using the download URL provided by the network or retailer. To open the feed you can use a text editor such as Scintilla. For smaller feeds you can also use Internet Explorer as it nicely renders the XML elemets. Once the feed is loaded you can examine the fields and you need to take a note of the field name for the parser setup. (→Pariser Management)
In regards to categories, some feeds provide a list of categories separated by a character (eg: “,” or “>” or “/”). You need to determine if there is a separator and if the sub-category name appears towards the left or the right (left or right).
“Streetwear > Men > Shirts” – the sub-category “Shirts” is on the right.
In Compare+ v1.0.7 we added subfeed functionality which requires Compare v.1.0.10 or later versions.
Our new Subfeed functionality allows you to create a feed that will be linked to its master feed and its products will be attached under the master feed’s retailer name. If the master feed and subfeed contains the same product it will show only once. A master feed cannot be a subfeed of other feed.
Notice: Compare+ uses WordPress Cron Jobs in order to automaticaly import your feeds, but WordPress triggers the update only when someone visits your website. If your website has no trafic, you should set up your own cron job to ensure that the product database is updated every day. Also note that triggering the cron job does not slow down the session of the user that triggered the cron job. Please refer to the WordPress documentation for further details or have a look at this WP Tuts article.
This screen lists all your feeds set up in your price comparison system. You can manually import, edit or delete your feeds on this screen. In order to add a new product feed, click Add new feed at the top next to the heading.
Here we also display some statistics about your feeds, such as the number of products that have been created, ignored or have failed.
Adding a product feed is pretty straightforward and the main thing you need to have is the feed URL. For further information we provide on-screen tooltips on all input fields.
The Compare Plus plugin now allows you to import products directly from Amazon via Amazons API and Tradedoubler via the Tradedoubler API.
To take advantage of this for the Amazon API you must first sign up for the Amazon Affiliate Program and also the Amazon Product Advertising API. Once the you have signed up you will receive emails from Amazon detailing how to receive the relevant information they need to setup the API management part of Compare Plus. (You will need to tell Amazon the name of the website you are setting up, Amazon may take upto a day to send you the verification email). Please take care when adding these settings, also please test your site to make sure sales are being tracked and that you are earning from the sales that you make.
One thing to note is that your associate ID must relate to the locale you are pointing to in your feeds. See https://affiliate-program.amazon.com/gp/associates/help/t22/a13 for details.
To setup the API in the plugin you then go through the following steps
Amazon has many many quirks in it’s API, for example each feed you use will only ever return 100 products. Therefore to have more than 100 products returned you may have to create different sub feeds for Amazon each with a different price range.
Also there are various combinations of values which you cannot have, if you include these in your feed you will get an Amazon error when you come to import it. Here are a couple of examples
Amazon error: Your request contained a restricted parameter combination. When SearchIndex equals All, MinimumPrice cannot be present.
This error means you cannot have a Minimum Price selected when you have not chosen any categories in the feed setup. To fix this either delete the minimum price entry in feed management or add a category.
Amazon error: The value you specified for Availability is invalid. Valid values include Available.
This error means that in the Feed Availability field the only option you can enter is Available.
Parsers are required to process information in XML or CSV files and they contain the blue print or template for a given feed. Typically, you need to set up a parser for each affiliate network as each network defines a different XML structure. If you use e.g. Fusepump’s product feeds then you would only have to define one parser which you can reuse across a number of different networks and retailers.
In order to complete the fields you need to look at the feed structure. Product feeds contain product information such product id, name, deeplink, image URL, category and price. You can download the feed using the download URL provided by the network or retailer. To open the feed you can use a text editor such as Scintilla. For smaller feeds you can also use Internet Explorer as it nicely renders the XML elemets. Once the feed is loaded you can examine the fields and you need to take a note of the field name for the parser setup.
Now you can find markup names manually or you can let Compare+ to detect fields automatically for you.
Here is a step-by-step guide you can follow:
Or you can use automated markup name detection
Please note that if you experience problems getting your parsers set up and working, please contact us with details about the feed, URL and the affiliate network.
If your XML feed contains attributes or nested XML elements then you can access these values as follows:
<product id="35613011"><product_name>My product</product_name>
=> gets the attribute value from root element => 35613011
The following screenshot shows you the XML structure of the John Lewis feed. We would simply have to copy the field names such as title, brand, ean, url, imageUrl, price, description and categoryList into the corresponding fields on the Add a Parser screen above.
The product container root in this example is: product.
Once you have set up your parser and feed, the parser will work as follows:
Choose “force import categories” to import every category from the feed even if no mapping is set up. This is usually not a good idea because it will create a lot unwanted categories. We reccommend that you set this option set to “No”.
Choose “force import products” to import every product from the feed even if no mapping is set up. If you want to have a perfect price comparison system, you should keep this option set as “No”, otherwise, you will have a lot of “single” products with only one retailer.
We recommend that you only run your cron job at night when your site is less busy. The time will be based on your webserver settings. If you set this to ‘Yes’ then the cron job will start at the ‘Cron job starts starts at’ time and ‘Cron job stops at’.
Before you can start to map your categories you need to create your desired categories withing WordPress. If you have not done this already, go to Products > Categories and your create top-level categories and sub-categories. The sub-categories will be used to match with product categories from the feed. Use the Parent drop-down box to associate your sub-categories with the top-level category. Please note that compre only support one level of sub-categories. Sub-sub-categories are not supported.
As part of the category setup you can also specify the category image and a description (good for SEO!).
Once you have set up your own categories and added a couple of product feeds you will have to map the categories found in the feeds to your own categories. The number of categories per feed depends on the retailer. Some feeds have a handful of categories whereas large online retailers could have hundreds of categories. You only have to do this once for each of your feeds.
We have tried to make the mapping process as simple as possible. We created an easy-to-use Initial Mapping Tool where you can quickly go through all categories found in your feeds and associate them with your own categories using a drop-down box with a number of choices:
Please ensure that no feed categories are mapped to a top-level category in WordPress (e.g. Computers in the screenshot above) as only sub-categories are used by the Price Comparison functionality. The Top-level category template simply lists all sub-categories.
Clicking Map Categories at the bottom of the screen creates the category association in the database which will be used by the → parser during the import process.
To set up a functioning price comparison you need to map products from the different feeds to a master product. All products mapped to a master product will appear within the price comparison table on the master product’s detail page. Under Compare+ > Product Mapping you can see existing product mappings as well as the number of products associated with the mapping. On this screen is also a link to the Initial Mapping Tool where you can map the products with the feed with your master product.
On the Mapping Tool screen you can see a list of product names that have been imported from the product feeds. These products are in the raw table and the products have not been created within the price comparison system yet. These are only suggestions you can use for your search.
For example you could search for ipad to find all ipads in your feeds. You could then map these to e.g. two different products – iPad 2 16 GB and iPad 2 32 GB as we have shown on the search results page below.
On the above screen you can see the product names related to your search, tick corresponding checkboxes and apply a rule from the following options:
Once your products are mapped, products will be associated with the corresponding product page during the next import. As a result, the mapped product will appear within the price comparison table for the given master product.
Once you imported a number of products into your price comparison site you can further customise your site by setting brand, category thumbnails and adding a description for these elements.
Compare Plus has a feature which means that feeds set up can be automatically imported every day without the user / site owner having to login and press the import button. To do this it uses a feature known as a cron job, but what is a cron job I hear you ask? A cron job is simply a scheduled task that the computer has to perform at a particular time. In this case the computer is the web server on which the site is running and the task it has to perform is importing the sites data feeds.
Many simple web hosting packages may not allow users to create Cron Jobs, therefore Compare Plus makes use of a feature within WordPress called WP-Cron. WP-Cron Jobs work in a similar way to regular Cron Jobs but with one major difference. With a Cron job you tell it what it should do and when it should do it and it will run at that exact time. With a WP-Cron job it has to be triggered by a user visiting the website for the task to be run.
Compare Plus takes much of the headache away from having to setup these WP-Cron Jobs, providing the site has quite regular traffic and the web host allows WP-Cron Jobs to run on it (not all of them do), then the user should not have to set up anything to allow all feeds to update once a day automatically. The one setting that can be changed regarding this is within the WordPress admin screens to tell Compare Plus not to update feeds at certain times of the day. If the user knows their site is busy during certain hours these hours can be blocked out so the feed updates do not slow the site down. If a user knew that their site was busy between 6pm and 11pm they could apply the following settings (Compare+ > Settings)
WP-Cron Jobs can however have issues, a good example of this would be the following:
“Dave has a site which Compares mobile phones called, www.thesuperfantasticmobilephonecomparisonwebsite.com. Dave wants the updates to his site to happen at 2am in the morning but he has no traffic until at least 2pm in the afternoon. Compare Plus would not be able to update his feeds as there are no visitors to trigger the WP-Cron job.”
With this and other WP-Cron job issues which can be caused by configuration settings and other plugins interfering with the WP-Cron the solution is to use an external cron service such as https://www.setcronjob.com. Here the user can create an account.
Activate the account and then login and click the big green “Create CronJob” button.
The settings screen will then appear asking the user what URL (website address) they would like to call and how often to call it. There are various other options available but they are not needed for this task.
In the URL to call field the user should enter the following URL replacing the website address with the one for their website.
Next to the “When to call” text box the user should click on the blue details button. This will then let them set which minutes, hours, days etc the cron should run. It should be remembered that it’s best for the cron to run when the site doesn’t have many visitors as the cron running can slow down the site. Also each time the cron runs only one feed gets updated, so if the site has 10 feeds ideally it should be run 10 times a day to make sure the feeds stay up to date.
The user should then click the “Save CronJob” button at the bottom of the page.
Note: as can be seen from the pricing page here https://www.setcronjob.com/prices the free account is only suitable for very small feeds which complete within 15 seconds. The user will need to upgrade to a better account if the feed takes longer than this to import.
Note: the user should also disable WP-Cron Jobs by changing their wp-config file adding the following line to the top of the page.
Another important menu item is Compare+ > Exclusions where you can add rules to ignore products and categories. During importing, each product or category is checked against these exclusions and products matching the rules will not get imported into the price comparison system. Use this feature when you don’t want certain products to appear on your website by listing the full product name or stop words contained in the product name. Please enter one phrase per line into the text area.
Example: you have a skateboarding website, but your feeds also contains surfing products. Add the word “surf” to the product exclusion textbox and all products containing “surf” will be ignored.
Category exclusions work pretty much the same way as product exclusions but as the name suggests, category names are scanned for your stops words during import instead of product names.
We have set up a dedicated support forum for all Compare and Compare+ related questions which you can consult when you experience any problems using these products. Please try and search our forum using the search function before creating a new thread. We might have already answered a similiar question which means that you can get your answer there in then rather than waiting for us. And it would help us too of course as we can spend more time working on new features.
Before you can use the forum you have to register using your product purchase code.
We are based in London and our typical support hours are between 09:30 and 18:00 GMT. We aim to get back to you within 48 hours after receiving your query and quite often we respond witin a matter of hours. Over a weekend it might take a bit longer, but we will get back to you!
Thank you for using our Compare Price Comparison theme and plugin. We hope that you enjoy working with our product and it has enabled you to operate a successful price comparison website.
We understand that the product might appear daunting and complex at first. We have tried to simply the complexities of managing product feeds so that less technical users are also be able to operate their own price comparison site within the easy-to-use WordPress environment.
We are aware that we have not yet fully achieved our desired level of simplicity and we will continue to work hard in oder to make this product even more simple to use and remove any remaining complexities.
Your feedback is very important to us and please take a few moments to send us your comments (good or bad!), suggestions for further improvement or ideas by email to email@example.com
Once again, thank you so much for purchasing this plugin. As we said at the beginning, we’re glad to help you if you have any questions relating to this plugin. No guarantees, but we’ll do our best to assist.
— The AWESEM team