webwitnl
Forum Replies Created
-
I’m not contacting anyone, I’ve done my job and reported the bug. If you leave the bug in there like I suspect when you don’t even forward the bug to your team and sound not even the slightest bit interested with such a huge bug, that’s your problem and I won’t extend my premium subscription.
Forum: Plugins
In reply to: [Google for WooCommerce] Missing gtin in woo variable productsHi, I looked at the source code and found the bug in 5 minutes. I reported it here:
https://github.com/woocommerce/google-listings-and-ads/issues/1763
They have confirmed the bug and are picking it up. Thanks for your help.
Forum: Plugins
In reply to: [Google for WooCommerce] Missing gtin in woo variable productsHi, Yoast took a long look at it and even logged into my site with temporary admin login etc.
The problem is in the Google Listings & Ads plugin. The GTIN are not being picked by Google Listing and Ads from the Yoast SEO WooCommerce plugin.
Please look again at your documentation you posted yourself:
https://woocommerce.com/document/google-listings-and-ads-faqs/#section-4“Google Listing & Ads supports the following extensions: [snip] Yoast WooCommerce SEO β supports using the GTIN/MPN values set via this premium extension which is sold as an addon to the free Yoast SEO extension.”
I took 1 minute to look at your code and found this:
src/Integration/YoastWooCommerceSeo.phpThis is where you should hunt down your bug.
I don’t know why we are having this discussion and you say Yoast supports GLA instead of the other way round, it seems like you don’t have an understanding of the product you are supporting.
Your plugin looks at the values Yoast stores. Your plugin offers the choice to take the GTIN from Yoast. It does for simple products, it does not for variable products. Please fix the bug and stop pointing to Yoast. This is getting silly.
Thanks for not forwarding the bug yourself *sigh* I have indeed Yoast Premium and forwarded the bug by email. Thanks again. Please don’t make it so difficult to report a bug, I’ve now reported it three times and no one picks it up.
Forum: Plugins
In reply to: [Google for WooCommerce] Missing gtin in woo variable productsOk, but you know entering the data there doesn’t mean which plugin supports the other, or the other way round, right? Your earlier link suggests it is Google L&A which supports Yoast, not the other way round.
https://woocommerce.com/document/google-listings-and-ads-faqs/#section-4Anyway, I also reported it at Yoast.
Forum: Plugins
In reply to: [Google for WooCommerce] Missing gtin in woo variable productsAh ok, I thought Google L&A picked it up from Yoast, but apparently Yoast feeds it into Google L&A. I’ll report it there and let you know.
Forum: Plugins
In reply to: [Google for WooCommerce] Missing gtin in woo variable productsI think you misunderstood. Indeed it is controlled by the Yoast plugin. It adds GTIN fields under the product variation. But I entered the values correctly there. The Google Listings & Ads plugin fails to pick them up though, unlike when I enter it at the relevant yoast GTIN field for simple products. If you want I can sent you some screenshots.
Yeah it’s a weird one. I can think of two possibilities, one is serialize() used to be famously bugged especially with nested arrays, but that was years ago and surely fixed with PHP8 we’re running. And two, maybe it was manually edited at the beginning by someone when we set up the site on dev and moved to prod, but the filepaths on dev are much longer and doesn’t explain 4 characters.
Anyway, I fixed the lengths of the paths manually, and it works now. Thanks for your time and help!
- This reply was modified 3 years, 7 months ago by webwitnl.
Found it. Before offset 2045 the serialized string does something like this:
s:71:”/home/xxxxxxxxx/public_html/wp-content/upgrade/wordpress-5.9-nl_nl/”
That string is not 71 characters long but 67.
I fixed it in the database, but then it failed on a next path with also a length 4 characters too long:
s:52:”/home/xxxxxxxxx/public_html/wp-content/languages”
It’s 48 characters.
I never changed paths nor the xxxxxxxxx part.
Hmmm….
I did a bit of digging and traced the flow of code.
The problem is the code calls a function maybe_unserialize() in wp-includes/functions.php, which calls php’s unserialize() with the value of jetpack_log in database table wp_options.
There’s a serialized string in that database field, but unserialize gives an error and returns bool false.
PHP throws this notice:
Notice – unserialize(): Error at offset 2045 of 36021 bytesLooking at the string at offset 2045, I see nothing special. The field is a proper longtext in utf8mb4_unicode_ci and isn’t cut off. I also tested the string somewhere else at http://php.fnlist.com/php/unserialize where it gives the same error at offset 2045.
If you want I can privately share the string with you.
- This reply was modified 3 years, 7 months ago by webwitnl.
“Itβs strange it crashed your server; I donβt really understand that part.”
I found out! If I go to a not found image, e.g. https://www.example.com/wp-content/uploads/2022/10/[email protected], it doesn’t do a basic 404 but WordPress shows a nice Page Not Found page with some suggestions etc.
So on my product category page I tested, there were 73 failed calls, which then fired 73 Apache requests with full PHP and WordPress/WOO within a few milliseconds. Luckily the server didn’t catch fire π
P.S. I don’t have 73 products or product images there, but it seems to check for retina versions of all the possible thumbnails of each product image. I don’t think it should do that for each page request even if only a file_exists() instead of over http?
I disabled that check, that fixed it, thanks for the quick reply!
Just to be sure: I host images on the same server, but I use Shortpixel Adaptive images which changes the hosting to their CDN. Not sure if that means your @2x images are supposed to be local or they optimize it and it’s on their CDN. The HTTP API calls were to a local url but the CDN also redirects images not found to the original server. Ah well…
Hi Bruce, it’s https://www.wildewolf.nl/
Thanks!Thanks!
Thanks for your quick answer, it’s WooCommerce (both WC and WP latest versions).
WooCommerce products have a copy function to create a new product based on the old one.
There are various fields in there, most noticeably the slug, which get auto updated once you save the new product, so it seems to be a common hook/mechanism.