Gutenberg 0.2.0 Released, Adds New Custom HTML and Cover Image Blocks

The Gutenberg plugin is moving fast with version 0.2.0 now available. This is the first release since the plugin was added to the directory last week. It includes two new block types, along with other new features, improvements, and fixes for many bugs that previously severely impaired the editor’s usability.

A new Custom HTML block allows users to add HTML and click to see a fast preview within the editor.

The new Cover Image block lets users place an image in the content with the background image fixed by default. Users can also specify text to have overlaid. Gutenberg developers emphasized that this feature should not be confused with the “Featured Image” panel which is already working in a similar way to how it has in the past.

While testing the Cover Image block with Twenty Seventeen and Twenty Fifteen, I was unable to get it working correctly on the frontend. Within the editor it works beautifully but once I launched the preview I found that, regardless of which positioning option I chose, I could not get the full image to display. The size of the image’s output was only as tall as the overlay text. If there was a right way to position it, I was unable to discover it. Bugs like these are likely to be quickly ironed out as more users begin testing.

A few of the notable fixes and improvements include the following:

  • Added button to delete a block
  • Added button to open block settings in the inspector
  • Rename “Freeform” block to “Classic Text”
  • Added support for pages and custom post types
  • Added ability to select all blocks with ctrl/command+A
  • Automatically generate wrapper class for styling blocks
  • Avoid triggering multi-select on right click
  • Avoid being keyboard trapped on editor content

As of today, Gutenberg has more than 500 active installs. The development team is planning on shipping weekly releases to the WordPress.org plugin. If you want to keep up with the releases, subscribe to the make.wordpress.org/core blog. Feedback is welcome on Gutenberg’s GitHub repository as well as in the #core-editor channel on WordPress Slack.

WordPress 4.9 to Focus on Managing Plugins and Themes, Gutenberg Targeted for 5.0

photo credit: Oli Dale

Matt Mullenweg, the overall product lead for core releases in 2017, has published an overview for what users can expect in WordPress versions 4.9 and 5.0. After the success of 4.8 and the initial release of Gutenberg last week, Mullenweg is aiming to see the plugin installed on 100K+ sites during the next few months before merging it into core. He also suggested that WordPress could put a promo for the plugin in the upcoming 4.8.1 release.

“In the meantime I think we can do another user-focused 4.9 release with the theme of editing code and managing plugins and themes, doing v2s and polishing some features we brought into WP last year,” Mullenweg said. “Weston and Mel already have some good ideas there, and we can start to discuss and brainstorm at the Dev chat next week. This will also allow the Gutenberg-driven release to be 5.0, which is a nice-to-have but not the primary driver of this decision.”

Mullenweg elaborated on changes to the release process in a post on his personal blog. The original idea was for releases to be driven by improvements to the three focus areas (the editor, customizer, and REST API), but the radical changes that Gutenberg introduces to the editing experience means that customization improvements will need to wait until the editor is a little further along:

Mel and Weston took this as an opportunity to think about not just the “Customizer”, which is a screen and code base within WP, but really thinking in a user-centric way about what it means to customize a site and they identified a number of low-hanging fruits, areas like widgets where we could have a big user impact with relatively little effort.

WordPress is littered with little inconsistencies and gaps in the user experience that aren’t hard to fix, but are hard to notice the 500th time you’re looking at a screen.

I didn’t think we’d be able to sustain the effort on the editor and still do a meaningful user release in the meantime, but we did, and I think we can do it again.

During this week’s core development meeting, contributors brainstormed more specific items for inclusion in 4.9. The ability to schedule customizer changesets is one feature they discussed as a possibility. Customizer component co-maintainer Weston Ruter described the feature as “adding statuses for changesets: being able to draft a changeset to come back to later, and then to be able to schedule it to go live.”

The Customize Snapshots feature plugin contains the UI for this and Customize Changesets, the term for the underlying infrastructure required for saving a Customizer session as a draft, was added in WordPress 4.7. Adding the UI in WordPress 4.9 would allow users to share Customizer sessions, preview them outside of the iframe, and schedule them to publish at a future date.

Andrew Roberts, a contributor to TinyMCE, said they should have a new mobile-optimized UX, which would result in a responsive toolbar, that could land within the proposed 4.9 timeframe.

“I would wonder if we couldn’t tweak the UI to be closer to Gutenberg (e.g. white toolbars),” Roberts said. “I had raised this idea before and it was thought it was better to wait until Gutenberg, but I remain of the opinion we could iterate a little bit closer to get users used to it.”

Contributors also discussed the possibility of changing the default font in the editor to ease the transition to Gutenberg in the future. Currently, Gutenberg uses system fonts for UI and Noto Serif for the editor text.

Mel Choyce, who is heading the Customizer focus with Weston Ruter, said she hopes the team can finish the Gallery Widget for 4.9. Current progress on the widget can be found on GitHub.

WordPress 4.8.1 is tentatively planned for the last week in July, and contributors anticipate including a fix for some issues with the new Text Widget stripping out code.

WooCommerce Pricing Updates and Community Backlash

WooCommerce pricing and scaling revenue for WordPress plugin shops have been a common problem for years in our industry. A couple days ago WP Tavern published an article titled “WooCommerce Drops 50% Renewal Discount on Subscriptions“. Jeff Chandler investigated the case which was not announced publicly by contacting Automattic and receiving the following response:

All customers receive notification of their upcoming renewal 7 or 15 days before a charge. If anyone received an incorrect price, please contact us immediately and we will make it right. As always, we are committed to making sure WooCommerce is affordable to the widest range of people while maintaining our high level of service and support.

WP Mayor followed up soon thereafter with a story labeled “The Biggest Opportunity in WordPress History“. Donnacha’s essay touches on the disappointment of the users and their poor experience with WooCommerce support:

Many license holders angrily responded that they had hardly ever used support, that the reputation of WooCommerce was, in any case, piss-poor, and that any support was likely to occur early in the life of the license, that someone who had been using a particular extension for more than a few months was unlikely to need any further support. WooCommerce explained that this reality was acknowledged in the fact that annual renewals were only 50% of the original cost of the extension – your subsequent years would cost half as much as your first year.

I can relate with the backlash yet the hundreds of comments seem to focus far too much on the aspect of unfair pricing.

(Not) Announcing The New WooCommerce Regulations

The lack of a public announcement with regards to doubling the renewal price is indeed worrying.

Whatever you sign up for, changing terms mid-process is unfair and extremely annoying.

I haven’t read the original Terms of Service prior to the new change, but I find it hard to believe that there was an explicit clause stating that changes can be announced at all times without any upfront notice.

Essentially, this could have been handled gracefully.

It’s probably an oversight given the complexity of transferring an 8-figure business along with the staff and onboarding it within an entirely separate organization. There could be alternative agendas in play but I’d rather not go into conspiracy theories right now.

With that in mind, I’ll rather focus on the pricing aspect, how is WooCommerce perceived and how freelancers and customers see the WordPress ecosystem as a whole.

50% Renewal Fees

The 50% renewal rate became a “de facto standard” among a good percentage of the WordPress plugin shops and businesses selling plugins and extensions. Some shops and developers still kept charging the full price, others don’t bill for renewals at all, and there are various cases of 30-70% charged on an annual basis.

This can be justified if we consider that a buyer does not receive a completely new solution every single year. Paying half the fee makes sense as you’ve already paid the full price for the product and you probably won’t receive some groundbreaking features introduced in the coming versions.

On the other hand, that’s not the case in SaaS businesses. That doesn’t work with bank loans, home rentals, electricity and phone bills, or anything else. Granted, those are priced differently and include costs that can be explained to the average consumer – with governmental taxes, network equipment, the cost of transferring data, the rental of power factories.

Both models seem feasible and somewhat reasonable in different scenarios. But they do depend on the total price for purchasing a product.

The Cost of WordPress Plugins

WordPress is notoriously known for its “race to the bottom”. It’s absolutely apparent for years to anyone who’s spent at least a year observing the WordPress ecosystem.

The WordPress themes industry has probably been lost already. Over 80% of all theme sales (if not 90%) worldwide are processed to Envato’s ThemeForest and there have been numerous conversations regarding the licensing issues with dual licensing for themes and the lack of GPL option for CodeCanyon plugins hosted on their network.

I’ve done some internal research and it seems that customers on Envato’s network are less inclined to purchase 100% GPL themes as compared to standard themes following the dual license. I find that extremely odd and there’s probably a lot of room for education and internal advocacy toward the GPL license adherence.

Regardless, WordPress plugins are extremely cheap. Yet, plenty of freelancers, small agencies, and business owners find it hard to justify the expense for a plugin complimenting their existing stack that they’ve received for free.

Open Source is Hard to Gauge

While browsing different WordPress communities online (Google+, LinkedIn, Facebook), clients are cautious and try to dodge purchasing stuff as much as possible. Many take it to an extreme by asking others willing to group for a license and use it together or asking for warez themes without understanding the implications of that (let alone the moral aspect and violating the terms of the authors).

With that in mind, there’s some merit when you think about the bigger picture. Consider how much WordPress does behind the scenes for free. Then think of a plugin and how much more “extra” would it add to the platform while asking for $100 or so.

Clients can’t seem to understand the added benefit of 1% or 2% on top of their existing features that they have received for free.

Especially when there is a comparable set of features somewhere on WordPress.org or GitHub that resemble the premium functionality.

This is not a problem of WordPress itself, nor is an issue with authors. But it’s an important problem that we all have to keep into account when discussing plugin costs.

I love the approach that my friends at Tyche Softwares have implemented for their plugins. For example, the Booking & Appointment extension for WooCommerce has the following statement on its sales page:

Seem a little pricey at $119? Some quick math… say you charge $40 per hour. Then 3 hours of your time is worth $120. So, this plugin only needs to save you 3 hours to pay for a Single Store License!

Now, that’s a different story. Not only is the plugin extremely complex and feature-rich, but there is a distinctive comparison between what you get for $119 and how long would it take you to build the feature set yourself, even if you were a programmer. I know the folks at Tyche myself and I know first-hand that they have spent thousands on hours in refining features and constantly incrementing the number of awesome features available in their plugin.

WooCommerce and Extension Costs

With that in mind, WooCommerce extensions, plugins, or add-ons are still dirt cheap. I know that people love mentioning Shopify or other relevant platforms.

But Shopify also includes extra transaction charges. And that’s something that you won’t get asked for when purchasing a WooCommerce extension and hosting your website in-house.

