WP Engine: The Best Managed WordPress Hosting

Choosing a hosting provider for your WordPress website is an important decision. In this article we will discuss some of the excellent features offered by WP Engine’s managed hosting service and why we recommend them to every client.

What is Managed WordPress Hosting?

Managed WordPress hosts specialize in hosting WordPress websites specifically and they offer special features like caching, staging for updates, easy backups and restores, and speed enhancements. They are generally helpful with WordPress issues, and they often have additional security features that other hosts don’t have. This is very different than traditional shared hosting where you simply rent storage on a server which may or may not be well designed to work with specific platforms or technology, and where you may feel left on your own if your site is hacked or you have a WordPress specific question.

When you should consider switching hosts:

When you start a new blog/website it’s normal not to think about things like server performance, traffic and security and often people looking for hosting only consider cost. You want to worry about the site’s appearance and what content to publish rather than the technical underpinnings of the server hosting your site, and that’s totally understandable. Often it is only after the site’s been up for sometime that issues with your server will begin to arise, and you may start to wonder about your choice of web hosing. Maybe your site slows down or you have down time, or goodness forbid your site gets hacked. Good quality managed WordPress hosting guards against these issues, and even though it tends to be a bit more expensive, it can save you a lot of hassle, and even money, in the long run.

Why is WP Engine the Best WordPress Hosting?

1. Designed for WordPress

WP Engine’s WordPress hosting is designed and optimized for WordPress websites specifically. They take care of every single piece of server optimization to ensure your website is living on the most fastest and best WordPress hosting platform possible.

2. The Best Customer & Technical Support

WP Engine’s technical team and customer support consist of WordPress developers and trained experts. The WP Engine support team is available 24/7 via phone, chat or support tickets. We can not emphasize enough how valuable it is to have a smart and knowledgable support team available for you (and your website) at any time. They are also extremely professional and friendly!

3. The Best Security

WP Engine takes security very seriously. They monitor server traffic 24/7 and are able to prevent malicious traffic and attacks. In addition to real time monitoring and finely tuned server security, all WP Engine plans include daily backups and 1-click restore points. With WP Engine you are only 1-click away from your site being restored to a prior state if anything goes wrong.

4. Speed!

The WP Engine architecture and caching system ensures your site will perform at optimal speed and their architecture is continuously improved to reduce site load time. Additionally WP Engine can make use of a Content Delivery Network (CDN) to distribute your site data across a global network of servers to reduce geographic distance between your site visitors and your website data if you server a global audience.

5. One-Click Staging Websites

We can not emphasize enough what a valuable tool the one-click staging feature is. We LOVE it! A staging website is basically a copy or clone of your live website. One of the reasons we love the staging environment is that it gives our clients are safe and easy place to try out core and plugin updates or plugin additions before changing things on their live websites. This way, clients can take control of their own updates while maintaining confidence that those updates will not break any functionality on their live website.

TLC with WP Engine ♥

Your website is very much like a living thing. It needs care and love and maintenance. You probably spent many thousands of dollars investing in your new website, and you want your users to enjoy a fast and reliable experience when they visit it, while you want to maintain it in as pain-free a way as possible. This is where WP Engine comes in.

In closing, it may seem like spending $35/month on hosting is a lot, and with plans starting at $35/month WP Engine is not a “cheap” hosting solution. But with all of the great features, performance and support that WP Engine can offer, we believe that it is an excellent value.

WP Engine

SSL and HTTPS – Everything You Need to Know

What is SSL?

SSL (Secure Sockets Layer) is a standard security technology for establishing an encrypted link between a server and a client—typically a web server (website) and a browser (e.g., Chrome, Safari, Internet Explorer); or a mail server and a mail client (e.g., Outlook).

Originally HTTPS was designed to allow for sensitive information to be safely exchanged over the internet, today it is a best practice for all websites.

