The solution of Tammullen in github.com doesn’t work for me (I don’t have “Add Item” under the total, I just have “Refund”. All my orders are no longer editable.)
I was promised a high priority bug fix in the next version.
Today in the new version 5.4.0 the bug has not been fixed yet.
I have many customers waiting for the grant access permission (I have to copy their orders from one platform to the new site) with dozens of digital files each.
This bug is seriously hurting my business.
Could not grant access – the user may already have permission for this file or billing email is not set. Ensure the billing email is set, and the order has been saved.
Note the order has been saved and billing email is set. This happens on all orders I have tested with all virtual products. All my plugins are up to date with woocommerce at v 5.30.
Any suggestions?
]]>The site works perfectly, customers can buy and download their digital items
BUT
when I try to GRANT ACCESS to an extra digital item in any order (just to make a gift to my customers, the item is in the database), the filename is added to the field but when I hit the button “Grant access” the wheel spins forever and the access in not granted.
Checking the Logs in the Woocommerce Status, I see:
CRITICAL Uncaught Error: Call to a member function get_quantity() on null in /home/customer/www/mysite.com/public_html/wp-content/plugins/woocommerce/includes/class-wc-ajax.php:808
Stack trace:
#0 /home/customer/www/mysite.com/public_html/wp-includes/class-wp-hook.php(292): WC_AJAX::grant_access_to_download('')
#1 /home/customer/www/mysite.com/public_html/wp-includes/class-wp-hook.php(316): WP_Hook->apply_filters('', Array)
#2 /home/customer/www/mysite.com/public_html/wp-includes/plugin.php(484): WP_Hook->do_action(Array)
#3 /home/customer/www/mysite.com/public_html/wp-admin/admin-ajax.php(187): do_action('wp_ajax_woocomm...')
#4 {main}
thrown in /home/customer/www/mysite.com/public_html/wp-content/plugins/woocommerce/includes/class-wc-ajax.php on line 808
Can you HELP?
]]>Test email:
2020-08-04 00:08:26 Connection: opening to smtp.gmail.com:587, timeout=300, options=array ()
2020-08-04 00:08:26 Connection: opened
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “220 smtp.gmail.com ESMTP v17sm9262193ilj.33 – gsmtp”
2020-08-04 00:08:26 SERVER -> CLIENT: 220 smtp.gmail.com ESMTP v17sm9262193ilj.33 – gsmtp
2020-08-04 00:08:26 CLIENT -> SERVER: EHLO joiningvisionandaction.com
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-smtp.gmail.com at your service, [35.208.6.45]”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-SIZE 35882577”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-8BITMIME”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-STARTTLS”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME250-STARTTLS”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-ENHANCEDSTATUSCODES”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME250-STARTTLS250-ENHANCEDSTATUSCODES”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-PIPELINING”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME250-STARTTLS250-ENHANCEDSTATUSCODES250-PIPELINING”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-CHUNKING”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME250-STARTTLS250-ENHANCEDSTATUSCODES250-PIPELINING250-CHUNKING”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250 SMTPUTF8”
2020-08-04 00:08:26 SERVER -> CLIENT: 250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME250-STARTTLS250-ENHANCEDSTATUSCODES250-PIPELINING250-CHUNKING250 SMTPUTF8
2020-08-04 00:08:26 CLIENT -> SERVER: STARTTLS
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “220 2.0.0 Ready to start TLS”
2020-08-04 00:08:26 SERVER -> CLIENT: 220 2.0.0 Ready to start TLS
2020-08-04 00:08:26 CLIENT -> SERVER: EHLO joiningvisionandaction.com
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-smtp.gmail.com at your service, [35.208.6.45]”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-SIZE 35882577”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-8BITMIME”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-ENHANCEDSTATUSCODES”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH250-ENHANCEDSTATUSCODES”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-PIPELINING”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH250-ENHANCEDSTATUSCODES250-PIPELINING”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250-CHUNKING”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH250-ENHANCEDSTATUSCODES250-PIPELINING250-CHUNKING”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “250 SMTPUTF8”
2020-08-04 00:08:26 SERVER -> CLIENT: 250-smtp.gmail.com at your service, [35.208.6.45]250-SIZE 35882577250-8BITMIME250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH250-ENHANCEDSTATUSCODES250-PIPELINING250-CHUNKING250 SMTPUTF8
2020-08-04 00:08:26 Auth method requested: XOAUTH2
2020-08-04 00:08:26 Auth methods available on the server: LOGIN,PLAIN,XOAUTH2,PLAIN-CLIENTTOKEN,OAUTHBEARER,XOAUTH
2020-08-04 00:08:26 CLIENT -> SERVER: AUTH XOAUTH2 dXNlcj1qdmF2aWRlb0BnbWFpbC5jb20BYXV0aD1CZWFyZXIgAQE=
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “334 eyJzdGF0dXMiOiI0MDAiLCJzY2hlbWVzIjoiQmVhcmVyIiwic2NvcGUiOiJodHRwczovL21haWwuZ29vZ2xlLmNvbS8ifQ==”
2020-08-04 00:08:26 SERVER -> CLIENT: 334 eyJzdGF0dXMiOiI0MDAiLCJzY2hlbWVzIjoiQmVhcmVyIiwic2NvcGUiOiJodHRwczovL21haWwuZ29vZ2xlLmNvbS8ifQ==
2020-08-04 00:08:26 SMTP ERROR: AUTH command failed: 334 eyJzdGF0dXMiOiI0MDAiLCJzY2hlbWVzIjoiQmVhcmVyIiwic2NvcGUiOiJodHRwczovL21haWwuZ29vZ2xlLmNvbS8ifQ==
SMTP Error: Could not authenticate.
2020-08-04 00:08:26 CLIENT -> SERVER: QUIT
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “535-5.7.8 Username and Password not accepted. Learn more at”
2020-08-04 00:08:26 SMTP -> get_lines(): $data is “535-5.7.8 Username and Password not accepted. Learn more at”
2020-08-04 00:08:26 SMTP -> get_lines(): $str is “535 5.7.8 https://support.google.com/mail/?p=BadCredentials v17sm9262193ilj.33 – gsmtp”
2020-08-04 00:08:26 SERVER -> CLIENT: 535-5.7.8 Username and Password not accepted. Learn more at535 5.7.8 https://support.google.com/mail/?p=BadCredentials v17sm9262193ilj.33 – gsmtp
2020-08-04 00:08:26 SMTP ERROR: QUIT command failed: 535-5.7.8 Username and Password not accepted. Learn more at535 5.7.8 https://support.google.com/mail/?p=BadCredentials v17sm9262193ilj.33 – gsmtp
2020-08-04 00:08:26 Connection: closed
SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
Server Info:
OS: Linux c39699.sgvps.net 3.12.18-clouder0 #1 SMP Tue Oct 9 18:14:47 EEST 2018 x86_64
PHP version: 7.3.20
WordPress version: 5.4.2
WordPress multisite: No
openssl: Available
allow_url_fopen: Enabled
stream_socket_client: Available
fsockopen: Available
cURL: Available
cURL Version: 7.66.0, OpenSSL/1.1.1g-fips
(Seriously, it does what it’s supposed to do – download and activate the plugin!)
]]>Is your plugin compatible?
How can I grant access, to one specific user role for have access to only the booking calendar admin?
Thank you
]]>Params:
Mailer: gmail
Constants: No
Client ID/Secret: Yes
Auth Code: Yes
Access Token: Yes
Server:
OpenSSL: Yes
PHP.allow_url_fopen: Yes
PHP.stream_socket_client(): Yes
PHP.fsockopen(): Yes
PHP.curl_version(): Yes
Debug:
Error while sending via Gmail mailer: {
“error”: “invalid_grant”,
“error_description”: “Token has been expired or revoked.”
}
Trying to acquire curtain setup in Woocommerce Memberships.
I want to grant access to a certain membership only when two certain products are purchased. Currently when I select “grant access upon product(s) purchase” and select two products it grants access even if one of those products was purchased.
Is there a way to change either-this-or-that to require purchase of exactly those two products?
I would think that the download links should be included in the order complete email if I grant access to downloadable products. Can anyone shed light on this? Or do I need to first add those products to the customer’s order, and then grant access to them?
]]>