According to their pricing page, you can go for $29/month and allocate 2.9% + $0.30 from each transaction you process, or $299/month with 2.4% + $0.30 for each sale.

Not only does Shopify take a cut on your sales, but you still have to pay $348/year for the cheap plan or $3,588/year with the advanced plan they offer if we account for the monthly payments.

Oh, by the way, you don’t receive a 50% discount annually, either. It’s a SaaS – you don’t host it yourself but you also don’t have control over your own data and can’t implement every other feature that you may wish for (such as a training platform for your VIP customers, a membership toolkit, a forum, a social network where customers can interact, a random marketing automation toolkit, an AI-driven relevant product service that you’ve purchased and so on).

Shopify provides a number of add-ons that you can leverage and some are indeed powerful. But if you want your shop to grow with time and introduce additional features as a fully-fledged eCommerce platform, that won’t suffice.

IBM sells an eCommerce platform called WebSphere Commerce for a while now. It targets larger enterprises but also smaller businesses that don’t generate as many sales.

The pricing terms aren’t quite transparent but here’s a review by cpcstrategy that mentions some numbers:

For the Express package, you’re looking at $5,030 cost for the user license and subscription fee. In addition to that, you’ll need to pay $327 per PVU. Let’s say you have an IBM Power Systems core with a Linux operating system, which clocks in at 70 PVUS. In this scenario, your PVU fees would come in at a total cost of $22,890. Add that to the licensing fee, and you’re at just around $28,000 (for 1 year).

Again, that’s uncommon and probably a massive overhead for small businesses. But if you want your eCommerce store to grow, you can not settle for less than a hundred bucks a year or even a few grand since your platform has to scale with your growth.

You get some added charges on Amazon or AliExpress as well and comparing that to a self-hosted solution is certainly something that customers keep into account when picking their own platform.

The eCommerce and WooCommerce Business

When I discuss pricing with customers, I hear the standard objections and comparisons with low-cost alternatives on the market. Magento is one of the popular alternatives. But Magento is an extremely complex platform to modify and the cost for adding custom features and integrations that don’t exist is often 5-10 times more expensive as compared to an WooCommerce provider specializing in custom extensions.

Speaking of which, WooCommerce performance often comes on top of WordPress and what you can get from a managed WordPress host or even a plugin like W3 Total Cache or WP Super Cache for free. Here’s what you can purchase for caching from Magento’s marketplace:

Sure – there are various free solutions or cheaper extensions. But case in point is being the amount of flexibility and the feature set that you get from WordPress without even considering the options available for other platforms such as Magento (for $799.99 in this case).

Another thing that I also consider is the fact that an WooCommerce store is directly selling thanks to the underlying platform. While a 5-page business website may be there simply to provide contact details or a brief description of a company (something that you can place on a Facebook page now), an eCommerce store is designed to sell.

Which means that the better and more powerful it is, the higher conversions you will get and the more profit you’ll yield out of your platform.

I certainly understand the frustration for the non-transparent license fee update. But I can’t relate with the expectations for receiving a powerful eCommerce platform at little to no cost and expecting to earn a fortune off it.

As Devin has said on the Tavern comments in the thread above:

However, I applaud the change to remove renewal discounts. WordPress products for too long have been price too low and undervalued. Think about it. When is the last time you got a renewal discount for anything outside WordPress? Netflix no, HelpScout no, GitHub no. So why should WordPress products be any different?

Support for eCommerce Shops

Both WooCommerce and Easy Digital Downloads host marketplaces on their websites and sell extensions built by their core teams and 3rd party developers. We sell a few Easy Digital Downloads extensions so we’re familiar with the pricing structure of the shop. Currently, EDD charges 50% of all sales processed through their marketplace (exclusively) and handle first-tier support.

Pippin has increased the prices for EDD lately which has yield better results for them and their team. He has elaborated on the price increase by reflecting on the positive impact and the better processing times handled in-house.

Granted, as a service provider, we’ve also seen some support issues for some of our clients. It takes a lot of time and back and forth. The core EDD team can’t analyze the code base of each and every 3rd party extension out there so a good chunk of the support goes back to vendors who have to figure it all out.

But things are better now where the price jump has filtered some customers and let to some room for improvement in the support department.

As plenty of respondents on WP Tavern and WP Mayor have enumerated support issues with WooCommerce, a possible option would be selling support separately. Vendors such as WPML have compiled a list of 3rd party vendors specializing in maintenance and support. One of our brands is listed in both their WPML and Toolset lists and we receive at least one inquiry monthly for product improvements and adjustments that appear to be “out of scope”.

Clients are completely satisfied with their policy and don’t hesitate to reach out and pay for updates. Sure, core plugin issues are still handled by the core teams, but anything else is considered to be scope creep and there are vendors who specialized in similar activities.

On top of that, the basic Toolset version costs $69/year and most of our inquiries are for $300-$1,000 with some exceeding the $1K mark.

Core Platform Improvement and Overhead

Support is definitely a challenging activity for all service providers. More often than not, maintaining our extensions or even analyzing a problem that happens to be a conflict with a premium theme costs more than our own sales for the month.

I am curious what percentage of the costs and time spent by the core WooCommerce and Easy Digital Downloads teams is spent on support. I won’t be surprised if the support overhead is not worth it at all even with the 50% sales cut. I can also foresee tons of innovation, performance and security improvements, and new features introduced if support was not provided within the price at all.

Core plugin bugs on a clean WordPress install is one thing. Incompatibility with a random theme or a dozen plugins downloaded from anywhere is what makes the process so clumsy, time-consuming, and expensive.

As a customer, I rarely ask for support for any of the plugins or extensions we’ve purchased. Most companies maintain detailed documentations for their products, FAQ pages, and open support forums discussing the most common problems or incompatibilities.

The fact that the presales process is cut short is not necessarily a problem of the vendor. But expecting rockstar support within less than a hundred bucks a year questions the viability of the business model at that cost – especially when considering the expected improvements and innovation on a year-to-year basis.

Our community should work together on solving these problems and finding the best working model that suits best both starting customers, and businesses that aim to sell products through WooCommerce or other WordPress-driven platforms for a living. Fixating into a single extreme would not let WooCommerce scale further and provide a diverse set of features suitable for startups, and enterprise-grade shops.

The post WooCommerce Pricing Updates and Community Backlash appeared first on Mario Peshev.

WordPress’ New Gutenberg Editor Now Available as a Plugin for Testing

One of the featured sessions at WordCamp Europe 2017 was Om Malik’s interview with Matt Mullenweg, followed by a 20-minute Q&A from the audience. After showing a preview of the new Gutenberg editor with dynamic blocks replacing widgets, Mullenweg announced that it is now available as a plugin on WordPress.org.

Gutenberg has been in development for six months and is ready for testing, but its developers do not recommend using it on production sites. Anyone interested in the future of WordPress will want to take it for a test drive, as the new editor will revolutionize the way users think about creating and editing content. The demo video at WordCamp Europe also showed Gutenberg working smoothly in a mobile context.

At first glance, it may appear that WordPress is trying to copy its more recent competitors (Medium, Wix, and others) to keep pace, but the 14-year-old software has offered many of these content capabilities for years. Mullenweg explained how the new editor simply unifies the UI into blocks that can be placed anywhere. Gutenberg is set to replace widgets, the HTML UI of shortcodes, and blocks previously offered through the TinyMCE toolbar.

“We’ve taken stabs at this before, if you imagine our previous efforts with post formats – to make it easier to do certain types of media or quote posts or things like that,” Mullenweg said. “That whole concept can now flatten to just being a block. Working all that in, it’s bringing things we’ve been thinking about for a very long time in WordPress.”

If you’ve ever sat down with a new user to introduce them to WordPress, then you probably answered a long list of painful questions regarding the many varied and confusing ways of creating content. Gutenberg has the potential to make WordPress much easier to use.

“Right now WordPress makes you learn a lot of concepts – shortcodes, widgets, the stuff that exists inside TinyMCE as blocks today – and people rightly wonder why they can’t use those things everywhere,” Mullenweg said. “What we’re trying to do is shift it so that you only have to learn about blocks once and once you learn about the image block, that can be in a post, in a sidebar, in a page, in a custom post type, and it will work exactly the same way. Whatever is integrated with it, let’s say a plugin that brings in your Google Photos or your Dropbox, that will now work everywhere, too.”

Mullenweg said his previous attempt at replacing TinyMCE lasted approximately two years and they never ended up shipping it. Getting Gutenberg off the ground at this time allows WordPress to take the best of what competitors in both open source and commercial spaces have been doing, and improve upon it.

“Medium started five or six years ago,” Mullenweg said. “Browser technology, what you can do, has advanced quite a bit. I think this actually allows us to leapfrog past some of the really great visual editors, because we’re able to build on the shoulders of things like Medium, Wix, Squarespace, and others that have come before us.”

Gutenberg First Impressions and Concerns

The Gutenberg plugin is now active on more than 300 sites and first impressions are rolling in. This is the first time the new block editor has been easily accessible to any user who wants to try it. Gutenberg also offers a somewhat unique testing experience in that it creates its own menu inside WordPress, so users don’t have to choose between the old editor and the new one. Activating Gutenberg doesn’t make it an either/or experience and users can test at their own convenience.

From my initial testing, I found that Gutenberg provides a clean and enjoyable experience. Up until this point many of us couldn’t fully anticipate what Gutenberg would look like, but the interface is very similar to what one might imagine for an improved “distraction-free writing experience.” Gutenberg provides a more minimal UI for both the visual and text editors, although inserting blocks seems to be less functional when using the text editor.

There are still many bugs and rough edges, but this interface appears to be a natural evolution of WordPress’ content editing experience. It feels like WordPress. The editor pulls in many of the elements that have worked well historically and introduces a minimal UI that makes it possible for anyone to build a beautiful, feature-rich post without knowing any HTML. Gutenberg is the most exciting thing to happen to WordPress in a long time.

“The default state is likely my favorite ‘Distraction Free Writing’ implementation in WordPress yet,” WordPress core committer Aaron Jorbin said in a post listing his initial observations. I’m simultaneously able to focus on my content, and yet I have all the tools I need for writing. I don’t have all the tools I need for content creation.”

Matt Cromwell, co-author of GiveWP, also wrote up his first impressions of Gutenberg with high compliments for the new writing experience.

