This morning I posted the first beta release (beta-1) of Email Users 4.6.2. This release includes integration with the ItThinx Groups plugin. I also took the opportunity to refactor the code for integration so code isn’t unnecessarily loaded when a plugin isn’t installed and clean up the plugin’s ReadMe file.
If you use ItThinx Groups I would appreciate any feedback you can provide.
You may have noticed an influx of content (posts, pages, etc.) related to wp-SwimTeam and wonder where it came from. For the past four years I have been developing, enhancing, supporting, etc. a WordPress plugin called wp-SwimTeam. This plugin can be used to manage the registration, volunteers, participation, and other aspects of running a youth swim team. Several groups have used it for Masters Swimming as well but it is targeted at youth swim teams.
I first started wp-SwimTeam to support our local neighborhood team when my wife was the swim team chair. Over the years it grew in features to the point where it was fairly comprehensive. My children no longer swim and my involvement in swim team has largely ended but I still maintain my plugin because (a) people use it and (b) I still feel it serves a need and it doesn’t take much of my time to continue supporting it.
I have always had a separate web site for wp-SwimTeam but over time that came to make less and less sense. In fact, I had some people contact me on this site and some on the other site so I had questions and solutions on both sites. I decided that I would migrate everything here So I exported all of the content and then imported it. There were a few hiccups, mostly around downloads but I think everything else came over ok.
The old URL redirects to the wp-SwimTeam page on this site. From time to time you may see updates for wp-SwimTeam or phpHtmlLib in addition to the normal flow of information on Email Users and WordPress Google Form.
I have posted WordPress Google Form v0.59-beta-1 in response to a request to have the ability to preset form values by passing a parameter as part of the WordPress URL. This is an interesting request so I did some work on it this morning and it turned out it wasn’t to difficult to implement.
Much like custom field validation and presets, this new functionality builds upon the name of the field that you want to preset. Google has a way to preset values, the field name is passed as a parameter with a value. This new functionality does much the same but pulls it back to WordPress for processing.
Using my Validation Demo form as an example, here are two URLs:
As you can see, the second URL will have the first two fields prefilled with the values which were part of the URL. The following was appended to the URL. The specific parameter names (e.g. entry.1666054688) had to discovered by examining the source Google Form.
This morning I released version 4.6.0 of Email Users. This release addresses the problems with addresses appearing in the CC header instead of the BCC header which cropped up in v4.5.4 and v4.5.5. This version has gone through quite a bit of testing to ensure the problem with addresses was fixed. In addition to this critical fix, there are also a couple of minor new features now available. If you were running Email Users v4.6.0-beta-4, this version is nearly identical. The version is different and the default string for the new footer was trimmed eliminating the version number.
Significantly improved debug functionality to chase down mail header issues.
Check added to determine if wp_mail() has been overloaded by a theme or plugin.
Rewrite of mailusers_send_mail() fucntion to construct headers as arrays instead of as a single string. The string would sometimes not break correctly and recognize the Bcc: field.
This morning I formally release v0.58 of WordPress Google Form. Thanks to everyone who did testing of the various beta releases. The v0.58 release includes a number of improvements to deal with special characters either in responses or in questions.
Fixed bug when radio button and checkbox responses contained apostrophe characters.
Fixed bug when text entry box content contained an ampersand which ended up encoded in the Google sheet.
Fixed bug(s) with plugin settings which are controlled with checkboxes not being able to be unchecked.
Added Reset button to return plugin settings to their default state.
Fixed problem handling newlines (carriage returns) in textarea entries.
You can find the update on your WordPress Dashboard or in the WordPress Plugin Repository. The released version is functionally the same as beta-3, only the version number is different.
This morning I released beta-3 of WordPress Google Form v0.58. This update addresses one problem, properly handling newline characters in TEXTAREA entry boxes. This issue was reported on the WordPress Support Forum.
If there are no more reported issues, I will likely release v0.58 in the next day or so.
If you’ve been following the Email Users Support Forum, you are aware that for the past couple of days I have been chasing a bug which affects some users and places all of their intended recipient email addresses in the CC header instead of the BCC header.
This has been a challenging bug to find as it doesn’t happen on any of the systems I have access to. Fortunately I had a few users affected by this problem willing to help me and I appreciate their assistance. I am not sure how I would resolved this problem without their assistance. Again, thanks.
So what was the problem? The WordPress wp_mail() API allows you to pass extra header information as part of the mail content. Email Users makes use of this by constructing a BCC header which contains all of the email addresses for the intended recipients. The wp_mail() function supports headers as a single string or an array of headers, each header as an array element.
Up until this evening Email Users had constructed all email headers as a string. With a large number of email addresses this string could end up being very long. However, I don’t believe the length of the string had anything to do with the problem.
When wp_mail() receives headers as a string, it tries to intelligently decompose them. In some cases it appears that the string wasn’t splitting correctly which means the BCC field wasn’t ever seen. The “Bcc:” text became part of an email address which was subsequently discarded because it resulted in a bad address.
Email Users v4.6.0 has a rewrite of the mailusers_send_mail() function plus some new debug functionality which helps resolve these sorts of issues. Additionally, the new debug is under user control so can be turned on and off as needed.
For the past few days I have been chasing a reported issue where Email Users is putting recipient addresses into the CC header instead of the BCC header. This has been a challenge to chase down. To assist in this I have add a bunch of new debug and checking to Email Users.
Email Users will now check and report if wp_mail() has been overloaded by a plugin or theme. Since wp_mail() is a pluggable function, this is the one area which is really out of the control of Email Users. Simply knowing if wp_mail() has been overloaded is very helpful.
Additionally, I have finally found a way to initiate a complete email which is aborted just prior to the email actually being sent. The content of several internal structures is displayed on the Dashboard so the email headers can easily be examined.
This build is in DEBUG mode which means it will never actually send an email unless wp_mail() has been overloaded in which case all bets are off. Please visit the Settings page first to determine if wp_mail() has been overloaded. If it has, do not send any email but let me know which plugin or theme has overloaded wp_mail().