Tech Note: The “Email an Article” Makeover, Now Mobile-Friendly

Thanks to MJML
LGF • Views: 42,642

Image via Shutterstock

In the past few days I’ve been working on a part of the LGF site that’s been woefully neglected for too long: our “Email an Article” feature, which you get to by clicking the little envelope icon below each article — the one that looks like this:

Would you believe this code hasn’t been seriously worked on for 10 years?

In a way it’s kind of cool that it was still functional despite the lack of attention, but with the advent of mobile devices it really started to show its age. The idea of the feature is to send a nicely formatted HTML email that contains most of the article, with images and links and all that good stuff. (It also includes an alternate non-HTML version for people who don’t want HTML in their emails.)

But on mobile devices, this HTML code was … well … less than optimal. Not perfect. Oh, let’s face it, it sucked. On some mobile devices it looked OK, but was shrunken down to an unreadable tiny size because it wasn’t scaled to the mobile screen. On other mobile devices it looked flat out awful, because they didn’t support CSS properly, or a myriad of other reasons.

The thing about mobile HTML email is that it’s a real nightmare to code, with so many devices out there, each with its own quirks and bugs. That’s one reason why I hadn’t done much with the code for a long time, because it was a daunting task.

But I’m pleased to announce that I recently discovered an open source framework called MJML that makes all of these compatibility headaches disappear like magic. Instead of writing the HTML directly, you code it with MJML’s custom tags first, then compile it to the special HTML that works in emails. Here’s a sample of what the MJML code looks like:

<mjml>
   <mj-head>
     <mj-title>Hello MJML</mj-title>
   </mj-head>
   <mj-body>
     <mj-container>
       <mj-section>
         <mj-column>
           <mj-text>
             Hello World!
           </mj-text>
         </mj-column>
       </mj-section>
     </mj-container>
   </mj-body>
 </mjml>

The MJML framework gives us a vastly improved “Email an Article” feature that looks great on almost any mobile device or desktop computer. The HTML version now scales beautifully to fit the screen size of whatever device you’re using to view it, and it works even with the most troublesome email clients (I’m looking at you, Microsoft Outlook). And as a bonus, our emails now include links to share the articles to Facebook and Twitter.

I always like to end these Tech Notes with a tip for programmers, so here’s something I figured out while working with MJML that wasn’t obvious and wasn’t in their documentation.

Since I use PHP to generate the email for this feature, I build the MJML code as a string. The official docs for MJML only describe how to compile the code from a file on disk and write the resulting code back to the disk, but this seemed like way too much overhead. So I worked out a way to use PHP to pass a string into the MJML compiler and get back a string of compiled HTML code. And here it is:

$mjml = '[[ MJML CODE HERE ]]';
$html = trim(
	shell_exec(
		'echo -n ' . escapeshellarg($mjml) . ' | mjml -i -s -m'
	)
);

This uses PHP’s shell_exec command to pipe the MJML string to the MJML command line compiler, and return the compiled code in the variable $html. The trim command is in there just in case there’s some white space at the beginning or end of the compiled code.

Jump to top

Create a PageThis is the LGF Pages posting bookmarklet. To use it, drag this button to your browser's bookmark bar, and title it 'LGF Pages' (or whatever you like). Then browse to a site you want to post, select some text on the page to use for a quote, click the bookmarklet, and the Pages posting window will appear with the title, text, and any embedded video or audio files already filled in, ready to go.
Or... you can just click this button to open the Pages posting window right away.
Last updated: 2016-01-01 10:29 am PST
LGF User's Guide RSS Feeds Tweet

Help support Little Green Footballs!

Subscribe now for ad-free access!Register and sign in to a free LGF account before subscribing, and your ad-free access will be automatically enabled.