“In recent years we’ve seen Medium become the de facto elegant writing experience,” Cromwell said. “Medium is able to do that though by limiting the formatting and layout options dramatically. Gutenberg has the potential to allow writing to be as elegant as Medium or more so, plus deliver far more flexibility with layouts and content types.”

One area of uncertainty for WordPress developers is how Gutenberg will handle support for plugins and maintain a high level of performance with a large number of custom blocks added.

“I miss a lot of the meta boxes I’m used to seeing on the screen,” Aaron Jorbin said. “Things like Yoast SEO (on some sites) and custom taxonomies are just not shown. If every metabox ever made for WordPress needs to be remade, it sure is going to make developers’ lives a living hell.”

Matt Cromwell also detailed a nightmare scenario of having more custom blocks than the current UI can handle.

“What happens when you have 25 plugins that all want to load 25 custom blocks into that tiny ‘Insert’ dropdown?” Cromwell said. “Will there be a search? Or will it just scroll forever?”

Mullenweg specifically addressed some of these concerns in his Q&A session at WordCamp Europe.

“A lot of people have a lot of things built into the edit screen, so part of the reason we’re putting it out there as a plugin first and also pushing it so hard to get as many people to install it as possible, is so that everyone who has posting and editing screen adjustments can rethink them to be beautiful within this new framework,” Mullenweg said.

Mullenweg anticipates that WordPress will release version 4.9 before merging Gutenberg, because he wants to see it tested on more than 100,000 sites before replacing the edit screen. If all goes well, the new editor could land in WordPress 5.0.

“I think that some things that people did, like TinyMCE toolbar things, aren’t really needed any more,” Mullenweg said. “Stuff that people did in the past with custom post types might be better as blocks. It gives us a real opportunity to reimagine a lot of the user interactions and flows that today we’ve taken for granted on the edit screen for five or six years.”

Check out Mullenweg’s WCEU 2017 interview below to see the live demo of Gutenberg and make sure to take a few minutes to install the plugin to see it in action for yourself.

WordPress Marketing Team Launches Case Studies and Usage Survey for Agencies, Clients, and Enterprises

photo credit: Lukasz Kowalewski

WordPress’ Marketing Team has launched a set of surveys to gather case studies and usage data from agencies, clients, and enterprises, with the goal of providing more resources for adoption. The Usage Survey was created to capture feedback on the factors that influenced an organization to select WordPress as well as any barriers to using the software. The team plans to use use the data to provide resources, such as fact sheets, FAQs, case studies, testimonial videos, and other marketing materials.

During the State of the Word address in 2016, Matt Mullenweg said the project could no longer get by on “marketing happenstance” but needed to form a more coordinated effort to counter the millions of dollars that proprietary systems are spending marketing their products against WordPress. These research surveys are one of the first steps in that direction, along with the WordPress Growth Council that Mullenweg formed to bring together more people with large-scale marketing expertise.

With the proliferation of user-friendly, DIY commercial website solutions, WordPress has reached a critical time where the project needs to shed its image as a clunky, legacy CMS and demonstrate why it’s the market leader. This not only requires WordPress to deliver from a technical standpoint, especially in the areas of editing and customization, but also requires the 14-year-old project to step up its marketing efforts.

WordPress’ Marketing Team exists to “help people market WordPress as open source software and the WordPress community.” The need is evident, as even the most experienced WordPress professionals struggle to properly articulate the difference between WordPress.com and the self-hosted software in a way that newcomers can understand. This is an intractable marketing problem for the self-hosted community.

David Skarjune, a contributor on the Marketing Team who helped put the surveys together, describes the problem that WordPress professionals face in marketing the free software:

Here we have the classic WordPress.COM and WordPress.ORG duo that encompasses the nature of the WordPress free software system. This twosome drives the project and sometimes it drives us crazy—only because it instills wide-eyed confusion trying to explain these companion entities to the rest of the world. Simple enough: get a free blog at .COM or get free software and help at .ORG. However, free software makes no sense to the average person, and too many writers, marketers, and designers don’t much care how the InterWebs actually operate.

The confusion between WordPress.com and self-hosted WordPress is just one of the many factors that make the software a unique marketing challenge. Mario Peshev, CEO of DevriX, identified many more obstacles that enterprises find in using WordPress. Several of these include misconceptions about security, scaling, and limitations for functionality beyond blogging. WordPress’ Marketing Team aims to provide agencies with free resources to combat common misconceptions and show real-world examples of where the software is quietly powering enterprise websites behind the scenes.

If you have an interesting example of how WordPress solved a client’s needs, feel free to submit a case study. If you represent an organization that is using WordPress and can offer feedback on why you selected it and any obstacles you continue to face, please take the WordPress Usage Survey. Both surveys will be open through July 14, 2017, and the results will be published on WordPress.org.

WordPress.com Usability Issues

Every few month I need to use WordPress.com to create or update a site for a friend. And every time I get frustrated with how confusing and convoluted the user interface is.

“Reader” is the default homepage

WordPress.com dashboard

WordPress.com is about publishing so why do I get to see the empty “Reader” as my homepage? Getting to the actual site dashboard requires an additional click or even more if the site is not your default site.

Adding a new site is impossible

WordPress.com add new site link

For logged-in users the only link to adding a new site is grayed out and hidden in the bottom left corner of the “Switch Site” section. I tried everything from visiting the homepage, my profile page to manually entering random URLs such as wordpress.com/new before I found that link.

Custom domain email settings don’t include MX records

WordPress.com custom domain settings for email MX records

The “Email” tab of the domain settings includes only an upsell for the Google Apps. Adding the MX records for an existing account is only possible under the individual domain “DNS Records” which is another three clicks away. Why not link to that section from the “Email” tab, too?

Overwhelming upsells

WordPress.com upsells

I already pay for a custom domain and I don’t need the banners reminding me of features I don’t need.

Invited users are invisible

WordPress.com invited users

There is no way to see users that have been invited to the site.

What about you?

These are just the highlights of what I could remember this morning. Do you also have things you find confusing on WordPress.com? What about the WP-Admin section 😊


Never lose a single business lead or enquiry again! Get my latest plugin Storage for Contact Form 7 now!

Buy now for only $19 →

How to Embed a Google Form in WordPress

Do you want to embed a Google form in WordPress? Google Forms are easy to embed anywhere and are particularly useful when you need to share the form on multiple websites. In this article, we will show you how to embed a Google form in WordPress.

How to Embed a Google Form in WordPress

Google Forms vs WordPress Form Builders

Some of you may be thinking that why would anyone want to use Google Forms when there are amazing form builder plugins like WPForms?

It is true, that WordPress form builders are easier to use. They are integrated into your WordPress site, so you can show users a special offer, accept payments, create custom login forms, user registration forms, and more.

However, sometimes you may need to share a form on different websites, email lists, and platforms so that all form responses are stored at the same location.

In such situations, Google Forms can be an easier option. It is easy to share, mobile friendly, and gets the job done. All responses are stored in your Google Drive, and you can even add collaborators to work on the form responses.

How to Embed a Google Form in WordPress

First you need to visit the Google Forms website. If you haven’t already created a form, then select a template to start a new form.

Creating a new form in Google Forms

Creating a new form in Google Forms is quite simple. First you need to provide a form title, description, and then you can start adding your form fields.

Google’s AI technology automatically selects the correct form field based on the question you ask. If it selects incorrect field type, then you can manually select it.

Adding form fields in Google Forms

You can click on the add button in the menu to add a new form field. You can also add images and videos.

Once you are satisfied with your form, click on the send button to get the embed code.

Get form embed code

This will bring up the send form popup where you need to click on the embed tab. Next, click on the ‘Copy’ link to copy the embed code.

Copy your Google Forms embed code

After that head over to your WordPress site’s admin area and edit the post or page where you want to display the form.

On the post edit screen, you will need to switch to the text editor and then paste your form code.

Paste Google Forms embed code in WordPress post

Don’t forget to click on the save or publish button to save your changes.

You can now preview your post or page to see the Google form embedded in WordPress.

A Google Form embedded in a WordPress page

We hope this article helped you learn how to easily embed Google Forms in WordPress posts and pages. You may also want to see our list of 19+ free Google tools every WordPress bloggers should use.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How to Embed a Google Form in WordPress appeared first on WPBeginner.

Search Issues

You may have noticed that search is acting up. Per @dd32:

w.org is experiencing a few network issues at present in the datacenter, it’s likely that connectivity between the API and wp.com’s elastic search is up-and-down, and when it’s down, search will be offline.

Yes, that means search for plugins too.

There’s nothing to do but wait at this point. It may be up and down while the connectivity is being sorted.

How WordPress Actually Works Behind the Scenes (Infographic)

Have you ever wondered how WordPress actually works behind the scenes? For most users, it seems simple because you type a URL and a page loads in few seconds, but there is a lot that happens behind the scenes. In this guide, we will walk you through how WordPress actually works behind the scenes, and we have created an easy to follow infographic as well.

How WordPress Works Behind the Scenes

Why You Should Learn How WordPress Works?

WordPress is an open source software, which means any one can study its code and write their own apps (plugins) and templates (themes) for it.

Learning how WordPress works and what goes on behind the scenes can help you understand what you can do with it. You can learn about improving WordPress performance and write better code for your own projects.

This guide will walk you through the whole process step by step. We will start from when a user requests a page and end when that page is fully loaded.

Ready? Let’s get started.

Click to View the Behind the Scenes WordPress Infographic

You can also follow our written tutorial below for more details.

1. Load wp-config.php File

The wp-config.php is the WordPress configuration file. It sets global variables for a WordPress site and contains your WordPress database information. This is the first file WordPress loads for obvious reasons. Learn more about wp-config.php file and how to edit it.

2. Setup Default Constants

After loading wp-config.php file, WordPress will move on to set default constants. This includes information like default WordPress upload location, maximum file sizes, and other default constants set in wp-config.php file.

3. Load advanced-cache.php File

If advanced-cache.php file exists on your site, then WordPress will load it next. This file acts as a drop-in file and is used by several popular plugins particularly WordPress caching plugins. If your site is using this file, then you will see a new item on the plugins screen called Drop-ins.

advanced-cache.php file appearing as drop-in

4. Load wp-content/db.php File

WordPress allows developers to create their own database abstraction layers and load them in a db.php file placed inside the wp-content folder. It is commonly used by WordPress caching plugins to improve database performance. If your website has this file present, then WordPress will load it.

5. Connect MySQL and Select Database

