_unit and product_unit are not rendered
-
Hello,
as of the current and the last version _unit and product_unit are not rendered anymore. They are available in the feed editor but produce no feed output, neither with standard products or variants. Checking “include variants” on or off makes no difference.
BR Peter
- This topic was modified 3 years, 6 months ago by woochilles.
-
Hello Peter,
Just to be sure, could you revert the plugin back to version 1.28.1 and confirm it works again?
You can download this 1.28.1 from the bottom of this page: https://wordpress.org/plugins/wp-product-feed-manager/advanced/
Hello Michel,
I tried down to 1.22.0 and it still doesn’t work anymore. It seems that wordpress or woocommerce changed and introduced the problem.
Ok Peter.
If you open the Feed Manager -> Settings page in wp-admin, what input do you have in the “Third party attributes” field?
Michel, currently there is
%wpmr%,%cpf%,%unit%,%bto%,%yoast%,%_ts_%, %_% ,%wc%
I noticed that _unit_price has just disappeared too.
- This reply was modified 3 years, 6 months ago by woochilles.
Is Unit price not something from Woocommerce Gemanized?
You need to add ,%_ts_% to the “Third party attributes” field.[EDIT]
I see you already have the _ts_ in your attribute list.
So than that should not change anything.But nevertheless, have you installed Woocommerce Germanized?
Yes, you are right. I have Woocommerce Germanized. Just for my understanding. I thought everything that appears on the product feed editing page should render in the xml output. Right or wrong? Currently these desired fields are available on the editing page but they do not render in the xml output file.
Well as you can understand it is impossible for us to support all third-party plugins, so that is why the “third party attributes” option has been added. It should support any third-party plugin, but you need to know the meta_key under which the attributes are stored in the database.
So for the field that is added by the Woocommerce Germanized, it should be the _ts_ because that is how the meta_key starts for that plugin and fields. Nevertheless, you do have that already added to the third-party attributes field so it is somewhat weird you cannot find it in the source dropdown.
Or can it be found and selected in the source dropdown but it does not give back any data in the feed?
If that is the case could you check and see if it does give data for simple products?
Thanks for you patience.
Yes, all desired fields are in the source dropdown as before but they don’t produce any data in the feed anymore. Thanks for staying in touch.
I’ve checked on simple products and it’s the same issue
Could you open your database and in the postmeta table search for meta_key LIKE ‘%_item_%’
Let me know if you can locate any data this way.
Good idea, Michel. I now know what the problem is. _unit is empty in the variants itself, but contained in the parent. In the woocommerce admin interface the unit is only defined in the general product settings, not in the variants. See here, post id=833 is the general product and 834 to 836 are the variants:
MariaDB [wordpress]> SELECT * FROM wp_8_postmeta WHERE meta_key = '_unit' AND post_id = 833; +---------+---------+----------+------------+ | meta_id | post_id | meta_key | meta_value | +---------+---------+----------+------------+ | 11857 | 833 | _unit | kg | +---------+---------+----------+------------+ 1 row in set (0.001 sec) MariaDB [wordpress]> SELECT * FROM wp_8_postmeta WHERE meta_key = '_unit' AND post_id = 834; +---------+---------+----------+------------+ | meta_id | post_id | meta_key | meta_value | +---------+---------+----------+------------+ | 13322 | 834 | _unit | | +---------+---------+----------+------------+ 1 row in set (0.002 sec) MariaDB [wordpress]> SELECT * FROM wp_8_postmeta WHERE meta_key = '_unit' AND post_id = 835; +---------+---------+----------+------------+ | meta_id | post_id | meta_key | meta_value | +---------+---------+----------+------------+ | 13318 | 835 | _unit | | +---------+---------+----------+------------+ 1 row in set (0.002 sec) MariaDB [wordpress]> SELECT * FROM wp_8_postmeta WHERE meta_key = '_unit' AND post_id = 836; +---------+---------+----------+------------+ | meta_id | post_id | meta_key | meta_value | +---------+---------+----------+------------+ | 16587 | 836 | _unit | | +---------+---------+----------+------------+ 1 row in set (0.003 sec)
I tested it again and the following should work at least for the main product id:
– Update our plugin to the latest version (1.29.2)
– Leave the “Include Product Variations” option off
– Regenerate the feed
– View the feed in your browser and then press CTRL-F5 (CMD-R on Mac) to refresh your browsers cache.You should now have the units in your feed.
I’m also a bit confused in that in your initial post you mentioned that checking the “include variations” option made no difference whilst in your first reply you mentioned that you reverted back to version 1.22.0.
So my question is, are you working on a free version (in which case the “include variations” option should not be available, of on a premium version (in which case the 1.22.0 version is an incorrect version because the premium version numbers start with a 2.xx.x)
So, just to be sure you do update to a correct version in the first steps: If you’re using the free version, update to 1.29.2. But if you’re using a Premium version, please update to version 2.19.2.
If you’re working on a Premium version you will also notice that when switching the “Include Product Variation” on, you will not get the unit in your feeds. That is indeed because the product variations have no units set. Let me know if that is acceptable for you or if I need to have a look at that.
Thanks Michel, and sorry for creating some confusion. I purchased the premium version once I noticed the problem came up with the free version. So now I’ve tried 2.19.2 and can confirm that _unit now delivers content when unchecking “Include Product Variation”.
However the solution still poses a problem for me. While the units are retrieved from the general product settings, the price is taken from the first variant and therefore wrong unit prices are returned in many occasions. This is legally critical for me and has already cost me 3000 EUR for amazon and ebay doing this error on my behalf…
Ideally I would like product variants in the feed to get more leads. Is there a clean solution possible on your side or should I better contact
Vendidero to handle the _unit option differently? Maybe they have introduced the problem by recently making changes here.So I think we are talking about two issues here:
1. At the moment our plugin takes the first variant price when you do not show variant products in the feed (Include Product Variations = off). This only happens for the variant products. Simple products show the correct price.
A solution for this would be to use the “Max Variation Regular Price” or the “Min Variation Regular Price” as source for the price. You could use a setup like this: https://pasteboard.co/JUGTxR1.png
2. You still have a problem with the _unit attribute, but I’m not sure if I understand what you want our plugin to do. Can you confirm you want to have the _unit data from the main product also in the product variations?
1. I had that idea recently before I got premium version. I think it would work, but only for products with two variants. But then I would need no premium version anymore 😉
2. The _unit attribute (kg, ml, etc.) can only be set in the main product. The variants don’t have that field, probably to avoid different units. In the variants you define the number of units the variant is comprised of, let’s say 0.5 and 1, meaning I have two variants 0.5kg and 1kg in this case.
- The topic ‘_unit and product_unit are not rendered’ is closed to new replies.