Here are the top four reasons why every new website being built today should be served over HTTPS:

  • SEO – Search engines have started to rank sites that are served over HTTPS higher than comparable HTTP sites
  • Trust & Security – HTTPS makes man-in-the-middle attacks much more difficult and establishes a level of trust with the server you are connecting to
  • Surveillance – The rise of government surveillance, both foreign and domestic
  • It’s easy! Setting up HTTPS is now generally easy to do and SSL certificates can now be purchased and installed for free

How SSL Works

The lack of encryption with http:// URLs makes it very unsafe to browse and interact with websites that contain sensitive information, like bank websites, shopping websites, or any website that you login to, and especially any website where you enter a credit card number.When you visit a website at an http:// URL, information is sent through the network (“over the wire”) unencrypted, and you have no guarantee that the server you are connecting to at the other end is actually the server you think it is.

The https:// protocol solves these problems by forcing the network packets to be encrypted and guaranteeing via a third-party that the server on the other end is the one and only valid server for that URL. HTTPS makes man-in-the-middle attacks far more difficult and establishes a level of trust with the server you are connecting to.

The Certificate Authority

The third-party that establishes this trust is the “Certificate Authority”. The Certificate Authority sells SSL certificates and creates the network “handshake” that happens when connecting to a website. This way you can be sure when browsing over HTTPS that the server you are connecting to is the server you are asking for, and that any network packets you pass back and forth will be encrypted.

How to Implement SSL

The process of purchasing and installing an SSL certificate is generally very simple, and many web hosts will both sell and install SSL certificates in one step. You can also purchase an SSL certificate yourself from a certificate authority like RapidSSL and then ask your host to install it for you.

Although SSL certificates can still be expensive when purchased through certain certificate authorities, a new initiative led by a group of the biggest internet companies in the world called Let’s Encrypt is promising to provide top notch SSL certificates for free. As of January 2016 this service is in public beta, but very soon it will be the go to place for acquiring free SSL certificates.

Standard vs. Wildcard SSL Certificates

The only decision a potential SSL certificate purchaser needs to make is whether to get a standard SSL certificate or a special SSL certificate called a wildcard certificate. Standard SSL certificates protect a single domain like mightyminnow.com but don’t protect subdomains like hello.mightyminnow.com, whereas wildcard certificates can protect one level deep into subdomains. If your domain name has any subdomains that you want to serve over HTTPS, you’ll want to purchase a wildcard certificate.

What Now?

If you want your website to be more secure, better trusted and better “liked” by Google – consider purchasing and configuring an SSL certificate.

Dynamically Populate Gravity Forms Drop Down Fields

Gravity Forms is one of the best form plugins for WordPress powered websites. It allows you to quickly and easily create a form by dragging and dropping form elements into the editor, change their names, properties and settings. One of many elements available to use is the drop down field. You can either add the values manually using the form editor or populate all items dynamically via filters in your code.

For this example we will be covering dynamic drop down population via filters. We’ll end up with a drop down field populated with a list of movies, which is set up as a custom post type in our WordPress installation.

The first thing we’re going to do is add a new drop down field to our form. Here is what it looks like when you expand the edit options:

Drop down field

In order to keep it organized, and since we’re going to dynamically populate the items, we can delete all the default items (First Choice, Second Choice, Third Choice) that Gravity Forms adds when you add the field to the form.

If you check the official Gravity Forms documentation, you will see that it suggests you to write down the Field Id (in this example, id = 5) so you can use it in your code to target the correct element to be populated.

Even though this will work, I would prefer to add a class to the element and check for this class when targeting the element in the code. This way there’s no need to worry about ids, which sometimes can be a problem if you work with different environments or servers where the ids can be different on each installation.

For this field, we’re going to use the class name ‘movies-dropdown’, set under Appearance > Custom CSS Class on our drop down.

Drop down settings

With our drop down set up in the form editor, it’s time to created the logic behind it. The filter we’ll be using is the ‘gform_pre_render’ filter, which is executed before the form is displayed and can be used to manipulate the Form Object prior to rendering the form.

