How do we make Drupal the cool kid again?
Did you know that about 60% of Drupal sites are still on D7, even with D10 about to be released in December? There’s bee...
It’s not every day you have an opportunity to help rethink and redesign a website that is global in its impact and audience. We've been honored to work on such an important endeavor and s...
Welcome to part two of Hell is Programming a Calendar, where I will dive into some of the more nitty-gritty details about handling time specifically in Drupal. If you haven’t already, I highly rec...
At Chapter Three, we believe that most Drupal websites could gain a performance boost by going headless. While this is how we’re planning to build future Drupal sites, we understand going all in on headless might not be feasible for existing sites. This is why we built next-drupal for progressive adoption.
A project team is managing a site for people to see events in their local community. The client asks the team to make a (seemingly) pretty simple feature; they want logged-in users to be able to ma...
Oftentimes projects need a way to serve multiple domains from the same installation or from the same codebase. In Drupal we have several ways to accomplish this, and this post will describe some ar...
I presented at DrupalCon Nashville about working with the City of San Francisco to make a better transaction experience for residents. Moving beyond a simple content site where we te...
In this blog post I will show you how to generate custom URL aliases (different from the default set on config page). The alias will be generated based on the term in your entity.
San Francisco Drupal User Group has been running for 10 years and month after month high quality content is shared by the Drupal community for the Drupal community. The monthly meetups are hos...
Our minds and hearts were full as BADCamp 2016 came to a close. It was overflowing with excellent presentations and the best of the community. Our team led a Drupal 8 training, presented in th...
In this blog post I will provide an example of a method I use to deploy changes on the projects that I work on my own time. This method is very useful when there is a need to make a lot of manual changes to the site when there is a new release. You could use this method to automate deployment process of your Drupal sites.
Trust and good listening skills are fundamental to great communication. To ensure our clients’ success, we emphasize communication that keeps projects focused and directed.
Here’s how you...
I recently needed to add custom functionality to a Views filter on a Drupal 7 site, but ran into problems when I tried to hook into the views rendering process to update the options for an exposed ...
In this blog post I will briefly overview some of the very useful HTTP response header parameters that will help to secure any website. In short - HTTP Response headers are name-value pairs of strings sent back from a server with the content you requested.
Apparently I am lucky, having gone through years of Drupal development without encountering a corrupted database registry. If you encounter a “Failed opening required … “ error then it is possible ...
These are instructions on how to setup DigitalOcean droplet to host your personal website. DigitalOcean is a very affordable cloud hosting for developers (starting from $5 for a very simple droplet 512MB Memory / 1 CPU and 20GB disk).
This is a very simple tutorial that could help you with the performance of your custom modules. I will show you how to use Cache API in Drupal 8 and Drupal 7.
As with many community-centric projects involving multiple parties, it is always difficult to juggle free time between teammates. Torn between client-centric activities and community-focused endeavors, we finally found a way to make bring all interested parties together. A group of us are all actively involved and eager to make waves in the Drupal administration game.
This is a very simple module that demonstrates implementation of a custom RESTful API in Drupal 8. Creating your own API with Drupal 8 has become a routine task that doesn't require a lot of work. However there are a lot of things I am not covering in this blog post, such as user login and user registration etc...
Origin pull CDN is a type of CDN where you don't have to upload files to the CDN server instead CDN does it for you. You only rewrite URLs to point to the CDN. When asked for a specific file, the CDN will first go to the original server, pull the file, cache and serve it
These are instructions on how to configure SimpleSAMLphp library for Drupal 8 on Acquia, the configuration settings may vary depending on the ADFS configuration.
Since making the decision to use Drupal 8 for all new projects Chapter Three has become even more active in the issue queues. We actively invest in Drupal 8 every day, funding Alex to work on it fu...
It is time for the Drupal community to catch up the rest of the open source world and drop the module review process from Drupal.org.
I woke up this morning to see this series of tweets f...
As a Project Manager at a digital agency, I live and die by my inbox. It's where every PM tool I use converges into a hub of notifications, important documents, questions and change requests. Time is money. Spending time manicuring your inbox improves communication, reduces overhead and reduces oversights.
I started an internal discussion with the team about the possibility of contributing an administrative theme to the community. Many were eager to help. A new Slack channel was born, and a impassioned flurry of ideas and concepts came pouring out.
When starting a new project we often outline our development process with our clients. The explanation helps our clients understand how important each aspect is to the immediate- and long-term success of their projects. This also illustrates the environment scheme needed.