With so many new improvements and enhancements to the Drupal platform, it can be easy to forget that Drupal excels at the simple stuff. At its heart, Drupal is a content management system that can support both large and small scale operations, from large government entities to Fortune 500 companies.
In this post, we’ll share an experience we had with a client that illustrates how Drupal makes it easy to manage and update large volumes of content in a time sensitive situation.
One of our clients, a 500 lawyer law firm, was going through a rebrand. After finding out that a prominent lawyer was leaving the practice, our client came to us to help them remove every instance of that person’s name on their website. Due to confidentiality requirements, the change was embargoed and Duo was only notified on the Friday before the change was set to take place the following Monday.
Preparing For Action
Removing every instance of the departing lawyer’s name was not an easy task, especially not in a sensitive situation where timing and confidentiality were extremely important. Because all website changes had to be coordinated with the client releasing the news through a press release, no changes could be made before the set date and time. There could not be any down time associated with these content changes and it was not possible for us to mandate a content freeze and stage the update on a different server. Due to all the different factors at play, this situation required constant coordination with our client in order to prepare to deploy the changes at the right moment.
We began the process by assessing where the name appeared and how it was getting onto each page of the client’s site. We looked at all of the site code, including in the header and footer templates, and made note of where it needed to be deleted.
Where it started to get more tricky was moving from searching through the code itself to searching the database. In Drupal, all content is stored in a single database. The content in the database in not encrypted, making it easier to quickly find words or other data in the database itself. (It's important to note that Drupal does encrypt user passwords in the database.)
Our client has used content revisioning in Drupal since 2010, resulting in over 25,000 current or previous copies of pages stored in the database. Developers used third party tools to look at every row, every field, and every database table to find all instances of the name.
After analyzing the site, we queued up a recipe that outlined everything we needed to do and the order in which they needed to be done. We practiced it a few times over the weekend to make sure that we could do it as automated and quickly as possible when it was time for the real deal.
Putting the Plan in Motion
Monday was go time. Once our development team had the ok to begin making the changes to the live site, we ran through what we practiced over the weekend, going back into the site code and deleting all mentions of the lawyer’s name. Then we went back into the database, doing direct database queries to update and change the name.
While we found everything we were looking for and got it removed from the site, what we didn’t account for was typos in the name we were removing. We did a second pass through the site, searching for various misspellings of the name to ensure we found every possible instance. We also spent time helping the client make various additional updates to the site, like updating images on the site that contained the name that needed to be removed. There were also some official changes to the name of the client’s law firm, so we went back and made additional edits to the header and footer.
What We Learned
Drupal makes it easy to update content and make the fine tuning changes required in an industry like law, where there is a lot of turnover and websites deal with sensitive information. If you're a large company handling a lot of information, or in an industry that deals with a lot of people coming and going, working with Drupal allows you to make the content management process easier.
The fact that Drupal is open source allowed us to easily use other tools that complement the technology stack to help us get the changes done faster and more reliably. If your site is built in a different CMS, depending on how the database is structured, you might not be able to easily do a search and find to be able to find all instances of a term. In addition, you’ll be stuck with the tools that CMS offers and wouldn’t be able to use outside help the way we did in this case with Drupal.
Finally, this project would not have gone nearly as smoothly if Duo did not work as closely with our clients. We were able to dedicate the resources to handle a sensitive emergency, from both a confidentiality and timing standpoint, which made all the difference in the making sure the process went off without a hitch.