Here is the code:

 

Gravity Forms is an great plugin and it allows you to build pretty much any custom functionality using its Hooks and Filters, and there are many others you can use. For more information and details about all of the Gravity Forms features, you can always refer to their official API Functions documentation.

Hope this helps and see you next time!

Google’s Mobile-Friendly Search Algorithm

Mobile-Friendly Search ResultMobile internet usage continues to grow. In fact, global internet usage on mobile devices has surpassed desktop internet usage in 2014 according to ComScore. We at MIGHTYminnow have been early adopters of mobile-friendly standards, and currently ensure our client’s websites are developed to be responsive. A responsive website displays beautifully on devices of all sizes and offers no barrier for user interaction and engagement on mobile devices.

Since Google’s search results are always about relevance, it makes perfect sense that they would serve search results to mobile device users that are mobile-friendly. This is exactly what Google will begin doing on April 21st when Google launches their mobile search algorithm, which will consider mobile friendliness as a ranking factor. Currently Google’s mobile search results include a handy label next to mobile-friendly sites letting users know that these sites will display well on their device. The next step will actually favor mobile sites in the search results. This means that if your website is not mobile-friendly, mobile users will have a hard time finding your website through Google search on a mobile device.

To find out if you website is mobile-friendly, try Google’s Mobile-Friendly Test.

Need help making your website responsive? Have questions? Contact us!

WordCamp SF 2014 Review

The MIGHTYminnow team was out in full force for this year’s WordCamp SF, and what a great event it was! All of the presentations were excellent, we learned a ton about the exciting new features coming soon to WordPress, and the positive energy of the WordPress community was palpable throughout the entire weekend. The future of WordPress is brighter than ever!

We got so excited watching the presentations that we thought we’d go through a couple of our favorites and offer some of our thoughts in response. All of the WordCamp presentations can be viewed on WordPress.tv, including a great presentation by our own Senior Developer Mickey Kay, and we highly recommend giving them a watch. Without further ado:

Andrew Nacin: The Future of WordPress is Global

Nacin is one of the WordPress lead developers and a key figure in the WordPress community, and his talk on growing WordPress internationally was very interesting. In the last couple of years the WordPress core team has been working hard to make core 100% translatable into not just any language, but into any locale. They’ve done this by wrapping each of the 4,000+ strings that are unique to WordPress in an internal translation function, so that each string will always dispay on the screen in the language that the WordPress user has selected. Then they hooked the translation library up to GlotPress, a translation engine project maintained by Automattic that anyone can submit translations to, and with the help of the website translate.wordpress.org the WordPress community has already translated the platform into 40+ languages.

This is huge, because as Nacin pointed out, only 5% of the world’s population speaks English as a first language. With WordPress now ready to use in every major language on the planet, we can expect a massive amount of international growth in the platform in the near future, and that means more developers, more content creators, and more people involved in helping to make WordPress the best publishing platform on the web.

But the core team isn’t stopping there. The big announcement during Nacin’s presentation was that in addition to core being fully translatable, all plugins and themes in the WordPress.org repository are now translatable using the same process as core via the translate.wordpress.org website. This means that you can write a plugin or a theme, publish it in English to the official repo, and anyone else in the world can at any time hop on translate.wordpress.org and write translations for the unique strings in your plugin or theme. Then users of the plugin or theme who are using WordPress in another language can use your plugin or theme without you as the developer having to do any of the translation work!

This is going to be huge for WordPress, and we’re very excited to see the community grow as WordPress becomes the first truly global web platform ever.

Sam Hotchkiss: Data First – How APIs are Changing the Internet

There was a lot of discussion at this year’s WordCamp SF about the new WordPress API, which is slated to be merged into core in early 2015, and Sam’s talk was all about APIs. Although there have been solutions for externally working with WordPress data for a while, the new WP-API represents a huge step forward over the existing solutions and will enable a whole new generation of external apps to be built on top of WordPress. This is very exciting.

