| 开发者 | myfeeds |
|---|---|
| 更新时间 | 2026年8月24日 11:18 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
myfeeds-affiliate-feed-manager folder to the /wp-content/plugins/ directory, or install the plugin directly from the WordPress plugin screen.Install MyFeeds, open MyFeeds → Feeds, and paste the feed URL your affiliate network gave you. MyFeeds downloads the file, works out which column is the title, the price, the image and the affiliate link, and imports every product into your own database. CSV, TSV, XML and JSON all work, compressed or not, and nothing has to be uploaded by hand.
Open any post in the block editor and add the MyFeeds – Product Picker block. Search your imported catalogue by name, brand, colour or category, tick the products you want, and they appear as product cards with image, price and a buy button. No copying links, no HTML.
MyFeeds re-reads your feed every night and refreshes what is already in your posts, so the price a reader sees is the price the merchant is charging today. A weekly full import catches products that were added or withdrawn. You can also sync any feed by hand at any time.
Most of the large ones do: AWIN, Tradedoubler, CJ Affiliate, Impact, Rakuten Advertising, Pepperjam, FlexOffers and Sovrn all publish product feeds, and so do many merchants directly. Look in your network's dashboard for a section called "Product feeds", "Datafeeds" or "Create a feed". MyFeeds reads the file whatever it is called.
This plugin puts product cards inside your posts and pages. A full storefront with its own categories, filters and sorting is a paid feature and not part of this plugin.
It depends on the feed size. A feed with 10,000 products typically takes 2–5 minutes. Imports run in the background via Action Scheduler, so you can keep working while they process.
Only products with valid data (title, price, image, and affiliate link) are imported. Check your feed source for incomplete entries.
No. All product data is stored locally in your WordPress database. The frontend makes no external API calls, so your site stays fast.
Yes, it works with any WordPress theme that supports the Gutenberg block editor (WordPress 5.8+).
No. MyFeeds requires the block editor.
If your affiliate program hands you a product feed URL you can download, MyFeeds will almost certainly read it. The plugin handles the common feed formats automatically and recognises the field structure that most networks use. For everything custom there's a manual mapping editor inside the plugin.
Those are the ones we see most often, and their feeds import without manual work. The plugin isn't built around any single network though: it reads the file your program hands you, whatever the network is called. CSV, TSV, XML and JSON all work, compressed or not. If a column is named something the plugin has never seen, the mapping editor lets you point it at the right field yourself.
Yes. See External Services below. In short: when you add an AWIN feed, the plugin talks to the official AWIN Publisher API to confirm your credentials and look up feed URLs. No data leaves your site on the frontend.
image_url and an explicit hi-res mirror (large_image, original_image, hires_image, full_image — with or without _url suffix) now pick up the hi-res variant on every sync path (Full Import, Quick Sync, Action Scheduler batches, single-feed reimports). Feeds with only a single image column behave exactly as before. AWIN priority is unchanged.images.productserve.com/preview/ thumbnails get rewritten to the /large/ mirror; Shopify size suffixes (_grande, _NNNxNNN, …) get bumped to _1024x1024; Cloudinary upload paths without a transformation get w_1024,q_auto,f_auto injected; BigCommerce stencil paths bump to 1024x1024; WordPress -NNNxNNN resize suffixes get stripped. Unknown URLs pass through untouched. Images go from soft thumbnail to crisp source on Retina displays without any cloud storage or extra account on your side.merchant_image_url now wins over aw_image_url everywhere. The AWIN variant routes through their resized /preview/ bucket; the merchant variant is the original-resolution mirror. The smart mapper used to prefer the AWIN one, which produced soft cards on every Retina display, and the importer's force-overwrite pass would silently re-apply that choice on every Quick Sync. Both paths now converge on the merchant URL.aw_deep_link now wins over merchant_deep_link everywhere, in every sync path. The AWIN URL goes through awin1.com so the commission gets attributed; the merchant URL is the merchant's direct link with no AWIN involvement, so a click on it silently bypasses tracking and the publisher loses the commission. Same "last one wins" loop order in the force-overwrite map was silently overwriting the tracked URL on every Quick Sync. Replaced with explicit priority overrides in process_critical_fields so Full Import, Quick Sync, Action Scheduler batches and single-feed reimports all produce the same tracked URL. Existing rows where the untracked URL was already cached heal at the next nightly sync.* in the FULLTEXT match, so a query like "trouser" finds the same products and the same brand / colour / category facets as "trousers". Earlier behaviour: the German-leaning stemmer was producing "trous" for "trouser" — neither form existed in the FT index, so the main search found rows via a fuzzy fallback but compute_facets returned zero buckets and the filter panel disappeared. Prefix-wildcard fixes both paths.<source_column> to <db_column>) plus per-field tier and missing-row counts. Makes it obvious when the mapper picked the wrong source slot.merchant_product_category_path no longer push selects out of their card. Field rows now shrink correctly inside the grid.format/csv path, query strings like ?format=csv, file extensions) so large AWIN datafeeds with 80+ columns no longer get misclassified.original_price when the feed's rrp/list price equals the current price. The mapping is preserved; the strike-through display still only kicks in when there is a real discount.currency to EUR when the feed has no currency column. Empty stays empty so a USD merchant never shows "€" on cards that link to a USD checkout.category_name, merchant_product_category_path, merchant_category, product_type, and the Fashion-feed taxonomy in order, so merchants that only fill the breadcrumb path get categorised correctly.