Updates from Wojtek Szkutnik Toggle Comment Threads | Keyboard Shortcuts

  • Wojtek Szkutnik 8:01 am on August 30, 2011 Permalink | Reply  

    Enhanced Emails – Screencase 

    I had an extremely busy week but here’s what I managed to cook up:

    Enhanced Emails – GSoC 2011 from Wojtek Szkutnik on Vimeo.

  • Wojtek Szkutnik 12:18 pm on August 19, 2011 Permalink | Reply
    Tags: ,   

    Enhanced Emails – weekly update 

    After posting the 0.2 release notice I forgot to post the weekly update – sorry for the 24 h delay 🙂

    Since GSoC is coming to an end, I’m glad that despite my health problems during the first part of GSoC I was able to pull it off and meet the project goals. The 0.2 release takes care of the most important bugs of 0.1 and introduces support for all major email clients, desktop and mobile. Litmus proved that the design does well on *all* platforms and even Symbian handles them quite well 😉 I will be releasing 0.2.1 this weekend, with some minor bugfixes, a few template handling improvements and some small naming changes.

    One thing that I’m unhappy with is the fact, that I wasn’t able to do much work with the UI team – and because of wcsf I wasn’t able to get much input on the 0.2 version last week, either. I’m sure there will be plenty of input later and I’ll be happy to keep working on the improvements.

    @westi mentioned that he’d like to see this project incorporated to the core – I’d personally love to see it in 3.4 and will do everything to keep improving it as long as it’s needed. All comments and remarks are highly welcome – I’d like to get the best out of the project and with the proper input – I’m sure we’ll be able to finally incorporate html e-mails support for WP 🙂

    I would like to thank @justin and @aarondcampbell – you were both very helpful and I knew that I could rely on your help and friendly suggestions during the whole summer. The same goes for Mo Jangda – our e-mail conversations helped me a lot, cheers!

  • Wojtek Szkutnik 3:49 pm on August 13, 2011 Permalink | Reply

    Hey there As I mentioned in the previous… 

    Hey there,

    As I mentioned in the previous posts, 0.2 is here. I have introduced some more changes today and tested the whole design via litmus. It went well, and I was very surprised to find that most e-mail clients handle max-width pretty well. Thanks to that I was able to achieve some nice results for mobile devices. The smallest width is 320px, and if the mobile screen is wider than that, the design adjusts itself accordingly.

    So, here are a few screenshots to give you an idea of how it looks (Android on the left, Symbian S60 on the right (notice the forced 320px width in the second case – it helps avoid extremely long comment boxes):

    The plugin should be available on http://wordpress.org/extend/plugins/enhanced-emails/ any minute, you can also find the latest version here: http://gsoc.svn.wordpress.org/2011/wojtek.szkutnik/enhancedemails/

  • Wojtek Szkutnik 7:58 pm on August 11, 2011 Permalink | Reply
    Tags: ,   

    Enhanced Emails – Weekly Update v0.2 

    Ahoy! As usual, there’s good news and bad news. Bad news is, that I’m already a few days behind the date I set for 0.2 last week. The good news is, that there is only one bug left until I will be able to commit the code to the plugin repo (I screwed up the template hierarchy update, should take me a few hours to fix that).

    So, here’s what’s cookin’. I have:

    • Refactored template hierarchy methods (I have changed the way that the plugin is looking for templates to use)
    • Added output sanitization (embarassing 0.1 defect pointed out by westi 😉 )
    • Changed the template handling functions (removing the use of output buffer)
    • Added general layout to avoid html duplication
    • Tested the plugin on Android, IPhone and desktop clients (there are improvements over 0.1 but there will be some more)
    • Improved CSS in a few places
    • Changed my wp_mail wrapper to fit current wp_mail even more strictly (basically, now you can use exactly the same arguments)
    • Improved documentation and plugin descriptions
    • Started working on some basic info for developers
    Expect 0.2 to go live on http://wordpress.org/extend/plugins/enhanced-emails/ somewhere between today and tomorrow.
    I was thinking about making the MU emails pluggable and having them use Enhanced Emails as well as a task for last week. What do you think?
  • Wojtek Szkutnik 6:37 am on August 4, 2011 Permalink | Reply  

    Enhanced Emails, Weekly Update 


    I have scheduled the 0.2 release for Saturday. It includes an almost complete theme re-write, eliminating the duplicated HTML parts, some minor improvements to how the e-mails are handled on Android devices, a few security-wise updates and a tweaked version of the template hierarchy system, finally using the correct file order.


  • Wojtek Szkutnik 8:21 am on July 28, 2011 Permalink | Reply  

    Enhanced Emails – Weekly Update 

    This week I have submitted “Enhanced Emails” to the plugin repo (and it seems that it was downloaded a few times already, yay). I have tested the e-mail designs on Android and iPhone, while there are some minor problems with width adjustment, they are already readable. I have also been reworking some parts of the code to get rid of the template duplication and of using the output buffer 😉

  • Wojtek Szkutnik 11:20 pm on July 21, 2011 Permalink | Reply  

    Enhanced Emails – Weekly Update 


    This week I have been improving the documentation and working on fixing some bugs. Hopefully tomorrow I will submit the code to the plugin repo to get some feedback.

  • Wojtek Szkutnik 1:12 pm on July 13, 2011 Permalink | Reply
    Tags: ,   

    Enhanced Emails – weekly update 

    This week I have released the alpha version of the plugin, see https://gsoc2011.wordpress.com/2011/07/11/enhanced-emails-early-alpha-release/. I’m working on the documentation now and I’m improving the theme hierarchy handling.

  • Wojtek Szkutnik 5:30 pm on July 11, 2011 Permalink | Reply
    Tags: ,   


    As you all know, I have spent most of June on recovering from a heavy back injury and I have lost over a month of GSoC time. There was a high probability that I wouldn’t be able to deliever the scheduled release on time, so I’m extremely happy to announce the 0.1 release of the Enhanced Emails plugin. It was a very hard time for me and I’m really glad that all went well. You can checkout the code from the GSoC 2011 repo.

    So, how exactly does it work?

    The plugin uses a tweaked version of Ryan McCue’s #15446 patch hence the pluggable.php file. The patch is supposed to make it to the core soon and I will be able to remove the wp_mail override then. I tried to make the eemails_wp_mail wrapper work as close to wp_mail as possible, to allow easy use in plugins and make future merging with the core easier 😉

    We have a global “Use HTML Emails” setting:

    as well as a per-user setting:

    These settings will be ignored in the alpha version and HTML e-mails are always used, due to the fact that I want to push the “use html” “if” into wp_mail, to make it work for multiple recipients.

    Have a look at the current HTML E-mails, generated with the plugin enabled:

    Noticed the “action link” bar at the bottom? It’s fully customizable. I tried to make the wrapper as easy to use as possible, and to customize the action links for any e-mail, you just use the following array:

    'link'=> 'http://example.com',
    'text'=>__('Simply red')

    and put as many of them as you like in the “action_links” argument 😉 You can use eemails_wp_mail just as you would use wp_mail and it will work great! If you use the default template, the engine will try to fit your text message to work well with the generic HTML layout.

    I encourage all of you to try the plugin as soon as possible and report as many bugs as you can find!

    And, as a formality, my GSoC 2011 schedule checklist:

    design the html email looks
    code the designs in HTML/CSS
    code functions responsible for template hierarchy
    create a generic theme
    create the action-dependant files
    add the management features
    (as mentioned, I skipped the one-liner “if” intentionally, the rest of the settings mechanics is here)

    I already did some testing under Gmail, Mozilla Thunderbird and Android. During the second GSoC stage I will be probably improving the styling to fit the mobile devices, but it’s already readable and there are no significant problems with floats, padding etc.

    Also, I would like to give a big thank you to Andrew Nacin, Aaron Campbell, Justin Shreve and Mohammad Jangda (random order 😉 ) for helping me with the project!

    For the rest of the week I will be improving documentation and fixing bugs.


    cheers and good luck with preparing your projects for midterms!


    • Prasath 5:40 pm on July 11, 2011 Permalink | Reply


    • Stas Sușcov 6:07 pm on July 11, 2011 Permalink | Reply

      Nice 🙂

    • mitcho (Michael 芳貴 Erlewine) 3:40 am on July 13, 2011 Permalink | Reply

      Maybe a good time to start pushing to the plugins repository too?

      • Wojtek Szkutnik 12:53 pm on July 13, 2011 Permalink | Reply

        I’ll probably do this next week 🙂

    • Peter Westwood 2:23 pm on July 13, 2011 Permalink | Reply

      These are really nice 🙂

      Some feedback from me on the code:

      • Personally, I think it would be better to try and avoid using output buffering to capture the content of the HTML version of the emails – it should be fairly easy to switch over the way this works when we bring these into core.
      • A lot of the template code is duplicated and I think it would be nicer to have a set of template functions for the common code of building a HTML template (this also feeds into not using output buffering) – this should make it much easier to theme/override from a theme/plugin in future too
      • There is no output sanitisation in the HTML email templates from what I can see – I think we should be using the relevant esc_* output functions here.
      • Wojtek Szkutnik 2:31 pm on July 13, 2011 Permalink | Reply

        Thanks for the input! 🙂 @ template code and output sanitisation – you’re 100% right, that’s exactly why I called it early Alpha – I’ll be remodeling some things related to the templates soon, so it should be fixed shortly.

        I’m just wondering about the output buffering – is there a particular reason to avoid it (I mean more in general, not only in this particular place)? I always considered it kind of dirty, but never had any good reasons not to use it

        • Peter Westwood 4:22 pm on July 13, 2011 Permalink

          In general output buffering is “not a good idea” ™ and we tend to avoid it. There aren’t specific pitfalls I can highlight here but I think it will probably end up easier to maintain and extend if it if function and string building based over output buffering.

  • Wojtek Szkutnik 1:23 pm on July 11, 2011 Permalink | Reply

    Tip of the day: when you feel that your e-mails plugin is not working – check all these gmail filters you created years ago and forgot about, you may find your 200 missing messages there.

Compose new post
Next post/Next comment
Previous post/Previous comment
Show/Hide comments
Go to top
Go to login
Show/Hide help
shift + esc