The goal with an API like this is to provide a way for the abstract data that is inside WordPress to be used outside of a WordPress install. Almost everything that you can do from within a WordPress install will eventually be possible to do from a completely separate app that can communicate with the WordPress install using the API.

This means that entirely new wp-admin back-end user interfaces or front-end user interfaces can be developed on top of the WordPress data model, allowing WordPress to be used only as a system for interacting with abstract data. In the near future, there might be several popular flavors of the wp-admin back-end to choose from, some tailored for bloggers and casual users and others for businesses with specific needs. It’s conceivable that every major use case for WordPress could eventually have a custom wp-admin, or even several competing wp-admins that offer different optimizations and workflows.

One of the possibilities that we are most excited about is the potential to create front-end UIs that behave like native applications. Popular JavaScript frameworks like Backbone.js could be used to create WordPress sites that respond to user input immediately and never need to refresh the page, and front-end UI wouldn’t even need to live on the same server as the WordPress install because it could communicate with the WordPress install using the API.

The future of the web is all about freeing data from the murky depths of databases and clunky UIs, and the new WordPress API will allow WordPress data to flow more freely around the internet than ever before. We’ll definitely be keeping our eye on the new WP-API.

Guillermo Rauch: Realtime Communication with Socket.IO and WordPress

The presentation given by Guillermo Rauch about using his socket.io real-time web engine with WordPress was simply incredible. He’s clearly thought a lot about how the web of the future will function, and by creating socket.io he has allowed us all to start building futuristic websites today.

Socket.io keeps a connection between the client and the server open after the initial page load, and this allows the page to keep updating itself in real time based on the user’s interaction with the page, or new data from the server, or both. It can be used to create things like a collaborative online whiteboard that multiple users can draw on at the same time, or a super-fast chat application, or a web audio synthesizer where multiple users are collaboratively making music together in real time.

The example integration with WordPress that Guillermo showed off during his presentation elicited disbelieving gasps from the audience. In just a couple of minutes he live coded a script that counts how many users are reading a post at the same time and sends this information to all of the users reading that post. As more people in the audience jumped on his demo site during his talk we could all see the number on the page rising and rising, all in real time. It was totally cool.

After seeing his presentation we’re more convinced than ever that the future web will be all about real time client server communication, and we’re very glad that people like Guillermo are out there building the tools to make it all possible.

Conclusion

There has never been a better time to be part of the WordPress community, and all of the great presentations that we saw at this year’s WordCamp and the enthusiasm and mutual respect that we felt from everyone all weekend really drove this point home. Being a part of an open source web project like WordPress is a very special thing, and we are more excited than ever to keep using WordPress for our client projects and to help contribute to the growth and success of the platform for many years to come.

Include Private/Draft Pages In Parent Dropdowns

Screen Shot 2014-09-02 at 3.52.08 PMBy default, WordPress only includes published pages in the dropdown select menu that allows you to choose a parent for a particular page. This is a pretty well documented problem that is yet to be addressed in core. Not a huge issue, however it can cause some pretty pesky problems.

For example, say you have a parent page and a child page that aren’t quite ready to share with the world, so you want to make them private. So you edit the parent page and set it to private. Then you go to the child page to set it to private. Alas, the parent page will no longer appear in the dropdown “parent” menu, and thus if you save the child page at all, it becomes parentless. No fun, right?

So this snippet fixes that problem by adding private and pending (awaiting review) pages to the parent dropdown menu – and it works for bulk editing, quick editing, and editing in a single page view. If you want to tweak the post_status types that are included, just edit the array listed in the code, using values from the WP_Query codex page.

How to Properly Move the Entire Site Footer in Genesis

How to properly move the Genesis site footerWe recently had the need to move the entire .site-footer div in Genesis. There are various tutorials out there that suggest using the following code to relocate your footer content:

However this won’t actually move the entire .site-footer div. On the contrary, it will only relocate the contents of the div, which means you’ll end up with:

  1. An empty .siter-footer div
  2. Your site-footer content orphaned somewhere on your page with no good semantic classes or IDs

Not good, right?

So if you want to properly move the entire site footer, use the following code (making sure to substitute the desired hook in place of new_hook below):

How to Synchronize Social Media Shares, Counts, and Comments Across HTTP and HTTPS

Social Media

The Issue

I use a social media, sharing, or commenting plugin and it shows different data on HTTP and HTTPS versions of the same page/post.

Viewed via HTTP

Viewed via HTTP

Viewed via HTTPS

Viewed via HTTPS

Why Does This Happen?

We build a lot of sites that use social media sharing and commenting plugins, such as:

And if you really want to boil it down to the basics, each of these plugins essentially does the same thing: associate data (comments, share counts, likes, etc) with a specific URL. Pretty simple, right?

The issue described at the very beginning of this article arises because HTTP and HTTPS versions of the same page look like two separate URLs to most of these plugins.For all intents and purposes, these two URLs are treated as separate pages by most plugins, even though they point to the exact same content. That little ‘s’ makes all the difference.

I imagine there are times when this separation is desirable, however we typically want HTTP and HTTPS versions of a page to be treated the same, so that all comments, likes, shares, etc. appear the same, regardless of which protocol is being used in the URL. If that’s what you’re looking to do, then read on. . .

The Solution

To solve this problem, we essentially have to do two things:

  1. Get the HTTP version of the current page/post URL.
  2. Pass this URL to the plugin.

1. Get the HTTP URL

This is the easy part. We generally use the following bit of code (which can be placed in functions.php):

In this snippet, we’re doing two things:

  1. Defining a function, get_http_url( $url ), which converts any URL to HTTP.
  2. Creating a shortcode, [http-url], which outputs the HTTP version of the current post/page URL.

Note: We could have combined these into one simple shortcode, however I prefer separating each bit of functionality out into it’s own function, so that we can use them later if so desired.

2. Pass the HTTP URL to the plugin

Now that we can generate the HTTP version of a post/page URL, we need to basically tell our plugin to use this URL (always HTTP) instead of the auto-generated URL (HTTP or HTTPS). How we accomplish this varies from plugin to plugin, so we’ll outline the basic steps and then give two examples below.

The Steps

  1. Figure out how to inject your HTTP URL in place of the auto-generated URL used by your plugin. Good plugins will have a well-documented way to do this. Decent plugins will have a way to do this. Bad plugins will have neither a way to do this, nor documentation (if this is the case, time to switch plugins).
  2. Use the shortcode you created above to insert your HTTP URL.

Examples

We’ll look at two examples: Share Buttons by AddThis and Facebook Comments Box.

Example 1: Share Buttons by AddThis

Share Buttons by AddThis
By default, this plugin will automatically use the current post URL to send and retrieve associated share counts. Fortunately, this plugin falls into the “good” category, as it provides a simple method and clear documentation for overriding the default URL using the addthis:url attribute.

So, say we’ve created a text widget that displays our share buttons. Out of the box, the HTML looks like this:

If we want to ensure that our sharing buttons will always reference the HTTP version of a page’s URL, and likewise ensure that our share counts are the same regardless of which protocol we’re using to view the page, then we can easily use the addthis:url attribute along with our [http-url] shortcode like so:

NOTE: you’ll need to make sure shortcodes are enabled inside widgets, which you can do by adding add_filter('widget_text', 'do_shortcode'); to functions.php.

Presto! Our share counts are now the same whether we’re viewing HTTP or HTTPS.

Example 2: Facebook Comments Box