WordPress now have enough information to proceed further. It will move on to connect to the MySQL server and select the database.

If WordPress is unable to connect to the database, then you will see the “Error establishing database connection” error and WordPress will quit right here.

If everything works fine, then it will move on to next steps.

6. Load object-cache.php or wp-includes/cache.php File

WordPress will now look for object-cache.php file. If it doesn’t exist, then WordPress will move on to load wp-includes/cache.php file.

7. Load wp-content/sunrise.php File

If it is a multisite network, then WordPress will now look for sunrise.php file if it exists in the wp-content folder.

8. Load Localization Library

WordPress will now load l10n.php library in the wp-includes folder. This file loads WordPress localization system, loads translations, sets locales, etc. See our guide on how to use WordPress in other languages.

9. Load Multisite Plugins

If it is a multisite network, then WordPress will now load the multisite plugins. Learn more about how plugins work on WordPress multisite network.

Network activated plugins

10. Do Action ‘muplugins_loaded’

The action muplugins_loaded is now run by WordPress. This action is available only to network activated plugins on a WordPress multisite.

11. Load Active Plugins

WordPress will now load all active plugins on the site. It does that by looking in the active_plugins entry in the options table of your WordPress database. This allows WordPress to ignore plugins that are installed on your site but not activated.

12. Load pluggable.php File

The pluggable.php file contains functions that can be redefined by WordPress plugins. WordPress will now see if the functions inside this file are already defined by another plugin. Otherwise, it will define those functions itself.

13. Do Action ‘plugins_loaded’

WordPress will now run the action ‘plugins_loaded’. It allows developers to hook their functions to run after all active plugins have been loaded.

14. Load Rewrite Rules

WordPress will now load the rewrite rules. These rewrite rules help WordPress use SEO friendly URLs.

15. Instantiate $wp_query, $wp_rewrite, $wp

At this point WordPress loads the following objects:

$wp_query: The global instance that holds WP_Query class. It tells WordPress what content is requested in a typical WordPress query format.

$wp_rewrite: The global instance that holds your WP_Rewrite class. It contains your rewrite rules and functions which tell WordPress which URL to use to display the requested content.

$wp: The global instance of the WP class which contains functions that will parse your request and perform the main query.

16. Do Action ‘setup_theme’

WordPress will now move on to run ‘setup_theme’ action. This action runs before your WordPress theme is loaded.

17. Load Child Theme’s functions.php File

The functions.php file acts as plugin and is used in WordPress themes to add theme specific features to your website. If you are using a child theme, then WordPress will now load your child theme’s functions.php file.

Otherwise, it will go on and load your current active theme’s functions.php file.

18. Load Parent Theme’s functions.php File

If you are using a child theme, then WordPress will now load your parent theme’s functions.php file.

19. Do Action ‘after_setup_theme’

This action runs after WordPress has setup the theme and loaded theme functions. It is the first action available to themes.

20. Setup Current User Object

At this point, WordPress loads the current user object. It allows WordPress to manage the request in accordance with the user’s role and capabilities.

21. Do Action ‘init’

WordPress has so far loaded all the crucial information it needs. Now it fires the ‘init’ action.

This action allows developers to add code that needs to be executed after WordPress has loaded all previously mentioned information.

22. Do Action ‘widget_init’

The widget_init action allows developers to register widgets and run code they needed to run at this time.

23. Run wp()

WordPress now calls wp() function which is located in wp-includes/functions.php file. It sets up the WordPress query globals $wp, $wp_query, $wp_the_query and then calls $wp->main.

24. Parse Request

Now WordPress has all the information it needs to parse the user request. It starts by checking the rewrite rules to match the user’s request.

And then runs query variable filters, request action hook, and sends header request.

25. Run Query

If no content matches the query, then WordPress will set is_404 variable.

Otherwise, WordPress will go on to load query variables.

It will then run WP_Query->get_posts().

Next, it fires DO_ACTION_REF_ARRAY ‘pre_get_posts’ action with WP_Query object.

WordPress will now run apply_filters to clean up query and run some final checks.

Now it fetches posts from the database and applies posts_results and the_posts filters.

The query part ends with WordPress returning the posts.

26. Do Action ‘template_redirect’

WordPress will now run the template_redirect action. This hook runs just before WordPress determines which template page to load.

27. Load Feed Template

If the requested content is a RSS feed, then WordPress loads the feed template.

28. Load Template

WordPress will now look for the template file based on WordPress template hierarchy. It then loads the template which usually contains a WordPress loop.

29. Do Action ‘shutdown’

Just before ending all PHP execution, WordPress fires the last action called shutdown.

WordPress stops working here. It has run the code and generated user’s requested web page.

Now, your web hosting server replies to user’s request by sending them the web page generated by WordPress. This page contains HTML, CSS, and Javascript code, which tells user’s browser how to display it on screen.

Amazing isn’t it? All these things happen within milliseconds. If you are using one of these best WordPress hosting services, then ideally your page will load in a couple of seconds.

We hope this article helped you learn how WordPress works behind the scenes. You may also want to see our step by step guide on how to boost WordPress speed and performance for beginners.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How WordPress Actually Works Behind the Scenes (Infographic) appeared first on WPBeginner.

How to Add Animated GIFs in WordPress

Do you want to add animated GIFs in your WordPress blog posts? Sometimes when you add an animated GIF in WordPress, it loses the animation and appears as a plain static image. In this article, we will show you how to properly add animated GIFs in WordPress.

How to add animated GIFs in WordPress

Why Animated GIFs Become a Static Image in WordPress?

WordPress comes with an easy to use media uploader which allows you to add images to your WordPress posts or pages. When you upload an image using the media uploader, WordPress automatically creates several copies of that image in different sizes.

There are three default WordPress image sizes: thumbnail, medium, and large. It also keeps your original image in full size.

Image sizes in WordPress

When creating new image sizes for animated GIFs, WordPress ends up saving only the first frame of the GIF.

Now if you add any of those image sizes into your post or page, they will be static GIF images with no animation.

Having said that, let’s take a look at how to properly add animated GIFs in WordPress without losing animation.

Properly Adding Animated GIFs in WordPress

First, you need to edit the post or page where you want to add the animated GIF and click on the Add Media button.

Add media

This will bring up the WordPress media uploader popup. You need to click on the upload files button and select the animated GIF file from your computer to upload it.

After uploading the file, select the ‘full size’ under the ‘Attachment Display Settings’ section on the right.

Select full size

After that click on the ‘Insert into post’ button to continue.

WordPress will now insert your animated GIF in the post editor.

This full size image is the original animated GIF you uploaded to WordPress. You will be able to see the animation right away in the visual post editor.

Preview of an animated GIF in WordPress post editor

You can now continue editing your post or save to preview it.

Bonus Tips on Using Animated GIFs in WordPress

Animated GIF images are usually larger in file size than other image files. That’s because they contain several compressed images used as frames to create the animation.

Adding too many GIF images on a WordPress page can slow down your website. See our ultimate guide on how to improve WordPress speed and performance for more details.

If you use Giphy to find animated GIFs, then you may find the Giphypress plugin to be very useful. It allows you to search the Giphy database from your WordPress admin area and add GIFs without leaving your site. For more details see our guide on how to add GIFs from Giphy in WordPress using Giphypress.

We hope this article helped you learn how to add animated GIFs in WordPress. You may also want to see our list of 22 great WordPress plugins for managing images.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How to Add Animated GIFs in WordPress appeared first on WPBeginner.

Take a sneak peek at WP Super Cache

WP Super Cache is a full page caching plugin for WordPress that makes your site faster, and helps deal with unexpected surges in traffic.

Over the last few months we’ve been busy working on the plugin to add new features and fix bugs and we can almost call it ready. It’s stable and usable and runs on this site but we would love more people to test it out before we release a new version.

