Hello team
We’re receiving this PHP erros in the logs:
[14-Aug-2024 19:33:32 UTC] PHP Deprecated: Return type of FtpClient\FtpClient::count($directory = ‘.’, $type = null, $recursive = true) should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/1253731.cloudwaysapps.com/xxx/public_html/wp-content/plugins/shareasale-wc-tracker/includes/FtpClient/FtpClient.php on line 543
[14-Aug-2024 19:33:33 UTC] PHP Deprecated: Creation of dynamic property ShareASale_WC_Tracker_Autovoid::$options is deprecated in /home/1253731.cloudwaysapps.com/xx/public_html/wp-content/plugins/shareasale-wc-tracker/includes/class-shareasale-wc-tracker-autovoid.php on line 16
]]>We’re seeing a few of the following entries each day in our fatal-errors logs:
2024-06-10T18:57:28+00:00 Critical Uncaught Error: Cannot use object of type WP_Error as array in /html/wp-content/plugins/shareasale-wc-tracker/includes/class-shareasale-wc-tracker-api.php:167
Additional context
{
"error": {
"type": 1,
"file": "\/html\/wp-content\/plugins\/shareasale-wc-tracker\/includes\/class-shareasale-wc-tracker-api.php",
"line": 167
},
"backtrace": [
"",
"#0 \/html\/wp-content\/plugins\/shareasale-wc-tracker\/admin\/class-shareasale-wc-tracker-admin.php(286): ShareASale_WC_Tracker_API->exec()",
"#1 \/html\/wp-includes\/class-wp-hook.php(324): ShareASale_WC_Tracker_Admin->admin_init('')",
"#2 \/html\/wp-includes\/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array)",
"#3 \/html\/wp-includes\/plugin.php(517): WP_Hook->do_action(Array)",
"#4 \/html\/wp-admin\/admin-ajax.php(45): do_action('admin_init')",
"#5 {main}",
"thrown"
]
}
Thanks in advance for your help!
]]>There is a critical error caused by the plugin when trying to update products which is hindering many businesses. For some reason, on product update, the plugin uses the wc_get_order function to try to update the product meta for the Share A Sale category and subcategory. The wc_get_order function is returning bool and then the plugin is trying to update meta on bool. That is why users are experiencing PHP fatal errors. Fix provided below (see Replace entirely with).
Plugin file:
shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php
Current function starting on line 246:
public function woocommerce_process_product_meta( $post_id ) { ? ? ? ?
? ? //woocommerce_save_data nonce already safely checked by now
? ? if ( ! empty( $_POST['shareasale_wc_tracker_datafeed_product_category'] ) ) {
? ? ? ? $order = wc_get_order( $post_id );
? ? ? ? if ( $order ) {
? ? ? ? ? ? $order->update_meta_data( 'shareasale_wc_tracker_datafeed_product_category', sanitize_text_field( $_POST['shareasale_wc_tracker_datafeed_product_category'] ) );
? ? ? ? ? ? $order->save();
? ? ? ? }
? ? }
? ? if ( ! empty( $_POST['shareasale_wc_tracker_datafeed_product_subcategory'] ) ) {
? ? ? ? $order = wc_get_order( $post_id );
? ? ? ? if ( $order ) {
? ? ? ? ? ? $order->update_meta_data( 'shareasale_wc_tracker_datafeed_product_subcategory', sanitize_text_field( $_POST['shareasale_wc_tracker_datafeed_product_subcategory'] ) );
? ? ? ? ? ? $order->save();
? ? ? ? }
? ? }
}
Replace entirely with:
public function woocommerce_process_product_meta( $post_id ) { ? ? ? ?
? ? //woocommerce_save_data nonce already safely checked by now
? ? if ( ! empty( $_POST['shareasale_wc_tracker_datafeed_product_category'] ) ) {
? ? ? ? $product = wc_get_product( $post_id );
? ? ? ? if ( $product ) {
? ? ? ? ? ? $product->update_meta_data( 'shareasale_wc_tracker_datafeed_product_category', sanitize_text_field( $_POST['shareasale_wc_tracker_datafeed_product_category'] ) );
? ? ? ? ? ? $product->save();
? ? ? ? }
? ? }
? ? if ( ! empty( $_POST['shareasale_wc_tracker_datafeed_product_subcategory'] ) ) {
? ? ? ? $product = wc_get_product( $post_id );
? ? ? ? if ( $product ) {
? ? ? ? ? ? $product->update_meta_data( 'shareasale_wc_tracker_datafeed_product_subcategory', sanitize_text_field( $_POST['shareasale_wc_tracker_datafeed_product_subcategory'] ) );
? ? ? ? ? ? $product->save();
? ? ? ? }
? ? }
}
]]>
Hello team!
Thank you for your efforts in supporting this plugin.
We’re experiencing some fatal errors related to this plugin when we navigate through the admin dashboard.
2024-06-05T06:22:23+00:00 Critical Uncaught Error: Cannot use object of type WP_Error as array in /home/xxxx.cloudwaysapps.com/xxxx/public_html/wp-content/plugins/shareasale-wc-tracker/includes/class-shareasale-wc-tracker-api.php:167
Best regards
]]>This one is filling up my logs like crazy as well. Latest version of Share A Sale (1.5.5). Also the latest versions of WC and WP.
[03-Jun-2024 06:29:07 UTC] PHP Deprecated: ?Return type of FtpClient\FtpClient::count($directory = ‘.’, $type = null, $recursive = true) should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /nas/content/live/xxxxxxx/wp-content/plugins/shareasale-wc-tracker/includes/FtpClient/FtpClient.php on line 543
]]>This one is filling up my logs like crazy. Latest version of Share A Sale (1.5.5). Also the latest versions of WC and WP.
[03-Jun-2024 06:29:07 UTC] PHP Deprecated: ?Creation of dynamic property ShareASale_WC_Tracker_Autovoid::$options is deprecated in /nas/content/live/xxxxxxxxx/wp-content/plugins/shareasale-wc-tracker/includes/class-shareasale-wc-tracker-autovoid.php on line 16
]]>When seeking help with this issue, you may be asked for some of the following information:
WordPress version 6.5.3
Active theme: Bricks (version 1.9.8)
Current plugin: ShareASale WooCommerce Tracker (version 1.5.5)
PHP version 7.4.33
Error Details
=============
An error of type E_ERROR was caused in line 125 of the file /home/xxx.com/autpuhggwr/public_html/wp-content/plugins/shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php. Error message: Uncaught Error: Call to a member function get_meta() on bool in /home/xxxx.com/autpuhggwr/public_html/wp-content/plugins/shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php:125
Stack trace:
#0 /home/xxxx.com/autpuhggwr/public_html/wp-includes/class-wp-hook.php(324): ShareASale_WC_Tracker_Admin->woocommerce_coupon_options_save()
#1 /home/xxxx.com/autpuhggwr/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#2 /home/xxx.com/autpuhggwr/public_html/wp-includes/plugin.php(517): WP_Hook->do_action()
#3 /home/xxx.com/autpuhggwr/public_html/wp-content/plugins/woocommerce/includes/admin/meta-boxes/class-wc-meta-box-coupon-data.php(392): do_action()
#4 /home/xxxx.com/autpuhggwr/public_html/wp-includes/class-wp-hook.php(324): WC_Meta_Box_Coupon_Data::save()
#5 /home/xxx.com/autpuhggwr/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#6 /hom
PHP Fatal error: Uncaught Error: Cannot use object of type WP_Error as array in ../plugins/shareasale-wc-tracker/includes/class-shareasale-wc-tracker-api.php:167#012Stack trace:#012#0 ../plugins/shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php(287): ShareASale_WC_Tracker_API->exec()#012#1 ../wp-includes/class-wp-hook.php(324): ShareASale_WC_Tracker_Admin->admin_init(”)#012#2 ../wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array)#012#3 ../wp-includes/plugin.php(517): WP_Hook->do_action(Array)#012#4 ../wp-admin/admin-ajax.php(45): do_action(‘admin_init’)#012#5 {main}#012 thrown in ../wp-content/plugins/shareasale-wc-tracker/includes/class-shareasale-wc-tracker-api.php on line 167
]]>Plugin throws fatal error when trying to update products. Must disable plugin, update product and then re-enable plugin. Need a fix ASAP as we have to have the plugin to make sure cancelled/refunded orders are reflected in ShareAsale and commissions are not paid out!
PHP Fatal Error: Uncaught Error: Call to a member funtion update_meta_data…
This plugin has been throwing errors on my client’s site and I finally had to disable it because anytime we try to create a coupon, we get a fatal error associated wtiht Share a Sale tracker plugin. What can be done to remedy this?
Here’s just ONE Of many in the error logs:
1 PHP Fatal error: Uncaught Error: Call to a member function get_meta() on bool in /nas/content/live/leafpeople/wp-content/plugins/shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php:125\nStack trace:\n#0 /nas/content/live/leafpeople/wp-includes/class-wp-hook.php(324): ShareASale_WC_Tracker_Admin->woocommerce_coupon_options_save(81230, Object(WC_Coupon))\n#1 /nas/content/live/leafpeople/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters('', Array)\n#2 /nas/content/live/leafpeople/wp-includes/plugin.php(517): WP_Hook->do_action(Array)\n#3 /nas/content/live/leafpeople/wp-content/plugins/woocommerce/includes/admin/meta-boxes/class-wc-meta-box-coupon-data.php(392): do_action('woocommerce_cou...', 81230, Object(WC_Coupon))\n#4 /nas/content/live/leafpeople/wp-includes/class-wp-hook.php(324): WC_Meta_Box_Coupon_Data::save(81230, Object(WP_Post))\n#5 /nas/content/live/leafpeople/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters('', Array)\n#6 /nas/content/live/leafpeople/wp-includes/plugin.php(517): WP_Hook->do_action(Array)\n#7 /nas/content/live/leafpeople/wp-content/plugins/woocommerce/includes/admin/class-wc-admin-meta-boxes.php(273): do_action('woocommerce_pro...', 81230, Object(WP_Post))\n#8 /nas/content/live/leafpeople/wp-includes/class-wp-hook.php(326): WC_Admin_Meta_Boxes->save_meta_boxes(81230, Object(WP_Post))\n#9 /nas/content/live/leafpeople/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array)\n#10 /nas/content/live/leafpeople/wp-includes/plugin.php(517): WP_Hook->do_action(Array)\n#11 /nas/content/live/leafpeople/wp-includes/post.php(4828): do_action('save_post', 81230, Object(WP_Post), true)\n#12 /nas/content/live/leafpeople/wp-includes/post.php(4930): wp_insert_post(Array, false, true)\n#13 /nas/content/live/leafpeople/wp-admin/includes/post.php(453): wp_update_post(Array)\n#14 /nas/content/live/leafpeople/wp-admin/post.php(227): edit_post()\n#15 {main}\n thrown in /nas/content/live/leafpeople/wp-content/plugins/shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php on line 125, referer: https://leafpeople.com/wp-admin/post.php?post=81230&action=edit
]]>
The current version of plugin has Incompatible with ‘High-Performance order storage woocommerce. so please provide an solution
]]>This plugin still doesn’t have HPOS support. Please add and update the release ??
]]>Hi, like many here, this plugin is the only one holding us back from enabling HPOS support. This is very important for newly created stores, as well as very large stores like ours.
Is there a planned timeframe for this?
]]>Hello,
According to WooCommerce the “ShareASale WooCommerce Tracker” plugin is incompatible with ‘High-Performance order storage’ which prevents us activating the ‘High-Performance order storage’ feature. Can this be resolved and how soon?
]]>These warnings are showing up in Query Monitor and in my server logs. I think the plugin needs to be updated to more gracefully handle any settings that are not being used.
Warning Undefined array key “reconciliation-setting”
wp-content/plugins/shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php:348
Warning Undefined array key “reconciliation-setting”
wp-content/plugins/shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php:362
Warning Undefined array key “reconciliation-setting”
wp-content/plugins/shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php:374
Warning Undefined array key “analytics-setting”
wp-content/plugins/shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php:497
Inquiry About HPOS Compatibility for ShareASale WooCommerce Tracker
Hi ShareASale Team,
I am writing to inquire about the compatibility of your plugin, with WooCommerce’s High-Performance Order Storage (HPOS) feature.
We are currently using ShareASale WooCommerce Tracker on our website and are planning to implement HPOS to enhance our site’s performance. However, we must ensure that all our active plugins are compatible with HPOS before proceeding.
We already checked your plugin is currently NOT compatible with HPOS. So, can you please update your plugin to support the HPOS feature and also provide an estimate of when you can update your plugin with this feature? This information is crucial for our website’s performance optimization plans.
Thank you for your attention to this matter. I look forward to your prompt response.
Best regards,
Muhammad Omer
This is the only plugin I use that does not support HPOS preventing me from using it. PLEASE UPDATE IT ASAP TO SUPPORT HPOS.
https://developer.woocommerce.com/2022/09/14/high-performance-order-storage-progress-report/
]]>my checkout processing is taking 30-40sec to load from checkout page to thank you page.
I have disabled all of my plugin and reenabled one by one testing the checkout process each time.
without shareasale the processing time is less then 3 seconds.
with shareasale plugin it takes 30-40 seconds.
this is costing us sales.
this is a critical issue and needs to be corrected ASAP.
]]>Hi,
I wanted to request that your plugin enables support for Woocommerce’s new feature, “High Performance Order Storage”. Right now I can’t use this new feature for my store because “ShareASale Woocommerce Tracker” doesn’t yet support HPOS.
I’m hoping that you’ll be supporting HPOS in some future update.
https://developer.woocommerce.com/2022/09/14/high-performance-order-storage-progress-report/
Thanks for your time!
]]>Hi @shareasale-wp
We are waiting for an update that would fix these warnings for over 6 months now:
When are you planning to release a version that fixes these?
We are running PHP 8.0, WordPress 6.2, WooCommerce 7.2.2.
]]>ShareASale WooCommerce Tracker has been tested with WordPress 6.2 and PHP7.4
]]>GETTING PHP ERRORS LIKE EVERYONE ELSE. ITS TIM TO UPDATE THIS PLUGIN. CMON GUYS. I AM A TOP 500 MERCHANT. I WOULD LIKE THIS UPDATED.
]]>Hello there,
We recently see alot of errors on the share-as-sale plugin that are reported from the query monitor.
WarningUndefined array key “analytics-setting”1-wp-content/plugins/shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php:497ShareASale_WC_Tracker_Admin->admin_init()wp-includes/class-wp-hook.php:308do_action(‘admin_init’)wp-admin/admin.php:175
Please advise.
]]>Hi what is this error, How to fix this? I am getting this PHP Warning.
WarningUndefined array key “analytics-setting”1+wp-content/plugins/shareasale-wc-tracker/admin/class-shareasale-wc-tracker-admin.php:497Plugin: shareasale-wc-tracker
]]>Hi there,
Please help to check with the two problems below:
1. “ShareASale WooCommerce Tracker” plugin seems not compatibility with my current version of WordPress.
2. I created a coupon code on SAS, however why the order used the code but not tracked into SAS? Is there any guidance?
]]>Hello,
Is there any page where we can see if an order was from ShareASale inside our website?
Thank you,
]]>We are using your plugin:- ShareASale WooCommerce Tracker
we want to know if your plugin is compatible with PHP 8.1 or not.
We would love to know ASAP.
]]>Cannot append categories and subcategories to variation products – is there a way to do this? It will not apply the overall shareasale cat/subcat on the main product to the variations and there is no area in the variation itself to set this data.
]]>Hi, I’ve got 2 PHP errors showing in the query monitor
screenshot: https://imgur.com/a/9dczKen
Can you help me out with how to fix them?
]]>Good day,
I installed the Share a sale tracker plugin on my site- followed the checkout steps explained on the Sharesale.com site but the test order has failed 4 times somehow.
I haven’t heard any word from Share a sale customer service as of yet.
After completing each test order I received this:
We did not receive a test order.
Here are the common reasons for a testing failure:
1. Verify that you have completed a full conversion on your site and that you reached your confirmation / thank you page. ShareASale will only track a transaction on a completed conversion.
*(The orders on my site were placed successfully- was taken to the thank you page & the products were delivered)
2. The tracking pixel may not be correctly installed. Please have your programmer/installer revisit step 4 in your ShareASale account in order to access the tracking pixel installation instructions.
*(There’s only 2 steps required to follow as the others are optional)
—Is there any hope ?
THANKYOU!