Facebook
This plugin is a little trickier, and falls somewhere between “good” and “decent”. The plugin does provide us with a handy filter, facebook_rel_canonical, however the documentation is pretty tough to track down. According to the plugin’s readme.txt file, the facebook_rel_canonical filter “affects Open Graph protocol URL definitions, URL references sent in Open Graph actions, and more.” Kind of obscure, but sounds like we’re in the right place.

So, whereas before we we’re simply outputting some custom HTML, this time we have to use WordPress’ native filters API to substitute our HTTP URL for the plugins default URL:

Just include this snippet in functions.php and you’re ready to go! Comments will now all be associated with the HTTP URL of any given post/page.

In Conclusion

While the details may vary depending on what plugin you’re using, the essential principals remain the same:

  1. Get the HTTP version of the current URL.
  2. Pass this URL to your plugin.

I find that sleuthing around different plugins to figure out how to pass in my custom URL is actually a pretty enjoyable (though sometimes time-consuming) task. I inevitably learn more about how the plugin works, and usually discover a handy trick or two along the way.

And if you run into a brick wall and just can’t figure it out, always feel free to file a support request or email the plugin author.

And if that fails, you can always contact us – we love a good challenge.

And if that fails. . . well. . . time to switch plugins 🙂

New Mm Theme: Trestle

[box type=”download”]

Trestle

A handy boilerplate child theme for serious Genesis developers.

Trestle takes a lot of the grunt work out of building sites using the Genesis Framework, providing quick and easy-to-implement solutions to common problems and repetitive tasks. We’ve taken Genesis’ rock-solid foundation, integrated mobile-first CSS, responsive navigation, a full-featured settings panel, and much more. Download. Install. Enjoy.

View Demo » Download »[/box]

Features

Trestle: A handy boilerplate theme for serious Genesis developersTrestle includes tons of helpful features such as:

  • Centralized control panel (Genesis → Theme Settings)
  • Responsive navigation menu
  • Mobile first CSS
  • Custom control over post info and meta
  • Multiple page layouts
  • Auto-generating primary navigation
  • Ability to auto-install your favorite plugins
  • Helpful theme jQuery
  • Compatibility with Genesis Extender plugin
  • Optional link icons
  • Built-in shortcodes (columns, buttons, Font Awesome, etc)
  • Front-end styles appear in editor as well
  • And more!

Still to come. . .

There are some features still on the horizon as well (feel free to add a pull request if you’re interested in contributing):

  • SASS support
  • Direct logo implementation (non-CSS)

Plugin Review: blogVault

I’m just going to come right out and say it: blogVault is my new favorite way to backup, migrate, and restore WordPress websites.

We stumbled upon blogVault – or rather, it stumbled upon us – when blogVault founder Akshat Choudhary paid a visit to one of our Bay Area Web Freelancer Meetups. Long story short, Akshat demoed blogVault for us, it looked good, we signed up for a trial, and then. . . well, here’s what we found:

As Easy As It Gets

blogVault - adding a new site

Adding a new site to blogVault

One of blogVault’s defining features is its simplicity. Installing and using blogVault can all be managed from the blogVault admin dashboard. Just click the “Add Site” button, enter the URL and admin creds for your site, and blogVault will automatically install its plugin and start backing up. It’s as simple as that.

And every step of the way is surprisingly simple, which has been a welcome surprise.

Clean & Clear Interface