Here’s just some of the new features and bug fixes we’ve been working on:

  • The plugin was based on WP-Cache which stored cache files in a single directory, and those (legacy caching) files were for the most part stored the same way all this time but now they’re being placed in the supercache directories (#177). This makes it easier to manage these files. The plugin doesn’t have to search through potentially hundreds of cache files for those that need to be deleted if a page updates or someone leaves a comment. Now all those files will be in the same directory structure the anonymous “supercache” files will be. I’m really excited about this feature as it makes caching for logged in users/users who comment and caching of pages with parameters so much faster now.
  • We’re adding a REST API to the plugin because in the future not everyone is going to use wp-admin to take care of their sites. Take a look in the rest directory for the code we’re working on.
  • Debug logs now have a username and password to protect them from prying eyes.
  • And many bugs fixed over the last few months.

Since “legacy caching” or “WP-Cache caching” is now more maintainable and faster we want to change the language describing how the plugin caches and delivers pages.

Currently the plugin asks you to choose between mod_rewrite, PHP and “Legacy page caching” which isn’t really useful. Most users won’t recognise those terms. It’s also not accurate as “legacy page caching” is active all the time as long as caching is enabled.
Instead we should have “Standard Caching” and “Super Caching”. Super Caching will then have simple and expert delivery methods.

Simple delivery is through PHP, while expert delivery uses mod_rewrite rules which means the .htaccess file has to be updated and hopefully the warning below it will discourage casual users from testing it.

Due to the huge number of changes in the plugin we really need people to give it a try and check if everything works ok. The changes to the settings page will hopefully make it easier for new users to get to grips with it too.

You can find the newest code on Github. The changes to the settings page are in #255 if you want to comment on them.

Thanks in advance! 🙂

Related Posts

Source

Quora AmA Recap – Enterprise WordPress Development Business

I’ve been spending plenty of time on Quora over the past months. In fact, it probably is my primarily place online – excluding work-related activities with my team, clients, and partners.

It’s a brilliant platform for various reasons:

  • I educate myself on areas where I lack enough expertise.
  • validate my theories through the answers of others.
  • I receive instant feedback on my comments and answers through views, upvotes, and the overall ranking system.

Some of my answers have been republished on Forbes, Inc, HuffPost, Apple News.

I also follow a number of CEOs and directors from companies that I respect and employees of product organizations that I use or monitor closely. It’s certainly a lot of fun.

Last week – during my holiday out of town – I saw that my account was eligible for taking questions on a specific topic. This feature had been available for Top Writers and high-level influencers for some time now. They’re now slowly rolling it in for other groups of users in different tiers.

Topic: Enterprise WordPress Development Business

I took a test run taking questions on one of the topics that I specialize in – being “WordPress Development” in the context of Enterprise WordPress Development Business.

At DevriX, we mainly work with small and medium-sized enterprises and rapidly growing startups. Even though we provide retainer services for a couple large enterprises generating tens of billions in annual revenue, SMEs have been an integral part of our business and culture.

Since the majority of the WordPress vendors out there do focus on certain verticals or small businesses, I always find that to be an intriguing topic to discuss.

With that in mind, here’s the list of answers I covered during my AmA session.

  1. How do I get started in the enterprise WordPress development business?
  2. What are the advantages of using WordPress over other website creation tool in creating websites for enterprises?
  3. What are some of your favorite industries to work with in your WordPress development business — ones that make a good fit as clients?
  4. How many years of experience in programming should I have before venturing into an Enterprise WordPress development business?
  5. How can you attract an enterprise company to choose a solution with WordPress, instead of another CMS or a custom solution build from scratch?
  6. Can you recommend some handy tools/software needed for starting an Enterprise WordPress development business?
  7. What are the most effective ways you’ve found to market your enterprise WordPress development business besides referrals?
  8. Do you believe that the WordPress development business is growing exponentially and there will be more and more platforms powered by WP itself?
  9. How did you get DevriX to the enterprise level?
  10. What are the pros and cons of working with big enterprises?
  11. What are some key differences between handling small-medium clients vs serving an enterprise?
  12. How are you fighting the “blogging platform” stereotype when selling a WordPress solution?
  13. Why do enterprises choose WordPress?

While I had to stick to shorter responses in order to take on as many questions during the AmA, the overall topic was on point and it gives some food for thought for WordPress developers who haven’t worked with enterprises yet or are simply not as experienced in sales, negotiations, pitching proposals or working directly with different types of clients.

If you have any follow-up questions accordingly, request an answer on Quora or jump in the comments section below.

The post Quora AmA Recap – Enterprise WordPress Development Business appeared first on Mario Peshev.

Vue.js Creator Evan You Weighs in on WordPress JavaScript Framework Discussion

photo credit: JSConf China

Last week WordPress core contributors narrowed their considerations for a new JavaScript framework to React and Vue. As the core team has more collective knowledge of working with React, they have reached out to developers with different experiences of using other frameworks in a WordPress context.

One of the chief concerns contributors have regarding Vue is the longevity of the project. I asked Vue creator Evan You if he could weigh in on the topic to give WordPress contributors a better understanding of the project, specifically regarding his efforts to cultivate additional maintainers to help share the load of maintainership.

“I think it’s important to look at the track record – Vue has been around for almost 4 years, and all the work has been done in public on GitHub so anyone can go and check the maintenance history,” You said. “While it has been largely developed by me, the current maintenance is a lot more community-driven. We have active core team members triaging most of the issues and a larger and larger percentage of the issues fixed by community PRs. So – yes, I had already been working on cultivating additional maintainers and will continue to do so.”

You currently receives $10K/month from recurring Patreon donations that fund his full-time efforts working on Vue. Prior to this he also worked at Google and Meteor. During his time at Google, some of the projects You worked on used Angular, which he said he found to be too heavy for his use cases at the time. He built Vue.js to be a more lightweight implementation of the concepts that he liked about Angular.

You also recently said he has learned quite a bit from the React community, which has influenced some of his technical decisions in Vue 2.

“First, Vue 2 uses the same Virtual DOM based rendering model underneath, which was first pioneered by React,” You said. “Introducing a Virtual DOM allowed Vue to expose the power of vdom composition while maintaining the approachability.

“The React community is also very active when there are new problem domains being explored – e.g. state management and CSS management. There are many competing solutions and a lot of inspirations when I was implementing official solutions for Vue.”

Evan You Addresses WordPress Core Contributors’ Misconceptions about Vue.js

You said he has been following WordPress contributors’ discussions on React vs Vue but would not offer an opinion on which is a better choice for the project.

“My answer would obviously be biased, and honestly I’m not in the shoes of the WP core team so I don’t have enough perspective to make a choice,” You said. “However, I can provide feedback on some of the issues being discussed in hope of helping them make a better-informed decision.”

You left a comment on the most recent Javascript meeting notes with clarifications on a few misunderstandings about Vue.js. You addressed the point regarding “embracing JavaScript the language,” as some contributors think Vue’s templating language obscures the underlying JavaScript.

“I think ’embracing JavaScript the language’ is another primitive of React we don’t see in Vue,” Andrew Duthie said during the last meeting.

You’s reply compares Vue’s use of templates as “syntax sugar for view representation on top of HTML” to what he believes to be a similar usage in the case of JSX as view representation on top of JavaScript:

The increasing richness of UI does NOT necessitate putting everything in JavaScript. On the other hand, just because Vue uses templates by default doesn’t mean it allows people to get by without learning JavaScript properly.

Vue’s templates are compiled into JavaScript render functions under the hood and they are actually closer to JavaScript than to traditional string templating. It’s just a layer of syntax sugar on top of the underlying Virtual DOM representation. Think of JSX as syntax sugar for view representation on top of JS; Vue templates are syntax sugar for view representation on top of HTML.

JSX/Raw JS does provide more flexibility when you need to apply direct manipulation of Virtual DOM nodes, this is why Vue also supports render functions. But this is not putting two opposing paradigms under the same tent – it’s simply allowing the user to skip the syntax sugar layer for more control.

You said the idea behind templating on top of render functions is to provide “better approachability,” a concern shared by many other proponents of WordPress adopting Vue.

“Users who are more comfortable with HTML and have simpler use cases could use the template, while users who are already familiar of JSX/render functions can leverage the full power of JS,” You said. “This would fit pretty nicely for the use of WP core: community users who care about approachability have an easier time getting started, while the core team have access to JSX/render functions for advanced use cases.”

You also addressed the concern of longevity by offering more information on Vue’s development processes. He confirmed that the current codebase is largely developed by him alone, but maintenance is spread across a core team with members all over the world.

“Other contributors have lower commit counts because their contributions are all submitted in the form of PRs and we use the ‘Squash and commit’ feature on GitHub so each PR results in only one commit for the contributor,” You said. “We’ve merged close to 500 PRs in the core repo alone, and many more across the organization. Other repos under the vuejs organization, e.g. vuex, vue-router, vuejs.org are also largely maintained by dedicated team members.”

You also offered clarification on questions of stability and future compatibility, as WordPress contributors presented concerns regarding breaking changes in the templating language in Vue 2.0.

“This begs for some clarification: Vue versioning strictly follows semver,” You said. “The only time there had been breaking API changes post 1.0 was the 2.0 bump. The template syntax is part of the API so it’s not going to [break], and in between major version bumps we commit to 100% API backwards compatibility. We take stability very seriously, so do our community and in-production users, including GitLab, Vice, and some of the biggest internet companies in China.”

As many WordPress core contributors have been developing on top of React for years, You’s input offers a more detailed, in-depth look at Vue that contributors have been asking for during various rounds of feedback. The discussion will continue over the next several weeks and contributors plan to include the topic at WordCamp Europe’s contributor summit.

WordPress Core JavaScript Framework Debate Heats Up, Contributors Narrow Discussion to React vs. Vue

photo credit: oskay Small Parts(license)

WordPress core contributors met this morning to continue the discussion on selecting a new JavaScript framework for use with new core features. The discussion on the Make/Core post intensified over the weekend with more Vue.js proponents commenting to add their thoughts.

Adam Silverstein and Andrew Duthie facilitated this morning’s meeting and began by opening up the discussion to include other frameworks such as Preact, Angular, and Ember. However, the discussion quickly narrowed to React vs Vue.

Silverstein encouraged participants to remember that the new framework is for use with new features such as the new editor and that they will continue to use Backbone when it is the right tool, as well as in existing JavaScript. He also emphasized that the discussion pertains to a framework for core and developers are free to use whatever framework they choose to build plugins or themes.

Vue.js Proponents Consider “Ease of Learning” an Important Factor in Selecting a New Framework

Ease of learning is not among the criteria contributors identified for selecting a new framework, but it is one of the major concerns for Vue.js proponents.

“Vue can do everything that React can do and is much more approachable,” Justin Kopepasah said. “There is a huge adoption of Vue and growth does not show any signs of stopping. Some of the top open source frameworks have adopted Vue and it is used by the top three tech companies in China (including Alibaba). While I do agree that React is a good choice as well, it is not highly approachable by new developers and has Facebook behind it which can be very alarming for people in many ways (not just tech).”

Justin Tadlock, a core contributor whose code and tutorials have assisted many developers learning WordPress, shared similar thoughts over the weekend on the Mare/Core post:

I’ve tried React on a few occasions. Even with over 10 years of programming experience, it was tough to grok for me. I can’t imagine trying to learn it as someone new to WP development.

Vue is dead simple to start learning. I had a small app up and going in minutes. In a couple of hours, I was building some cool, form-related stuff without the docs.

If it were entirely up to me, I’d push for WP to build its own JS framework that solves the problems specific to WordPress. But, if we’re going to choose an existing framework, go with Vue.

Matias Ventura, an Automattic engineer and contributor on both the Calypso and Gutenberg projects, is a proponent of WordPress adopting React. He contends that considering which is easier to learn is the wrong focus for determining what WordPress’ future interfaces will need.

“In my opinion, instead of ‘easier to get started,’ we need to look at robust programming paradigms and an expressive approach to coding interfaces,” Ventura said. “This is what I fundamentally take from Matt’s ‘learn JavaScript deeply’ – the corollary being that WordPress becomes a platform for teaching JavaScript to new programmers, and we need to take that seriously, not just as a convenience to us in the short term.”

Ventura also noted that WordPress has historically not been successful in attracting JavaScript developers and the JS interfaces in core lack contributors when compared to the PHP side.

“We have an opportunity to make WordPress development more appealing to a newer generation of developers that learned how to code through JavaScript,” Ventura said. He encouraged other participants to examine the kinds of interfaces that WordPress needs to modernize and select the best framework for handling them in core.

“The ‘easier to get started’ [argument] seems a bit fallacious to me,” Ventura said. “Easier to whom? At what cost to properly learning JavaScript? The demands of rich interfaces in web applications require a deeper understanding of the technologies used. That’s not something we can avoid. JavaScript cannot be seen as mere progressive enhancement anymore as it is the language in which modern interfaces are expressed.”

Contributors are Concerned about React being Backed by Facebook

At the moment, React is more established and more widely adopted than Vue, but contributors are concerned about the framework being backed and licensed by Facebook. In addition to concerns over the interpretation of React’s additional patent grant, the company has been the source of numerous controversies regarding censorship, data mining, and privacy, among other issues. Opponents don’t want to see WordPress hitch its wagon to Facebook by using React in core.

“The adoption of React is much more than adding a library to WordPress: it is adding the culture, business practices, and code base led by a tech giant,” Justin Kopepasah said. “If we include React in Core, in a way we are asking users (from single site owners to enterprise) to accept Facebook has a key role in the future of WordPress. I have little doubt this will cause pause for some companies considering to adopt WordPress.”

However, other contributors have concerns about Vue.js’ longevity, because it’s so heavily dependent on its creator Evan You. You funds his efforts on Patreon but the project doesn’t have any major corporate backing.

“I’m uncomfortable relying on a project run by a single person that could disappear,” React proponent and WP REST API co-lead Ryan McCue said. “Being run by a corporation with a stake in the game means long-term support and relative stability.” McCue also noted that React has a “a massive community of teaching and support out there for people learning.”

Many Feel WordPress Selecting React as the New JS Framework is a Foregone Conclusion

Despite all the discussions in meetings and on Make/Core posts, many onlookers and community members are convinced that WordPress choosing React is a foregone conclusion. At the beginning of last week’s discussion it seemed that most core contributors are in favor of React, but a strong contingent of Vue proponents have turned out to add comments to the discussion.

Selecting React appears to be the only viable choice when the criteria from the beginning includes items like “proven in a WordPress context” and “alignment with Calypso.” Many have commented to say that the criteria is biased and they assume the decision was already made through the backchannels with a public discussion held for “optics.” Automattic engineer James Nylen commented last week on an open ticket for the Gutenberg project, saying that “Per recent discussion in core Slack, WP core has basically decided to adopt React.”

“If this was truly meant to be a community discussion, then why is it taking place now?” WordPress developer Christopher A. commented on our recent post that summarized the initial discussion. “Choosing a view framework should have happened before the first line of Gutenberg was written. It was known from the start that a view framework would be needed. It was Matt’s desire to get it off the ground as quickly as possible. The best way to accomplish this was to utilize Automattic developers who have experience with React.”

WordPress is selecting a JavaScript framework at a time where frameworks are rapidly evolving, but contributors involved in the decision said they will preserve the ability for theme and plugin developers to use any framework they choose to build their products. No framework was selected during today’s meeting and Andrew Duthie said he expects the conversation will continue at WordCamp Europe’s contributor summit.

“As to React vs Vue (vs Angular vs …), we’ve been discussing the arguments for and against each in the weekly chat, and we’re intentionally taking it slow,” Ryan McCue said. “The key criteria that we’ve picked come from what the project needs, and are not intended to bias the decision in a specific direction. Calypso and other projects are a strong signal towards React, but they’re not the ultimate argument (if they were, we wouldn’t even be discussing it).”

McCue said he doesn’t see WordPress replacing the whole admin with Calypso in a way that doesn’t allow developers to use whatever they choose for their own extensions. The decision to adopt a JavaScript framework for core is more for making core developers’ work easier. At this time, core developers working on new features have a greater knowledge of React than other frameworks.

“At the end of the day, we need to make a decision on what to use in core, and that decision directly impacts the people working on core,” McCue said. “Picking one framework over another doesn’t mean the others are worse, it’s just us (as core contributors) trying to make our own development easier.”

A summary of the discussion should be posted to the Make/Core blog soon and the discussion on selecting a new JavaScript framework will continue in future meetings.

Best Email Subscription Plugins for WordPress

Why is building an email list essential?

It’s a great form of targeted marketing regardless of the business you’re in. It gives you a huge database of the people who voluntarily signed up for news and updates from your website, which means they are actually interested what you have to offer. Emails are private, and almost everyone has at least one email address. Stats show that email clicks outperform social networks in the number of clicks. Also email marketing, is considered a fast and cheaper form of digital marketing, which is also easy to track and experiment with.

To make it easier, here is a nice collection of email subscription plugins below. These plugins will help you collect subscribers and take your email marketing to another level. 

WordPress email subscription plugins

Mailchimp WD 

email subscription plugins

MailChimp WD provides seamless integration with Mailchimp and helps you create stunning subscription forms in just minutes. The plugin features an advanced form editor, comes with four types of form display options and conditional fields functionality, allows you to add custom fields to the forms, and has its own set of advanced emailing options. The forms can be fully customized, allowing you to adjust settings for header, choose a form theme, fields order, etc. Custom fields that you can add to the forms include PayPal integration, file upload option, custom select and country select, survey tools, and many more. Conditional fields allow you to show or hide specific fields on the forms depending on the selections users make. It’s a great option to avoid collecting unnecessary information. Mailchimp WD comes with 14 customizable form themes, and lets you add new ones with custom settings and parameters.

OptinMonster

email subscription plugins

OptinMonster is an advanced lead generation plugin, which comes with an easy to use form builder. It allows you build different types of forms such as, popups, floating header and footer bars, slide-ins, in-lines forms, and more. The plugin combines the forms with its exit-intent technology and page-level targeting features and makes it easier to reach out to your site visitors and jump in right at the time they’re about to leave. Also, OptinMonster comes with an A/B testing functionality, which is a great way to experiment with form headers, text, templates, colors, and see which of them converts the best. All the form templates are responsive and are fully customizable.  

Newsletter

WordPress plugins

With Newsletter plugin you can build email lists, create and send newsletters, and track which part of the newsletters gets opened or clicked on. The plugin features a drag and drop email composer which lets you create single or double-optin forms and collect unlimited number of email subscribers with statistics. The forms can also be displayed with a customizable subscription widget on any of your sidebars. You can send out unlimited number of emails, and absolutely track the number of sent emails, interactions, and clicks. 

Icegramm

wordpress plugins

Icegram provides an easy way to create beautiful opt-in forms and calls to action, which you can display to targeted visitors. The plugin comes with four different opt-in types, which are fully adjustable to your needs. It also includes a number of form theme designs to make your call to actions even more stunning. Icegram features powerful display targeting rules, to let you decide when and where your forms would show up. You can track results for each form and see which of them converts the best. Another great feature of Icegram is its unique headline generator, which you can use to write attention grabbing form headlines.

SumoMe

email subscription plugins

SumoMe is kind of a collection of great tools to help you build an email list and convert your site visitors into subscribers. It comes with a list builder, image sharer, welcome mat, text highlighter, scroll box and many more tools, to let you get the most of your blog.With its list builder functionality you can create a fancy lightbox popup and easily collect subscriptions for your site. It perfectly integrates with a number of email marketing services and allows you to create an extensive audience online.

Hustle  

email plugin

Hustle is another great plugin allowing you to create pop-ups, slide-ins and email opt-ins, as well as improve your marketing efforts and conversions.With its help, you can also build social following and display targeted ads across your website. You can fully customize forms, in terms of layout, color, style, animations, etc. Also, if you need to target your visitors based on clicks, location, position, or device, you can absolutely do that with Hustle. It includes three handy metrics to measure performance and results. 

Email Subscribers and Newsletters

email plugin

Email Subscribers is a fully featured subscription plugin, helping you to reach all your email marketing goals. With its help, you can add a neat looking subscription form anywhere on your website and easily collect email subscribers. It makes it easy to send automated post updates to your subscribers, and create, schedule and send out newsletters. You can categorize your subscribers and include or exclude subscription categories while sending newsletters. The best thing about the plugin is that you can view the status for each sent email and know when it was viewed.

Popup by Supsystic

email plugin

This popup plugin comes with a popup builder and helps you get more subscribers and social followers. It comes with over 30 responsive popup templates and different popup types, allowing you to place them anywhere on your website. The pop-ups are absolutely customizable, and you can control how many types the pop-ups are displayed, the pages they are displayed on, select animations, and more.

These WordPress plugins are proven to help you get more email subscribers for your blog. They work out of the box and are user-friendly. Just give them a try and see which one works for your blog.

Learn more about blogging from this list of books for bloggers.

Author bio:

Gayane Mar is the founder of WPCapitan.com, a WordPress enthusiast, and blogger. She is a contributing author to a plenty of well-known WordPress related blogs and enjoys sharing her experience to help people with WordPress. 

WordPress Removes HHVM from Testing Infrastructure

Before the release of PHP 7 in 2015, many WordPress managed hosting companies looked to Facebook’s HHVM to provide better performance. Pagely, WP Engine, and SiteGround added HHVM hosting options in 2014 and early 2015. However, PHP 7 performance gains have been enough to preclude wider HHVM adoption.

WordPress core developer John Blackbourn announced yesterday that the project has removed HHVM support in the Travis test suite after April 2017 stats showed a mere several dozen WordPress websites running on HHVM. WordPress never officially supported HHVM but Scott Taylor made many improvements to core for better HHVM compatibility three years ago. Blackbourn clarified on Slack that WordPress is not removing this support but rather will no longer include HHVM in its testing infrastructure.

“Support for HHVM itself hasn’t been dropped, but support for testing WordPress on HHVM has been dropped,” Blackbourn said. “HHVM usage is so minuscule (literally in the dozens according to update stats) that we can’t warrant the time needed to ensure the test infrastructure works.”

The change isn’t likely to affect too many developers, but it’s an important milestone that signifies how well PHP 7 has been performing for sites that have switched. Blackbourn suggests those running WordPress on HHVM should consider switching to PHP 7+, as it is “far more widely supported and tested, and offers all of the memory and performance benefits that HHVM pushed forward.”

The open source MongoDB project also announced yesterday that it will no longer be supporting its HHVM driver, saying it no longer makes good use of contributors’ engineering time.

“At the start of 2015 we began work on an HHVM driver for MongoDB, as part of our project to renew our PHP driver,” Derick Rethans, MongoDB engineer and author of Xdebug, said. “Back then, HHVM was in its ascendancy and outperforming PHP 5.6 two to one. With such a huge performance difference it was reasonable to assume that many users would be switching over…With PHP 7 released, we saw very little use of the HHVM driver for MongoDB.”

These announcements may be the start of more open source projects giving HHVM compatibility a lower priority. On the ticket for removing HHVM from the test matrix on Travis, John Blackbourn thanked HHVM for its importance in helping move PHP forward.

“The PHP world owes a lot to HHVM for helping it push it forward,” Blackbourn said. “Without HHVM, maybe we wouldn’t have seen such incredible performance gains in PHP 7.”

WordPress to Select New JavaScript Framework for Use in Core

WordPress core contributors have started collaborating more around their JavaScript efforts this year with regular core-js meetings. One item on the most recent meeting’s agenda was discussion on choosing a new JavaScript framework for use in core as an alternative to Backbone.

Contributors began by summarizing the criteria for evaluating framework options, includes factors like stability, longevity, maturity, adoption, accessibility, proven in a WordPress context, and extensibility, among others. Most of the discussion centered on the benefits and drawbacks of React vs Vue.

The majority of those who participated in the meeting seemed to favor React, as it is already used with several major WordPress projects such as Calypso, Gutenberg, and Jetpack. WordPress’ project lead, Matt Mullenweg, has publicly stated that Automattic is betting on React long-term. Mullenweg has also expressed a desire for Calypso, or a similar interface, to replace wp-admin in the future. The company has been building its products on React for several years and is pot committed at this point when it comes to the framework.

WordPress officially adopting a JavaScript framework will likely have a ripple effect that will influence how many products in the ecosystem are built and/or re-written. Proponents of Vue.js find it easy to learn and extend. Those who are advocating for React also cite its extensibility, stability, and its proven use with popular WordPress products.

Contributors present for the meeting agreed they would be hesitant to commit a new framework to core without using it in some way for a core feature. The decision has not yet been made. Anyone with experiences to share on implementing JS frameworks in the context of WordPress is invited to comment in the discussion on the meeting notes and join the next core-js meeting Tuesday, May 30, 2017, 8:00 AM CDT.

How to Uninstall and Reinstall WordPress

Recently, one of our users asked us how they can uninstall and reintsall WordPress? Reinstalling WordPress can solve issues when all other troubleshootings tips fail. In this article, we will show you how to safely uninstall and reinstall WordPress without losing your data or SEO.

How to uninstall and reinstall WordPress

When Do You Need to Reinstall WordPress?

Reinstalling WordPress should never be the first option. Most common WordPress errors are easily fixable, and this will save you from the hassle of reinstalling WordPress.

If you cannot figure out the cause of an issue, then follow the instructions in our WordPress troubleshooting guide. It will help you pin-point the issue and find a solution.

In case of a hacked WordPress site, you can try the tips in our guide on how to clean a hacked WordPress site.

If all else fails, then uninstalling and reinstalling a fresh copy of WordPress can be used as the last resort.

Step 0. Create an Emergency Backup

Before you do anything, you should first create a complete backup of your existing WordPress site. You can use a WordPress backup plugin to do this. Make sure that you store your backup files on your computer or a cloud storage service like Google Drive or Dropbox.

We will not be using this backup to reinstall WordPress, but it’s good to have in case something goes wrong.

Step 1. Export Your WordPress Content

First thing you need to do is export your WordPress content by creating a WordPress export file. This file will contain all your posts, pages, categories, tags, and comments.

Restoring a WordPress site using this export file allows you to leave out data created by WordPress plugins.

Here is how you would create a WordPress export file.

First, sign in to your WordPress admin area and then go to Tools » Export page. Select all content and then click on ‘Download Export File’ button.

Download WordPress export file

If you have a lot of registered users on your website, then you may want to export them too. See our guide on how to easily import/export users in WordPress.

Step 2. Download wp-content Folder

All your WordPress themes, plugins, images, and uploads are stored in the /wp-content/ folder on your website.

Let’s download this content to your computer, so that you can use it later to reinstall WordPress.

Connect to your WordPress site using an FTP client or File Manager in cPanel. Once connected, select the wp-content folder and download it to your computer.

Download wp-content folder

After downloading the wp-content folder, you are ready to uninstall WordPress.

Step 3. Properly Uninstall WordPress

To uninstall WordPress, you need to connect to your WordPress site using a FTP client or File Manager in cPanel. Then you need to delete all WordPress files.

You don’t really need to delete your WordPress database. Most WordPress hosting companies allow you to create as many databases and usernames as you need.

Instead of deleting the existing database, you can create a new one with a new username and password.

To create new database, you need to login to your cPanel account and click on MySQL Databases icon.

MySQL Databases

This will bring you to the add new database page.

First, you need to enter a name for your new database and click on create database button.

Create a new database

After that, scroll down to add ‘MySQL Users’ section and add a new user. You will need to enter a username and password, and then click on ‘Create User’ button.

Add New MySQL user

Now you need to add the user to the database you created earlier. Scroll down to ‘Add user to database’ section and then select the username and database you created earlier.

Add user to database

Click on the ‘Add’ button to continue.

Your new database is ready to be used when you reinstall WordPress.

Now that you have successfully uninstalled WordPress, let’s see how to reinstall it and restore your website.

Step 4. Fresh Install WordPress

You need to download a fresh copy of WordPress from WordPress.org website.

Download WordPress

After downloading WordPress, you need to unzip the download file.

You will find a WordPress folder inside it. Open the WordPress folder, and you will see all the WordPress files.

Now, you need to upload these files to your website using an FTP client.

Upload WordPress files

After uploading the WordPress files, go ahead and visit your website. WordPress will now ask you to enter your database information.

Add database info

You need to enter the name of database, username, and password you created earlier. Your host information will most likely be localhost.

Once you are done filling out the information, click on the submit button to continue.

WordPress will now attempt to connect to your database. Upon successful connection, it will show you a success message. You can now click on the ‘Run Install’ button to continue.

Run WordPress installation

In the next step, WordPress will ask you to provide your site information like site title, description, admin email address and password.

Site information

After filling out the information, click on ‘Install WordPress’ button to continue.

WordPress will now finish the installation. Go ahead and log into the WordPress admin area using the username and password you entered earlier.

Once you are logged into WordPress, you need to delete the default content.

Head over to Posts and delete the ‘Hello World’ post. Visit the ‘Comments’ section and delete the default comment. Lastly, go to Pages and delete the sample page.

You have successfully reinstalled a fresh copy of WordPress.

Now let’s move on to restoring your content.

Step 5. Restore Uploads, Images, and Theme

First, you will need to restore your uploads, images, and theme located inside the wp-content folder you downloaded earlier.

To do that, you need to connect to your website using an FTP client and go to /wp-content/ folder.

Next, you need to select the /wp-content/uploads/ folder from your computer and upload it to your website.

Upload the uploads folder

If you have made changes to your WordPress theme or child theme files, then you can upload them now. Your theme folders are located in the /wp-content/themes/ folder.

Step 6. Import Content

Now let’s import your posts, pages, categories, tags, and other content.

First, you need to go to Tools » Import page and then click on ‘Install Now’ link under WordPress.

Install WordPress importer

WordPress will now download and install the WordPress importer. After that you need to click on the ‘Run Importer’ link.

This will bring you to WordPress importer page where you need to click on the ‘Choose File’ button and then select the XML file you downloaded during our step 1.

Importing WordPress XML file

Click on ‘Upload file and import’ button to continue.

WordPress will ask you if you want to create new authors and assign the posts to them or if you would like to assign all posts to your current user account.

Import settings

If it is a single author WordPress site, then you can assign all posts to yourself. Otherwise, do nothing and WordPress will import the authors.

You also need to make sure that you check the box under ‘Import Attachments’. This will allow WordPress to properly import the images in your /wp-content/uploads/ folder to the WordPress media library.

Go ahead and click on the Submit button to continue.

WordPress will now start importing content from the XML file to your fresh WordPress install.

Once finished, you will be able to see your content by visiting your website.

Step 7. Install WordPress Plugins (One by One)

After successfully importing content to your reinstalled WordPress site, you can move on to installing plugins.

You will need to install all plugins one by one and then activate them. You may need to manually setup plugins to adjust their settings.

That’s all, you have successfully uninstalled and reinstalled WordPress. You can now review your website and setup things as they were before like your navigation menus, sidebar widgets, contact form, and more.

We hope this article helped you learn how to uninstall and reinstall WordPress. You may also want to see our ultimate step by step WordPress security guide.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How to Uninstall and Reinstall WordPress appeared first on WPBeginner.

WordPress 4.8 Improves Accessibility on Admin Screens

In WordPress 4.3, the Accessibility Team restored H1 headings to the admin screens. This paved the way for the team to change the headings hierarchy in WordPress 4.4. In WordPress 4.8, admin screens are more accessible thanks to organizing the header text on pages.

The headers on admin screens typically contain more than text. For example, the Add New button on the Posts and Pages admin screens is included within the Posts and Pages header text.

PagesAddNewAttached

This makes it difficult for assistive technologies to help users navigate different sections of a page. The changes in WordPress 4.8 turn the headings on admin screens into their own elements.

Before WordPress 4.8 the HTML looked like this:

<h1>
Posts
<a href="... /post-new.php" class="page-title-action">Add New</a>
</h1>

Now it looks like this:

<h1 class="wp-heading-inline">Posts</h1>
<a href="... /post-new.php" class="page-title-action">Add New</a>
<hr class="wp-header-end">

Andrea Fercia, WordPress core committer and a member of the accessibility team, explains what theme and plugin authors need to know.

“If your plugin or theme follows the previous WordPress pattern of adding extraneous content to the main heading, please update your plugin or theme to make the heading cleaner,” Fercia said.

“All you need to do is move the extraneous content outside of the heading. WordPress 4.8 ships with new CSS rules to take care of the new markup structure and in most cases, no additional changes will be required.”

These improvements are three years in the making. After much discussion and being punted to future releases, Fercia says the Accessibility team decided to handle the changes in smaller commits versus one large patch. This provided the necessary momentum to get the changes in core.

New Directory Status

As everyone knows, the first phase of opening up the directory to more reviewers was getting on the new system. We’re not quite there yet, however a great deal of progress has been made!

So far, we’ve run into a few weird flow issues that are blocking us from being able to invite new people. The biggest issue is that if you know the old system, it’s easy to move tickets through the new one. But it’s set up in a way that is very very easy to make mistakes and put tickets in unrecoverable states. So we need to mitigate that as much as possible before we let new people in. Basically we don’t want to break things for users because we didn’t think about use-cases.

Okay, fine, you say. What can you do to help?

I’m glad you asked!

We have 100 tickets open in Meta Trac. You can install the meta-environment in VVV and help us out with patches. Sadly, the meta env isn’t complete. It’s missing data, so you’ll end up having to add in plugins in order to mess with the state flow.

But if you can’t patch, and I do understand that, remember to come to the Plugin Directory revamp meetings on Wednesday at 2200 UTC in #meta on Slack. And please, test test test everything! The more we break the directory, the better it is 🙂

WordPress 4.8 Increases Maximum Width of the Customizer Sidebar to 600 Pixels

WordPress 3.4 introduced the WordPress Customizer API and over time it has evolved from being a theme customizer to a framework for live-previewing changes to WordPress.

Since its inclusion, one of the most common complaints about the Customizer is its narrow sidebar. Even on widescreen monitors, the Customizer sidebar is only 300px wide.

This limitation was one of the motivating factors behind the Customize Pane Resizer feature plugin created in 2015. Although Customize component maintainers tried to get the feature plugin ready in time for WordPress 4.5, it didn’t make it.

In WordPress 4.8, the Customizer Sidebar Has a Variable Width

Weston Ruter, Customize component maintainer, announced that the Customizer sidebar in WordPress 4.8 has a variable width.

“Ticket #32296 was created to allow the sidebar pane to be user-resizable with a grabber just like the Dev Tools pane in Chrome can be resized,” Ruter said.

“After a lot of back and forth, the scope was reduced to remove the user-resizable aspect and to instead address a more fundamental issue that the sidebar is exceedingly and unnecessarily narrow on high-resolution displays.”

The sidebar has a minimum width of 300px and a maximum width of 600px. What users see depends on the width of their screen. I use a 21 inch widescreen monitor and the width of the sidebar on my screen is 345px.

Customizer345PixelsWide
345 Pixel Wide Customizer Sidebar

While not a huge change, the extra width is noticeable. WordPress theme and plugin developers who have built custom controls into the Customizer are highly encouraged to test WordPress 4.8 to ensure that they display properly on large screens.

“Custom controls in plugins and themes should utilize alternative approaches to doing layout than using pixel widths,” Ruter said.

“Use of percentage-based widths or flexbox will help ensure that controls will appear properly in larger displays, while also making controls future-compatible when the sidebar width could be user-resizable.”

If you’d like to be able to adjust the width of the sidebar, check out the Customize Pane Resizer plugin. I tested it on WordPress 4.8 beta 2 and it works as expected. There’s also the Fluid Customizer plugin which also allows you to manually resize the sidebar.

How to start a blog

If you’re thinking about starting a blog, the most important thing I have to say to you is: go for it! Start your blog! Just do it! Blogging is a great SEO strategy, it’s a wonderful marketing tool and blogging is lots of fun! A new blog will allow you to make smart and strategic choices. Just take a little time to think about how to set up your blog before you begin, so you’ll have less work later on. Let me share some tips with you on how to start a blog.

Choose your niche

You should always write about what you know. But you should not write about everything you know. Pick a niche. Decide upon a main topic and write posts related to that topic. It’s more likely that your audience will come back and read your other posts if you’re writing about similar topics. People will know what to expect. Starting a mom blog implies that you write about all things concerning your children and family life. Starting a travel blog implies you write about traveling. You can write about something slightly off topic once in a while of course, but try to stick to your niche. An audience of a travel blog doesn’t expect a blog post about gardening. 

Our SEO for WordPress eBook guides you through every aspect of Search Engine Optimization »

SEO for WordPress$ 25 - Buy now » Info

Do your keyword research

Once you’ve chosen your niche, you should do some solid keyword research. Try to find out what people are searching for. What words are they using when they want to read about your niche and your topic? You should really get inside the heads of your potential audience. If you do your keyword research properly, you should end up with a long lists of keywords you would like to be found for. Try to come up with competitive, head keywords as well as with less competitive long-tail keywords.

Read more: ‘How to start your keyword research’ »

Think about site structure

This is the best time to think about site structure. What categories are popular in your niche? What are the most important head keywords you’d like to rank for? You should write a long, kick-ass article about each of these keywords. Those will be your most essential articles, or in other words, your cornerstone content. You should give those articles a prominent place on your site.

After you’ve written those beautiful cornerstone articles, write lots of blog posts on sub topics of that main topic and always link to your cornerstones. That way, you’ll be telling Google exactly what the most important articles on your website are.

Keep reading: ‘What is cornerstone content?’ »

Write that first post

Take some time to do keyword research and to think about site structure. But don’t take too much time. Just write that first post! Put pen to paper and just do it. Your blog starts with the very first post. That post doesn’t have to be perfect, it just has to be published. Need some help to get started? Check out our 10 tips on how to make your post awesome.

Pictures and videos

Writing blog post is more than writing a nice story; a successful blog has pictures and videos as well. Every post should show at least one image. Taking nice photos yourself is a great way of creating images and making short videos is a really good blogging strategy as well. Especially if you’re blogging about (aspects) of your own life, photos of it are a necessity.

Read on: ‘Images for blogs’ »

Optimize for the search engines

Before publishing your post, optimize it using Yoast SEO (on WordPress of course, but on Magento and TYPO3 now too!). Don’t forget to create an awesome SEO title and a decent snippet. Finetune your text. Make sure your text is both readable as well as SEO-friendly.

Read more: ‘How to use the content & SEO analysis of Yoast SEO’ »

Promote your blog

Using social media is the best way to reach and grow the audience of your blog. That’s why your blog should have a Facebook page. Sharing your posts on Facebook is a good marketing strategy. Don’t forget Instagram and Twitter either!

In addition to the use of social media to promote your blog, we advise you send out a digital newsletter. Let people sign up for it and send out emails with your latest blog posts and some other fun facts.

Keep reading: ‘Marketing your blog’ »

Stick with it!

The most important thing to start a blog – besides setting up your new blog – is to write that very first blog post. Once you’ve written that first post, your blog has started. You should keep on writing blog posts to make it successful, so try to determine a frequency to publish new posts. You don’t have to blog every day, once a week or maybe even once in every two weeks would be a nice frequency to start with. Find a frequency you can stick with! Your audience will know what to expect, if your blogging frequency is stable.

Read on: ‘Blog SEO: make people stay and read your post’ »

WordPress 4.7.5 Patches Six Security Issues, Immediate Update Recommended

WordPress 4.7.5 was released today with fixes for six security issues. If you manage multiple sites, you may have seen automatic update notices landing in your inbox this evening. The security release is for all previous versions and WordPress is recommending an immediate update. Sites running versions older than 3.7 will require a manual update.

The vulnerabilities patched in 4.7.5 were responsibly disclosed to the WordPress security team by five different parties credited in the release post. These include the following:

  • Insufficient redirect validation in the HTTP class
  • Improper handling of post meta data values in the XML-RPC API
  • Lack of capability checks for post meta data in the XML-RPC API
  • A Cross Site Request Forgery (CRSF) vulnerability was discovered in the filesystem credentials dialog
  • A cross-site scripting (XSS) vulnerability was discovered when attempting to upload very large files
  • A cross-site scripting (XSS) vulnerability was discovered related to the Customizer

Several of the vulnerability reports came from security researchers on HackerOne. In a recent interview with HackerOne, WordPress Security Team Lead Aaron Campbell said the team has had a spike in reports since publicly launching its bug bounty program.

“The increase in volume of reports was drastic as expected, but also our team really hadn’t had to process any invalid reports before moving the program public,” Campbell said. “The dynamics of the Hacker Reputation system really came into play for the first time, and it was really interesting to figure out how to best work within it.”

If WordPress continues to sustain the same volume of reports on its new HackerOne account, users may see more frequent security releases in the future.

WordPress 4.7.5 also includes a handful of maintenance fixes. Check out the full list of changes for more details.

What to Expect in WordPress 4.8

WordPress 4.8 Beta 1 is available for testing and has a couple of features that will likely have a big impact.

New Image, Video, and Audio Widgets

WordPress 4.8 has three new core widgets and adds a visual editor to the Text widget. Adding video, audio, or images to text widgets typically involves using custom HTML.

Each of the new widgets in 4.8 takes advantage of the WordPress Media Library. Because the widgets use the media modal, users can insert content from a URL. This is particularly convenient for the Video widget as most videos are not stored locally.

Core Image Widget

Here is what the core widgets look like on Twenty Seventeen after they’ve been configured.

Core Widgets on Twenty Seventeen
Core Widgets on The Frontend

The text widget now has a visual editor with a couple of basic formatting tools available. The visual editor supports Keyboard shortcuts. However, it does not support oEmbed. Like the post editor, you can switch between Visual and HTML mode. The HTML version of the editor benefits from the upgrade as it provides users with the same formatting tools that are available in the visual editor.

Text Widget HTML Mode
Text Widget HTML Mode

Link Boundaries

Link boundaries are a byproduct of the ongoing work to Gutenberg, WordPress’ new block-based editor. If you’ve ever written links in the visual editor, you may have noticed that sometimes it’s difficult to move the cursor outside of the link element.

In WordPress 4.8, link boundaries provide a visual cue of when the cursor is inside a link element. This video recorded by Matias Ventura provides a visual demonstration of how link boundaries work.

Inside Link Boundary
Inside Link Boundary
Outside Link Boundary
Outside Link Boundary

During testing it felt like this was more of a bug fix to how the visual editor behaves rather than a new feature.

Dashboard News Widget Includes Upcoming Local WordPress Meetups

There are 1,180 WordPress meetups registered on Meetup.com and close to 100 WordCamps scheduled for this year. In an effort to remind users of the WordPress communities that exist around them world-wide, the WordPress News Dashboard widget has been modified to include Meetups and WordCamps near a user’s location.

News Widget Shows Upcoming Meetups and WordCamps
News Widget Shows Upcoming Meetups and WordCamps

The widget will try to guess your location automatically. If it’s incorrect, clicking the Pencil button opens a box where you can type in your city. The bottom of the widget includes links to the WordPress Meetup landing page, WordCamp Central Schedule, and the WordPress.org news blog.

WordPress 4.8 Sets the Stage for Gutenberg

It should be noted that WordPress 4.8 will not include Gutenberg. It does, however, lay the foundation for Gutenberg to arrive in a future release.

The easiest way to install and test WordPress 4.8 Beta 1 is to install and activate the Beta Tester plugin on a staging site. Once activated, visit Tools > Beta Testing and select Point release nightlies and then update WordPress.

If you believe you’ve encountered a bug, you can report it to the Alpha/Beta section of the WordPress support forums. Please provide as much detail about the bug as possible. WordPress 4.8 is tentatively scheduled for release June 8th.