Blog

Good form: 5 tips for a smooth sign-up process

Cheryl writes about sign-up and contact forms, and provides 5 tips to improve them:

A lot of effort goes into engaging your visitors to ‘Sign-up’ or ‘Contact’ you. You send them a warm and fuzzy invitation to complete the form, tell them all the great reasons why they should complete the form… but who likes to complete a form? You can help guarantee a smooth sign-up process and increase the completion rate of your web forms with these five tips.

5 Mistakes to Avoid on Your Drupal Website - Number 1: Architecture

Heather James writes about mistakes in architecture with Drupal sites:

From an architecture standpoint, these are the most vital decisions you'll make to ensure the success and performance of your Drupal website.

  • How you structure content
  • How you configure the display
  • How you organize functionality

Developer magic: develop locally, but retrieve sites/default/files from production server

Lullabot nailed it: If you work on large Drupal sites, you probably run into the problem of the enormous "files" directory. Keeping your development server (or personal computer) in sync with production is a big pain, but without those uploads and file attachments it's easy to miss important design problems with site content.

They provide a fix, but one thing we would like to do is serve the local file if it exists, only then access the remote server. This is the set of rewrite rules we recommend you put in your vhost definition (don't touch your Drupal .htaccess):

<VirtualHost *:80>
  ServerName www.example.com
  DocumentRoot /home/me/src/www.example.com

  <IfModule mod_rewrite.c>
    RewriteEngine on
    # Force image styles that have local files that exist to be generated.
    RewriteCond %{REQUEST_URI} ^/sites/([^\/]*)/files/styles/[^\/]*/public/((.*))$
    RewriteCond %{DOCUMENT_ROOT}/sites/%1/files/%2 -f
    RewriteRule ^(.*)$ $1 [qsappend,last]
    # Otherwise, send anything else that's in the files directory to the
    # production server, if it does not exist.
    RewriteCond %{REQUEST_URI} ^/sites/([^\/]*)/files/(.*)$
    RewriteCond %{REQUEST_URI} !^/sites/[^\/]*/files/css/.*$
    RewriteCond %{REQUEST_URI} !^/sites/[^\/]*/files/js/.*$
    RewriteCond %{DOCUMENT_ROOT}/sites/%1/files/%2 !-f
    RewriteCond %{DOCUMENT_ROOT}/sites/%1/files/%2 !-d
    RewriteRule ^(.*)$ http://www.ljhooker.co.nz$1 [qsappend,last]
  </IfModule>

</VirtualHost>

A Simple Drupal 7 to Drupal 8 Migration

Blake Hall writes about his experience doing a simple Drupal 7 to 8 migration:

The developer in me has been itching to give it a try on a "real" project. The Drupalize.Me site itself is pretty complex: e-commerce (with recurring billing), video delivery, and piles and piles of content. Suffice it to say it's not a prime candidate for migration right now. Our blog however, is definitely a better prospect. Justin has a great new design for us. Amber has mentioned how much she'd like the new Drupal 8 authoring tools. The blog is relatively straight-forward which makes it a great way for our whole team to start using Drupal 8. So, as we start to think about upgrading our blog the first thing we're going to have to think about is data migration. Let's take a look at Migrate module, that's now part of Drupal core, and see how much work we might have ahead of ourselves.

18 cool Drupal 8 modules for site builders

Joris Snoek gives us his top list of Drupal 8 modules for site builders:

Furthermore, what I noticed last month on module updates: ... Validating a form in your Drupal website without refreshing the page. This widely used module now offers a Release Candidate for Drupal 8.

Useful list, even for Drupal 7 builders.

Drupal 8: BigPipe module ready

Wim Leers writes about Drupal 8's Big Pipe module, his quest to make the entire web fast:

Rather than explaining what it does, see for yourself:

In search of the most optimized image in Drupal 7

Jim Birch writes about image optimisation:

While Drupal Image styles allow us to create the exact size we want, I was looking for a way to better optimize the image size, make progressive jpegs, and keep the rendered images looking as close to the original as possible.

Some useful tips there.

PHP/Apache and other software changes

We have performed a couple of upgrades recently. Our PHP 5.5 version is now 5.5.30, the latest available. We upgraded to Apache 2.4, so we're running Apache 2.4.7. phpMyAdmin version is now 4.5.2, the latest available.

We've also upgraded Drush to version 8.0.0, the latest available.

And finally, our mail server is now running RoundCube 1.1.3.

Front End Performance Strategy: Styles

Jason Stanbery writes about front-end performance with Drupal:

The quest for improved page-load speed and website performance is constant. And it should be. The speed and responsiveness of a website have a significant impact on conversion, search engine optimization, and the digital experience in general.

...

Once again we’ve demonstrated how sloppy front-end implementations can seriously hamper Drupal’s back-end magic. By favoring style sheet aggregation and reining in exuberant preprocessing, we can save the browser a lot of work.

Headless Drupal with Angular JS and Bootstrap - Hello World

Tyler Frankenstein presents a short introduction to headless Drupal:

This tutorial describes how to build a very simple de-coupled Drupal web application powered by Angular JS and Bootstrap. The inspiration for writing this tutorial came after completing my first Angular JS module (angular-drupal), which of course is for Drupal!