blogVault does come packaged as a plugin to be installed on your WordPress site, however it is different from most plugins in that all site management/interaction happens outside of the WP dashboard. Instead, you log into blogVault’s own dashboard (https://webapp.blogvault.net) to manage all your sites from one centralized location. I can see how some might like the ability to manage site backups, restores, and migrations from directly within WordPress, but I’ve been pretty content with using blogVault’s dashboard on its own.

blogVault - dashboard

Sites in the blogVault dashboard

The blogVault dashboard displays each site along with its backup status and a number of actions (backup now, test restore, migrate, etc). The interface clearly puts all the options right out in front of the user, and makes it very easy to check the status of a site (last backup, current backup progress, etc) without having to dig.

Backups, Restores, & Migrations

It goes without saying that a good backup plugin should just work. No ifs, ands, or buts. Unfortunately, this has not always been our experience in the past. With blogVault, however, we’ve had a remarkably high success rate (and we’re currently using it to manage over 100 sites). Backups automatically run every 24 hours and can be manually triggered at any point in time. If something goes wonky on a site and you need to restore a backup, you can just click the “Auto Restore” button (or “Test Restore” if you’d like to see what the backup looks like before officially restoring), and that’s that. blogVault also adds a nice feature in that you can download any previous backup (files, database, or both) in case you want to do things manually.

blogVault - migrating

Migrating a site with blogVault

Similarly, migrating sites is a piece of cake. We build most of our sites locally or on dev servers, and when it’s time to take the site live we need to migrate it to the final server and/or URL. In the past, this meant downloading all files, exporting the database from the dev site, uploading the files to the live site, importing the database to the live site, running a serialized search and replace script to correct URLs in the database, and praying that nothing went wrong during the process. With blogVault, the process is simplified immensely. After clicking the “Migrate-Site” link, users are prompted for the target site’s URL and FTP credentials, and that’s pretty much the whole process. blogVault ports all files and the database, and automatically replaces all instances of old URLs with new ones. This is hands down the easiest that migrating a site has ever been for us here at MIGHTYminnow.

Helpful History

Changes are highlighted in the history panel

Changes are highlighted in the history panel

One of our favorite blogVault features is the history panel. Many backup solutions allow you to see a site’s backup history, but blogVault does a few nice things that make it stand out. For one, plugin and theme changes are highlighted, which can make all the difference when troubleshooting a broken site. Additionally, blogVault allows you to add custom notes to each backup. We use this feature quite often to do things like explicitly mark a backup right before performing some operations on the database, or to make note of the first clean backup after fixing a broken site – essentially setting backup waypoints to guide us in the future.

Fantastic Support

I tend to think that the folks at blogVault have treated us especially well because we’ve provided them with a lot of feedback and testing, but I have to say that blogVault support has been amongst the best I’ve ever received. Support requests are handled quickly and efficiently. Akshat and his team have repeatedly gone the extra mile. Whereas other premium services and hosts sometimes push issues back on us with generic suggestions, the blogVault team has typically taken it upon themselves to just plain fix an issue when we face it. They’ve also been surprisingly responsive to feature requests and bug reports.

Issues & Bugs

blogVault - layout weirdness

Some wonky aesthetics

Any good review will cover a product’s issues/bugs, and blogVault does have its share of quirks. The good news is that, functionally, the product has proved itself completely sound in our experience. The issues we have encountered are primarily aesthetic in nature. A few examples include:

  • In the dashboard, some sites seem to get thumbnails and some don’t. And at various screen resolutions, things overlap in strange ways.
  • Progress indicators can act a bit unpredictably when migrating and/or backing up a site. During one migration, the indicator seemed to be stuck at 43%, then suddenly jumped to 118%, before coming back down again to just below 100%. The migration completed just fine, but there was some funny math happening in there somewhere.
  • When migrating a site, the progress indicator overlay covers everything else, so you’re stuck waiting until the migration is complete and can’t perform any other actions on other sites.
  • For a while, backups in the history panel seemed to be mixing up timezones. We’d backup a site, and the timestamp would say it was backed up “in 8 hours” – this appears to have been fixed shortly after we submitted a bug report however.

Bottom Line

Thumbs Up!All in all, the issues we’ve encountered with blogVault are pretty trivial when compared to the immense amount of time and hassle we’ve been saving. And the product only gets better – Akshat and his team have been extremely responsive and proactive about responding to bugs and implementing new features, and we’re excited for the improvements yet to come. We highly recommend signing up for a free trial and testing out the awesomeness of blogVault for yourself.

Try out blogVault →