Donate with
PayPal
Square Cash Shop at amazon
as an LGF Associate!
Recent PagesClick to refresh
Trump’s Nixon-Style Enemies List So many Parallels - how much longer will the public put up with this? Reacting to The New York Times’ story that White House Counsel Don McGahn has been speaking with Robert Mueller’s team, President Donald Trump tweeted out ...
Thanos
14 hours, 8 minutes ago
Views: 84 • Comments: 0 • Rating: 0
Tweets: 1 • Share to Facebook
Shares: 0
Comments: 0
: 0
Calexico - End of the World With You (Live on KEXP) kexp.org presents Calexico performing "End Of The World With You" live in the KEXP studio. Recorded June 19, 2018. Host: MorganAudio Engineers: Martin H. Gonzalez & Julian MartlewCameras: Jim Beckmann, Alaia D'Alessandro, Scott Holpainen & Justin WilmoreEditor: Jim Beckmann ...
Thanos
6 days, 18 hours ago
Views: 175 • Comments: 0 • Rating: 0
Tweets: 1 • Share to Facebook
Shares: 0
Comments: 0
: 0
LSD - Thunderclouds (Official Audio) Ft. Sia, Diplo, Labrinth Labrinth, Sia & Diplo present LSD - Thunderclouds (Official Audio) Stream "Thunderclouds" now: smarturl.itSpotify: smarturl.itiTunes: smarturl.itApple Music: smarturl.itAmazon Music: smarturl.it Learn more about LSD and sign up for the official mailing list: droppinglsd.com Lyrics: All I need is oneOne ...
Thanos
6 days, 19 hours ago
Views: 227 • Comments: 1 • Rating: 0
Tweets: 1 • Share to Facebook
Shares: 0
Comments: 0
: 0
Half•alive - Still Feel. [Music VIDEO] half•alive’s music video for ‘still feel.’ Save on Spotify : spoti.fi Apple Music : apple.coSoundcloud : SoundCloud find half•alive on… Instagram: instagr.amTwitter: @halfalivecoSpotify: spoti.fiSoundcloud: SoundCloudSite: halfalive.co Directed / Edited / Colored by : Josh TaylorDirector of Photography : Ryan ...
Thanos
6 days, 19 hours ago
Views: 264 • Comments: 0 • Rating: 0
Tweets: 1 • Share to Facebook
Shares: 0
Comments: 0
: 0
Bands and Artists I LoveSuperorganism. Your text to link...
The Artist Formerly Known as Irenicum
1 week, 1 day ago
Views: 210 • Comments: 1 • Rating: 0
Tweets: 0 • Share to Facebook
Shares: 0
Comments: 0
: 0
Dave Grohl - Play (Official Video) PLAY more at play.roswellfilms.com Pre-order limited edition vinyl bundles and stream the song: smarturl.it “PLAY” by Dave Grohl celebrates the rewards and challenges of dedicating one’s life to playing and mastering a musical instrument. Part one opens with narrated ...
Thanos
1 week, 2 days ago
Views: 214 • Comments: 0 • Rating: 1
Tweets: 1 • Share to Facebook
Shares: 0
Comments: 0
: 0
The Seshen - Distant Heart (Live on KEXP) kexp.org presents The Seshen performing "Distant Heart" live at The Little London Plane during Upstream Music Fest. Recorded June 1, 2018. Host: Kevin ColeAudio Engineer: Kevin SuggsCameras: Jim Beckmann, Alaia D'Alessandro & Justin WilmoreDirector: Scott HolpainenEditor: Alaia D'Alessandro kexp.orgtheseshen.comupstreammusicfest.com ...
Thanos
2 weeks ago
Views: 998 • Comments: 0 • Rating: 0
Tweets: 1 • Share to Facebook
Shares: 0
Comments: 0
: 0
Retrograde PresidentProfit at any cost. American dream. President Trump. Blind destruction. BBC News: The Trump administration has overturned bans on the use of pesticides linked to declining bee populations and the cultivation of genetically modified crops in US national wildlife refuges. ...
Dom
2 weeks, 1 day ago
Views: 761 • Comments: 0 • Rating: 0
Tweets: 0 • Share to Facebook
Shares: 0
Comments: 0
: 0
David Crosby and Jason Isbell ‘Ohio’----Newport
Thanos
2 weeks, 2 days ago
Views: 1,146 • Comments: 1 • Rating: 3
Tweets: 2 • Share to Facebook
Shares: 0
Comments: 0
: 0
Activist Publishes 11,000 Private DMs Between Wikileaks and Its Supporters The DMs concern a particular group chat between the official Wikileaks account and several supporters. In the chat—dubbed “Wikileaks +10” due to number of participants—Wikileaks would coordinate smear campaigns against the group’s rivals, including journalists, according to the DMs. ...
Thanos
2 weeks, 6 days ago
Views: 1,667 • Comments: 0 • Rating: 0
Tweets: 2 • Share to Facebook
Shares: 0
Comments: 0
: 0