Blog

WAMU.org launches, powered by React.js and the WordPress REST API

Yesterday, Washington, D.C. NPR regional affiliate WAMU released a fully reimagined website in partnership with 10up. Designed to elegantly present written and audio content, we engineered a cutting-edge WordPress implementation that leverages React.js and the WordPress REST API to create an immersive single-page app experience. Visitors can listen to audio content using the player bar pinned to the bottom of the screen, without interruption, as they browse the site on a phone, tablet, or desktop browser.

wamu

Read More on WAMU.org launches, powered by React.js and the WordPress REST API

Reintroducing Windows Azure Storage for WordPress

When collaborating with Microsoft, we are often responsible for making WordPress work seamlessly with Microsoft’s own offerings, including their Azure cloud service platform. An ideal Azure hosting configuration leverages Azure Blob Storage to store and deliver uploaded media assets and attachments. Microsoft’s existing, open source solution, Windows Azure Storage for WordPress, had been neglected for years; we stepped up to overhaul the plugin.

The 4.0 release addresses legacy SDK dependencies and features a refactored code base, bringing it in line with our WordPress Best Practices.

Read More on Reintroducing Windows Azure Storage for WordPress

Introducing Twenty Sixteen React and NodeifyWP

twentysixteenreact
As web technologies and mobile devices improve and global internet speeds increase, consumers increasingly expect taps and clicks to deliver results nearly instantaneously; the “app-like” experience has become an expectation in web browsers. To this end, we’ve seen huge strides forward in web platforms and frameworks.

Among its most notable relevant advancements, WordPress introduced a JSON REST API, which opens up new, compelling use cases as a framework and content storage engine, such as headless publishing workflows. However, since WordPress runs on PHP, it can’t be used in conjunction with an important breakthrough: isomorphic applications.

Isomorphic web applications run the same code on the server and client (web browser), providing the flexibility, extensibility, and consistency to build the most modern “app-like” experiences on the web. JavaScript and Node.js are used to create isomorphic applications, since JavaScript runs natively in the web browser and is the foundation for server-side Node.js. (Learn more about isomorphic applications.)

Since we can’t run PHP in the web browser, we have a few options for creating JavaScript-powered “app-like” experiences in WordPress.

Read More on Introducing Twenty Sixteen React and NodeifyWP

Meet ElasticPress 2.0

elasticpress-square

ElasticPress 2.0 is a major update, with improvements to search result weighting, expanded query parameters, and better metadata syncing.

Tweaks to the search algorithm’s fuzzy matching limit unwanted results (i.e. searches for “yell” previously returned results for “yeti,” since the terms are only two characters apart) while still correcting for misspellings. Results are more intelligently weighted, with documents containing all search terms boosted 2x, and another 2x boost for documents matching the order of searched terms.

Read More on Meet ElasticPress 2.0

10up and ESPN launch The Undefeated

tu-logo
On May 17, 10up launched The Undefeated, the latest project in our longstanding partnership with ESPN. Like Grantland and FiveThirtyEight before it, The Undefeated examines our world through a unique lens, exploring the intersections of race, sports, and culture through “innovative storytelling, original reporting, and provocative commentary.” We’re thrilled to celebrate the release of The Undefeated, which is receiving accolades and high engagement with its community feature, You Got 99 Words.

Streamline migrating to WordPress Multisite with MU-Migration

MU_Migration_2_blue
Migrating a standalone WordPress site to a site network (or “multisite”) environment is a tedious and tricky endeavor.

The WordPress Importer works reasonably well for smaller, simpler sites, but leaves room for improvement. It exports content, but not site configuration data such as Widget and Customizer configurations, plugins, and site settings. The Importer also struggles to handle a large amount of content. Third party backup plugins that are compatible with site networks offer another solution, but they often involve slow intermediary “cloud” backup and restore steps, and the reliable solutions are mostly commercial.
Read More on Streamline migrating to WordPress Multisite with MU-Migration

10up partners with Joyent to bring WordPress to Docker

We’re proud to announce that 10up has partnered with Joyent to bring WordPress to their Docker infrastructure.

Joyent, an Infrastructure-as-a-Service (IAAS) company providing software to power their—and their clients’—cloud platforms, knows the difficulties in prepackaging software installations that can be readily moved across server environments. To solve this, Joyent uses Docker, a technology which packages an application with all of its dependencies into a standardized unit for software development. In plain terms, it creates a fully assembled, preconfigured, and portable software environment.

Docker offers several practical benefits for teams building websites and applications using repeatable configurations and industry best practices like testing environments. First, as simple as the WordPress famous 5-minute install is, it results in a default, out-of-the-box configuration; Docker helps engineers fast forward past the remaining configuration. Second, it ensures that multiple installations (local, staging, production, separate servers) mirror each other, so as to allow worry-free code deployments. We made inroads in solving this problem with Varying Vagrant Vagrants, and Docker takes that solution a step further.

Read More on 10up partners with Joyent to bring WordPress to Docker

10up client projects nominated for “Best of the Internet” awards

blog_webby_main_header_2
The 20th Annual Webby Awards, the web’s canonical awards program recognizing the best of the internet, presented their nominees last week. Nominees qualify for two awards: The Webby Award selected by a professional judging body, as well as The Webby People’s Voice Award, selected by an open vote that runs through April 21. Among the many WordPress-powered nominees, several 10up projects are in the running.
Read More on 10up client projects nominated for “Best of the Internet” awards

Clean up and secure WordPress data with WP Hammer

When making copies of a website for development and testing, populating a thorough content and data set is vital for Quality Assurance (QA). The most efficient path typically involves mirroring the entire production site’s database. But this can be problematic: a large site can have tens of thousands of posts (each with many revisions and healthy doses of metadata) and many user accounts.

Those user accounts (and sometimes the site’s content) can contain sensitive data that, if mishandled, can put clients at risk. On top of that, testing, development, and initial imports—often executed on lightweight virtual machines—can be painfully slow when working with very large datasets. Cleaning up imported production data is a must, but has been a tedious, inefficient task.

Enter 10up’s WP Hammer: an open source developer tool that quickly and efficiently reduces—or completely removes—production data and sensitive client information like email addresses and hashed account passwords from a WordPress installation.
Read More on Clean up and secure WordPress data with WP Hammer

Supercharge WooCommerce performance and search with ElasticPress WooCommerce

elasticpress-woocommerce
WooCommerce is the world’s most popular e-commerce software, available as a free WordPress plugin. Its expansive extensions library houses a number of premium extensions addressing recurring payments, different payment gateways, shipment tracking tools, and more.

Scaling open source e-commerce solutions like WooCommerce, that can be installed on infrastructures of all shapes and sizes, is challenging. Online stores typically require intensive database transactions: complex queries on both the front and back-end that filter and sort products based on several categories, stock, and properties like pricing and reviews.

Further, most shoppers depend on site search to find products. Complex filters combined with keyword search across fields heavily tax relational databases like MySQL, the underlying database used by WordPress. And of course, increased store traffic increases the number of database queries to process, making every transaction even slower. Not surprisingly, many WooCommerce sites run quite slowly.

Read More on Supercharge WooCommerce performance and search with ElasticPress WooCommerce