Drupal's content moderation and workflow tools allow you to configure and support a flexible multistep publication process.
An overview of some of our favorite Drupal documentation resources.
Testing in Drupal
TopicDrupal includes the PHPUnit testing framework. This enables us to write unit and functional tests to attempt to minimize the number of bugs in our application.
Building one Drupal site is a fair amount of work in and of itself. But what about working with multiple Drupal sites? Sometimes you have a few sites that make sense together, either from a maintenance perspective, or due to an overlap in content or users. There are a number of different ways to approach this in Drupal, and which path you follow varies considerably depending on the exact use case you need to fulfill. In this lesson we'll get a good look at the problem multiple sites can pose, and list out some common use cases. Then we'll take a look at three different broad categories of solutions, with some specific architectural approaches. The rest of this series will walk through managing multiple sites using Drupal core's built-in multisite system.
If you are interested in working with the Domain Access project instead of core multisite, you should look at the Introduction to Domain Access series.
When working with domain names and getting a website to show up in your browser, it can be a little confusing to sort out which bits of the puzzle are where. You need to be able to properly configure the domain name server (DNS) so your browser can match up a domain name with a web server, and then make sure the Apache web server knows which files to direct that incoming domain name to. In this lesson we're going to walk through the process from the browser request to the website files. We'll take a look at the Apache documentation on virtual hosts (or vhosts) and discuss where to find this configuration. Then we'll take a look at some example vhost files to see what's going on in there.
Additional resources
As we wrap up and review the series, we also look at other modules that work with, or depend on, Features to provide you a jumpstart.
Additional resources
Features project (Drupal.org)
Introduction to Drush Series (Drupalize.Me)
https://github.com/DrupalizeMe/drupalize-lullablog (GitHub.com)
This is a quick overview of the various pieces we'll be covering in this series.
Additional resources
Features project (Drupal.org)
Introduction to Drush Series (Drupalize.Me)
We'll take some time to open up the feature we've created and look at the code that was generated so that we can better understand what is going on under the hood.
Additional resources
Features project (Drupal.org)
Introduction to Drush Series (Drupalize.Me)
https://github.com/DrupalizeMe/drupalize-lullablog (GitHub.com)
In this video we'll look at how you can update a feature by making changes, reviewing overrides, and then recreating the feature for deployment.
Additional resources
Features project (Drupal.org)
Introduction to Drush Series (Drupalize.Me)
https://github.com/DrupalizeMe/drupalize-lullablog (GitHub.com)
Sometimes when a feature has been overridden we don't want to update the feature, but instead go back to where we were. Here we will look at how to revert a feature, as well as how to use Drush to make these processes much faster and simpler.
Additional resources
Features project (Drupal.org)
Introduction to Drush Series (Drupalize.Me)
https://github.com/DrupalizeMe/drupalize-lullablog (GitHub.com)
Often you need to create a feature with system variables to make them complete. Features itself does not provide this, but the Strongarm module does, and we'll see how to add that to the mix.
Additional resources
Features project (Drupal.org)
Introduction to Drush Series (Drupalize.Me)
https://github.com/DrupalizeMe/drupalize-lullablog (GitHub.com)
In this video we'll specifically look at using Git as a tool to aid our development process, especially when working with other people, to make sure that you don't step on each others toes and destroy work.
Additional resources
Features project (Drupal.org)
Introduction to Drush Series (Drupalize.Me)
https://github.com/DrupalizeMe/drupalize-lullablog (GitHub.com)
Features are most often used for building out actual site features. Here we look at how you can use Features to provide you with quickstart developer tools as well.
Additional resources
Features project (Drupal.org)
Introduction to Drush Series (Drupalize.Me)
https://github.com/DrupalizeMe/drupalize-lullablog (GitHub.com)
If you have more than one feature module on your site, they can sometimes step on each other and cause nasty conflicts. We'll create some conflicts and show you how this happens and how to back out of them.
Additional resources
Features project (Drupal.org)
Introduction to Drush Series (Drupalize.Me)
https://github.com/DrupalizeMe/drupalize-lullablog (GitHub.com)
When you write your own custom modules, you can make them exportable to Features as well. Here we look at how to do that with the Chaos Tools (CTools) module.
Additional resources
CTools project (Drupal.org)