Introducing Simple Podcasting

When a client with several podcasts expressed interest in a simple way to manage their casts from within WordPress, we began with a review of existing solutions and plugins. We quickly identified a gap between bare bones plugins supporting a single feed and complicated plugins designed for advanced workflows, such as sponsor management. To fill that void, we created Simple Podcasting, an intuitive, lightweight, and forward looking plugin that includes beta support for Gutenberg.

Our client’s ideal user story seemed common enough: they offer several podcasts across a network of news sites, with some sites featuring multiple podcasts. They wanted to fully manage and distribute their podcast feeds inside of WordPress, albeit sometimes hosting the media itself externally. Podcasts episodes would be managed as regular posts, and appear alongside their other news, enabling visitors to play an episode right from the website or by subscribing in iTunes or any other “podcatcher.”

Read More

WP Local Docker + WP Snapshots

At 10up, we have a history of open sourcing tools that help WordPress engineers practice their craft. One year ago, we introduced WP Local Docker, a lightweight local development alternative to VVV, another popular project started by 10up. A more recent project, WP Snapshots, efficiently pushes project snapshots into the cloud.

As we increasingly used WP Local Docker and WP Snapshots in conjunction, we discovered some technical obstacles that could make WP Snapshots difficult to use. We realized that bundling the two projects would solve those problems and offer value to anyone already using both projects.

Read More

10up contributes MathML support to Google AMP

Last year, we found ourselves implementing Google AMP for a client who often includes content with mathematical formulas. The formulas were implemented using the open MathML standard, by way of the open source, JavaScript-based MathJax engine. Working around AMP’s JavaScript restriction, we put the formulas into amp-iframe components, which allow for arbitrary JavaScript execution. This workaround posed some limitations that compromised the design: formulas could not be displayed inline (inside of a paragraph), creating a slightly awkward aesthetic that didn’t quite match up with the “full” site’s presentation.

As a regular open source contributor committed to making a better web, it seemed to me that a native AMP implementation of the MathML standard would solve our client’s layout problem and help other developers and site owners. After a bit of background research, I opened an issue on Google’s open source AMP HTML project.

With a prompt and warm welcome, Google’s team accepted my feature request. This being an open source project, I volunteered to help; my offer was greeted with enthusiasm and some tips.

Formulas in iFrames and in-line

Read More

Google Chrome to aggressively enforce Better Ad Standards

As announced in June, beginning February 15th Chrome will remove all ads on websites that do not meet the standards of the Coalition for Better Ads. Sites will have 30 days to address any issues flagged in Google’s compliance report before Chrome begins removing ads.

Google started this initiative in response to a report suggesting that poor ad experiences are responsible for a 30% increase in the use of ad blocking extensions across the web, which “reduces the ability for publishers to continue creating free content and threatens the sustainability of the web ecosystem.” Google is also on the board of the Coalition for Better Ad Standards.

The Coalition for Better Ads is made up of leading international trade associations and online media companies committed to supporting “valuable free content, robust journalism and social connections across the internet” through the use of online ads. Their vision for better online ads aligns with Google’s view, and led Google to join the effort to improve how people experience the web. Knowing that consumers are increasingly frustrated with web ads, the Coalition for Better Ads surveyed over 25,000 internet users to create a set of consumer-friendly standards. Google will apply these standards to review a subset of a site’s pages.

Google Ad Experience Report

Read More

New Relic features 10up plugin

New Relic has included our New Relic Reporting for WordPress plugin in New Relic Connect, a directory that collects recommended integrations for New Relic customers. This plugin makes important WordPress data available in New Relic APM and Insights. You can now see Post ID and User ID for logged-in transactions, theme and template information and more, along with your other application data. We hope this increased visibility will lead to more WordPress developers getting the most out of New Relic.

Learn more about the plugin or download it from GitHub.

Improving WordPress Transients

Modern websites can be complex, especially when a high traffic site offers advanced features that need more intensive server processing. WordPress has a few tricks up its sleeve to help developers improve performance, but as we’ve written about before, those tricks don’t always scale.

If you’ve been engineering performant sites with WordPress, you’ve probably encountered the Transients API—a basic caching method. What developers may not know is, at scale, the synchronous way WordPress handles transients can lead to performance issues that can result in a poor user experience. That’s where Async Transients comes in, our open-source Composer library for WordPress transients.
Read More

Meet WP Snapshots: share complete snapshots of a WordPress setup

We’d like to introduce you to our latest open source project: WP Snapshots.

WP Snapshots is a command line interface (CLI) tool that empowers engineering teams to quickly share WordPress projects – including files and the database. Up until now, onboarding a new engineer onto a project has been tedious: he or she had to setup a local development environment, check out repositories, install matching versions of WordPress and any plugins, track down and import database dumps, copy over uploaded media, search and replace paths in the database, and so on. WP Snapshots turns a painstaking process into a few simple commands.

WP snapshots command example.

Read More

Ads in a Gutenberg World

Think about those times when ads were intrusive as you read a story on the web: perhaps a distracting video ad interrupting paragraphs just as you were becoming immersed in the narrative, or a tone-deaf ad showing up alongside coverage of a somber event. If you’re a content creator or publisher, think about the times when the “it’s a surprise!” nature of programmatically inserted ads has been a pain point.

As content management systems (CMS) increasingly move to “block-based” editors that are much more visually representative of the final state on the front end, we have an opportunity to design tools that better recognize and integrate advertisements as part of the editorial process. Rather than treating ads as an afterthought, what if we start treating them as a fully integrated component of the content as it’s constructed?

With our preferred CMS – WordPress – heavily investing in a new block-based editor, code-named Gutenberg, our Revenue Strategists and Platform team saw an opportunity to contribute by experimenting with handling ad placement inside of the editor. At the heart of Gutenberg is a block-based method of creating and managing your content, shifting to a unified site-wide “block” concept that further empowers content creators to make their work look just the way they want. We thought: shouldn’t advertisements be one of those blocks?

Read More

Distributor plugin: Share content between your WordPress sites

Meet the newest addition to 10up’s suite of powerful, open source tools for content creators and managers: Distributor.

Distributor is a WordPress plugin that empowers content managers to safely reuse and syndicate content across their websites, supporting sites within a WordPress multisite network and across the web using the REST API. Designed with an intuitive user experience at the forefront, Distributor integrates “push” and “pull” use cases.

The sharing interface is accessible from the admin bar when viewing a single piece of content in the editor or on the front end. Without leaving the content – and with just a couple of clicks – content managers can “push” the content to any other sites where he or she has permission to publish. Think of it as a “retweet” feature for your WordPress sites.

Shares posts across a network

Read More