inspired888
Forum Replies Created
-
I can see that the emails (the resent emails) have their
content-type
set totext/plain
. Obviously that should be set totext/html
.As a temporary workaround/solution, I have added code the forces all emails to have the
text/html
value in thecontent-type
header.E.g.:
add_filter( 'wp_mail_content_type', 'set_html_mail_content_type' ); function set_html_mail_content_type() { return 'text/html'; }
Ideally this code wouldn’t be required, as it may cause issues if at some stage a text email is intentionally sent. Not likely on this particular site, but as it’s a hack/workaround it would be good to resolve the underlying cause instead.
This issue appears to be server specific.
It’s not occurring on another site I manage, which is on a different server configuration. It also continues to occur on the site in question even with all other plug-ins disabled, and using just a default WordPress theme.
So it doesn’t appear to be a plugin conflict, nor a theme / custom theme code issue.
I’ll just chime in here … This was may issue. Autoptimize was stopping it from working. Will need to exclude the JS of this plug-in.
Hi there,
Thanks for your helpful and thorough reply.
I’ve found out from the host (Cloudways, 8GB, 3CPU VM) caused the server to go down (and give Service Unavailable error) was that the memory allocated to PHP was insufficient. They only had 128M allocated, which seems rather low to me. Yesterday they increased it to 2040M to resolve the Service Unavailable error, and that brought server back online.
It was at that point that WordPress was then able to load, and it would display the standard “Critical error” message (on front and back end).
Disabling the dynamic heartbeat plugin was the only was to stop that. That was not resource related, as far as I can tell.
I am now looking through error logs, and finding a lot of instances of this error. It appears to occur roughly two times every minute. It appears these errors are caused by the Dynamic Heartbeat plugin, as it’s the only plugin that has the function ” ” within its code.
[Mon Sep 18 00:19:57.334828 2023] [proxy_fcgi:error] [pid 31292:tid 140552200681216] [client 180.191.64.224:0] AH01071: Got error 'PHP message: PHP Fatal error: Uncaught TypeError: call_user_func_array(): Argument #1 ($callback) must be a valid callback, function "dfehc_track_and_expire_user_activity" not found or invalid function name in /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-includes/class-wp-hook.php:312\nStack trace:\n#0 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-includes/plugin.php(205): WP_Hook->apply_filters()\n#1 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-admin/includes/ajax-actions.php(3494): apply_filters()\n#2 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-includes/class-wp-hook.php(310): wp_ajax_heartbeat()\n#3 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-includes/class-wp-hook.php(334): WP_Hook->apply_filters()\n#4 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-includes/plugin.php(517): WP_Hook->do_action()\n#5 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-admin/admin-ajax.php(188): do_action()\n#6 {main}\n thrown in /home/608767.cl...', referer: https://www.REMOVED.com.au/wp-admin/edit.php?s=tas&post_status=all&post_type=shop_order&action=-1&m=0&payment_method&_customer_user&_shop_order_shipping_provider&paged=1&action2=-1
At the time WP was having a critical error, the error message in the logs was:
[Mon Sep 18 06:08:12.258095 2023] [proxy_fcgi:error] [pid 27004:tid 140552402106112] [client 121.200.4.109:0] AH01071: Got error 'PHP message: PHP Fatal error: Uncaught TypeError: call_user_func_array(): Argument #1 ($callback) must be a valid callback, function "dfehc_track_and_expire_user_activity" not found or invalid function name in /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-includes/class-wp-hook.php:312\nStack trace:\n#0 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-includes/plugin.php(205): WP_Hook->apply_filters()\n#1 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-admin/includes/ajax-actions.php(3494): apply_filters()\n#2 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-includes/class-wp-hook.php(310): wp_ajax_heartbeat()\n#3 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-includes/class-wp-hook.php(334): WP_Hook->apply_filters()\n#4 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-includes/plugin.php(517): WP_Hook->do_action()\n#5 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-admin/admin-ajax.php(188): do_action()\n#6 {main}\n thrown in /home/608767.cl...', referer: https://www.REMOVED.com.au/wp-admin/post.php?post=80764&action=edit
That appears to be related to backend activity (post editing). Whereas the one I shared yesterday was for front-end activity.
Just now I have tried to re-activate the plugin. It won’t activate due to same critical error:
Plugin could not be activated because it triggered a fatal error. Fatal error: Uncaught Error: Call to undefined function shell_exec() in /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-content/plugins/dynamic-front-end-heartbeat-control/heartbeat-controller.php:408 Stack trace: #0 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-content/plugins/dynamic-front-end-heartbeat-control/heartbeat-controller.php(419): get_system_load_average() #1 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-admin/includes/plugin.php(2318): include_once('/home/608767.cl...') #2 /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-admin/plugins.php(192): plugin_sandbox_scrape() #3 {main} thrown in /home/608767.REMOVED.com/gpnhmcjwnz/public_html/wp-content/plugins/dynamic-front-end-heartbeat-control/heartbeat-controller.php on line 408
Thanks for the suggestions regrading WP Rocket.
I also greatly appreciate your offer to take a look at what might be causing excessive resource usage. For now, I’m not able to grant access to the site. I’ll need to get my client (the site owner) to permit that. It’s a busy ecommerce site with a fair bit of private data on it.
What are your thoughts on the above errors? I am pretty certain they are not due to lack of server resources.
Thanks very much.
Jonathan- This reply was modified 1 year, 6 months ago by inspired888.
Forum: Reviews
In reply to: [Judge.me Product Reviews for WooCommerce] Doesn’t workIt can be frustrating when something does work in the way you expect it to. The support team for Judge.me is excellent. They are exceptionally helpful, and go beyond the call of duty when it comes to helping users resolve issues.
Did you take your issue up with them before leaving your “review”?
Hi David. I apologise for taking so long to respond. This project was on the back burner whilst I worked on some others.
In answer to your questions, from memory, I wanted to display the content of those fields wherever the
HTML Template - Each Field
output already shows up. So, in the cart and checkout, and in the confirmation email. I’m not at my computer right now, but when I am I’ll have a look and see if there’s anything I can add to make my answer clearerthanks,
Jonathan
Thanks James. Yes, this can be marked as solved.
To get around this, I’ve deleted the GA4 property I originally set up. And created a new one, and disregarded the recommendation to NOT set up a UA property for the site. So I now have a GA4 and UA property for the site.
But it begs the question … why is this necessary?
Thanks Alessio. Much appreciated.
Indeed … it’s just a warning. Although I find that most server configs hare logging of PHP warnings on by default, and thisfilter-by-payment
warning creates a lot of noice/bloat in the logs. So would be great to see it gone. As far as I can tell, it’s just a matter of doing a test on the$filter_id
(e.g.if ( isset( $_GET[ $filter_id ] ) ) {
. Seems to do the trick.
In the mean time, I’ve written a new plug-in which achieves the same result, but with some changes to the Payment Method column. I prefer to see up front the card number, so I’ve written it to display “Amex 5647” (for example), rather than an icon and then having to hover over; also, it displays an svg Apple icon after those cards processed through Apple Pay, and an svg Google icon for those done on Google Pay). Just some minor adjustments I figured I might as well do along the way.
Wishing all the best …Hi Zorem. Oddly, simply disabling all plug-ins and enabling them all again appears to have resolved the issue. At least it’s resolved in the Email Customizer, so I assume it’s also resolved in the live emails. I’ll keep an eye on it.
Thanks.
I’ve done a few tests, and I can confirm this issue does not appear to be carrier specific. The tracking info fails to show up for carriers that on my other sites it has no issues with. So it seems to be specific to this site.
It looks like the issue is that both plug-ins are using the custom taxonomy “series”. E.g., “taxonomy=series” is in the URL for editing both a Post Series (from the the Series plugin), and for editing a Podcast from your plug-in.
This is also having the effect that now when I edit a (Post) Series, various fields, etc., from SSP are displaying, even though the URL has “post_type=post” and not “post_type=podcast” (which is what SSP uses).Hi Pepe,
Thanks for your support.
About 30 minutes ago, prior to seeing your response just now, I resolved the issue. Your response certainly would have led me to the same result, as the error was in the error logs.
It was caused by a minor coding glitch in a function I added some time ago. The function was coded to make a record of the customer’s referring URL when the order is placed. Because of the glitch, it meant the order would be registered in WC yet payment would not complete. The message, “Error processing checkout. Please try again.” was displaying after order submission. And any additional attempts to submit the order would create another order with the same payment pending status.
Problem solved.
Thanks very much. I appreciate you.
Jonathan
Forum: Plugins
In reply to: [footnotes] Replacement plugin that uses syntax.As you’ve touched on, doing a simple search / replace in the DB is likely the easiest way to take care of this.
I don’t know of any Footnote plug-ins as comprehensive as this one. If you do, please let me know. But whichever plug-in you settle on, I would suggest you go with a plugin that has the exact features you need, and don’t discredit it based on the particular shortcode it uses (e.g., <fn></fn>, etc). Obviously it will need to use a shortcode approach of some kind, so you are able to do the search replace, and have it up-and-running with minimal effort.
Okay. Thank you. Thanks for getting back to me.