Drupal News

Jeff Geerling's Blog: The FINAL Drupal 7 to 8 migration live stream - May 19

Main Drupal Feed - Mon, 05/18/2020 - 16:48
The FINAL Drupal 7 to 8 migration live stream - May 19

May 19 Update: It was a total success, yay! This site is now running Drupal 8.

Over 100 days in, the big day has finally arrived—it's time to upgrade this website from Drupal 7 to Drupal 8! The entire process has been documented, one hour at a time, in my 'Drupal 7 to 8' live streams. Visit that link to view all the previous episodes, from setting up a new Drupal codebase, to running the first test drush migrate-upgrade command, to upgrading this site's theme from PHPtemplate in Drupal 7 to Twig in Drupal 8.

Some of the highlights:

Jeff Geerling May 18, 2020

Jeff Geerling's Blog: The FINAL Drupal 7 to 8 migration live stream - May 19

Main Drupal Feed - Mon, 05/18/2020 - 16:48

Over 100 days in, the big day has finally arrived—it's time to upgrade this website from Drupal 7 to Drupal 8! The entire process has been documented, one hour at a time, in my 'Drupal 7 to 8' live streams. Visit that link to view all the previous episodes, from setting up a new Drupal codebase, to running the first test drush migrate-upgrade command, to upgrading this site's theme from PHPtemplate in Drupal 7 to Twig in Drupal 8.

Some of the highlights:

Tag1 Consulting: How Web Components and reactivity could reinvent Drupal - part 5

Main Drupal Feed - Mon, 05/18/2020 - 13:39

In this multi-part blog series that covers Fabian's session in detail from start to finish, we summarize some of the key ideas that could promise an exciting vision not only for the front-end developer experience of Drupal but also for the user experience all Drupal developers have to offer their customers. In this fifth installment in the series, we continue our analysis of some of the previous solutions we examined and consider some of the newfangled approaches made possible by this evolution in Drupal.

Read more preston Mon, 05/18/2020 - 06:39

ADCI Solutions: Five use cases that highlight the benefits of the Bibliography & Citation project

Main Drupal Feed - Mon, 05/18/2020 - 09:49

Before 2015 those professionals who need to compile bibliographic data and design citations correctly on their Drupal-powered websites used the Biblio module. But the Drupal 8 era has begun and the Bibliography & Citation project became the only alternative to Biblio.

Read 5 stories about practical benefits of the Bibliography & Citation project, told by its users.  


Agiledrop.com Blog: Driving business growth with open-source Digital Experience Frameworks

Main Drupal Feed - Mon, 05/18/2020 - 07:35

This post will discuss the main reasons for opting for open-source digital experience frameworks rather than custom development or proprietary tools, and take a look at the benefits of using them, both for your products/services as well as for your internal operations.


Kristen Pol: Preparing yourself for Drupal 9 porting weekend

Main Drupal Feed - Mon, 05/18/2020 - 01:12

As you may have heard, Drupal 9 porting day a couple weeks ago was a huge success! Gábor Hojtsy wrote up a great summary on the event including all the money that was raised for the Drupal Association. And, you can read my porting day recap as well. Thanks again to all who helped out.

The April porting day was so successful that Surabhi Gokte and Gabriele Maira (gambry) encouraged Gábor to organize a repeat performance and, like magic, we have Drupal 9 porting weekend coming May 22 and 23. This is scheduled during the time we had hoped to contribute at DrupalCon Minneapolis. Now we'll join each other virtually in a few days to make Drupal even better.

The goal for Drupal 9 porting weekend is to make more Drupal 8 contributed projects (modules, themes, and distributions) compatible with Drupal 9. As of May 16, 2020, there are 1,617 out of 8,982 projects that already work on Drupal 9. So, during the porting weekend, we'll work on the 7,365 that don't. While that might seem like a daunting number, about half of those (3,405) likely only need a one-line change to make the project Drupal 9 compatible!

There is a wonderful effort underway right now to automate Drupal 9 compatibility issue and patch creation for contributed projects. Even with this effort, we still need your help during porting weekend. We hope you can participate!

Image credit: Aaron Deutsch

I've listed some useful Drupal 9 porting resources you can review and information about collaborating in Slack during the event. I've also added specific sections for preparation depending on the type of contribution you are hoping to do:

read more

DrupalEasy: DrupalEasy Podcast 230 - Ryan Price (feature flags), Andrew Riley (news, module picks, bikes), The Change Notice (Chris Weber)

Main Drupal Feed - Sun, 05/17/2020 - 22:47

Direct .mp3 file download.

We missed a week, but we're back with a super-sized retro episode where we talk with two of the original DrupalEasy podcast hosts! First, Andrew Riley drops by to cover some recent Drupal news and make some module picks-of-the week (including a Drupal logo memory game!) Then, Mike speaks with Ryan Price about feature flags - it's not a module, not a service, but rather a design pattern. Finally, Chris Weber also has some new change records for us.

URLs mentioned The Change Notice DrupalEasy News Sponsors Subscribe

Subscribe to our podcast on iTunes, Google Play or Miro. Listen to our podcast on Stitcher.

If you'd like to leave us a voicemail, call 321-396-2340. Please keep in mind that we might play your voicemail during one of our future podcasts. Feel free to call in with suggestions, rants, questions, or corrections. If you'd rather just send us an email, please use our contact page.

DrupalEasy: Congrats to the Drupal Career Online class of Spring, 2020!

Main Drupal Feed - Sun, 05/17/2020 - 15:38

Last week, the 15th semester of Drupal Career Online concluded, and we're proud to announce 10 new graduates of the program! Congrats to Aida, Ashley, Avery, Carla, Jada, Kim, Matt, Micah, Tonderlier, and Tyler!

Drupal Career Online is a 12-week, live-instructor, online Drupal training program designed to teach best practices and sound fundamentals for Drupal developers. 

The course includes not only (virtual) classroom instruction, but also a number of other experiences designed to provide students with various opportunities to learn and practice the material. 

  • Community mentors - each student is (optionally) introduced a volunteer Drupal community mentor. The mentor and student decide how best to work together to achieve the student's goals. Thanks so much to this semester's mentor volunteers: Ofer, Doug, Adam, Philip, Andy, Brian, Albert, and Corey.
  • Office hours - each week during the 12-week class, in addition to 7 hours of classroom time, there are 4 additional (optional) office hours. These operate much like traditional college office hours; we open a Zoom room, student show up and ask questions, or just hang out and listen in on others. 
  • Screencasts - in addition to dedicated, produced screencasts for each lesson, every classroom period (all 3.5 hours) is recorded and provided to students as raw video. This way, if they have to miss class for any reason, they can watch the recording. Many students who attend class also take advantage of these videos to rewatch portions of class that they need additional practice with. 
  • Weekly activity reports and evaluations - both the students and the instructor provides weekly feedback. This allows us to ensure that each student is getting exactly what they need to succeed in the DCO. 

While the DCO has been around for over 6 years, that doesn't mean that our curriculum is stale. In fact, just the opposite - every semester, the curriculum is updated with the latest best practices. In the Spring 2020 semester, for example, lessons were updated to include the new drupal/recommended-project Composer template, our module development lesson was updated to avoid Drupal 9 deprecations, our class project was updated, and best practice layout tools were update (with more of an emphasis on Layout Builder). These ongoing curriculum iterations ensure our graduates are learning current best practices!

Perhaps the most important aspect of the DCO is the fact that our alumni have access to weekly, office hours - each and every week throughout the year. These office hours provide an opportunity for alumni to re-connect, ask questions when they get stuck, and sometimes just lurk to hear what others are asking about. We feel that it provides a level of comfort to our alumni - that we are as invested in their future as they are.

The next semester of Drupal Career Online begins August 31. Interested in learning more about it? Come to one of our free, 1-hour Taste of Drupal webinars where we'll tell you all about the DCO and you can ask any questions you may have. 

Web Wash: Drupal Live Site Build (Part 1) – Project Set Up, Build Bootstrap Card Component using Layout Builder

Main Drupal Feed - Sun, 05/17/2020 - 11:17

Below are the show notes for the first video in a series on building a Drupal site using layout builder and Bootstrap. To help with the build process we’re going to follow a template and in each live stream session, we’ll build a component from the template.

And the plan is to have a semi-complete website after a few live streams.

Don’t forget to subscribe to our YouTube channel to stay up-to-date.

In this first video, we’re focusing on the three-card components below the homepage carousel.

We built the three-card components using a custom block type and layout builder. We’re not using paragraphs in this video.

So here are the show notes for the video.

Digital Echidna: Thoughts on all things digital: Drupal Modules as Solutions, Toolkits and a Middle Way

Main Drupal Feed - Fri, 05/15/2020 - 11:05
There is a lot of excitement in the Drupal community about the pending release of Drupal 9. In particular, one of the most appealing elements is how the transition to Drupal 9 promises to be the easiest major upgrade in more than a decade. In…

Droptica: Drupal in Search of the Best Editorial Experience

Main Drupal Feed - Fri, 05/15/2020 - 07:28

The editorial experience becomes more and more important for each CMS. Users want more control but easier interfaces. In Drupal, one of the biggest and most popular OpenSource CMSes on the market, the search for the best experience continues until today. Various approaches are tested by the community and with each edition, some new approaches are investigated and some are abandoned. From the perspective of a Drupal agency, it is quite interesting to watch this process unfold.

Let’s explore how Drupal editorial experience got to where it is today and where it is heading.

Drupal beginnings

Initially, Drupal pages were built on nodes. Think of a node as an article or page in a typical CMS. A node had a Title and a Body. You titled the node and inserted all the content in one big text field. Typically people would type in the body field the content of the page - this would be mostly text, but you could stick anything you like in there (HTML, images etc) Quite quickly people incorporated WYSIWYG editors into the body (CKEditor, TinyMCE and other ones were integrated as community-contributed modules). You could now author a quite complex page without knowledge of HTML.

The WYSIWYG’s were so popular, that in Drupal 7 CKEditor was added into Drupal core.

On the database side, everything  was still quite simple. A node table with title and an additional table for the body. That is how Wordpress stayed pretty much till today. In Drupal however, the evolution continued. 

Drupal 6 - the domination of CCK & templating

At the time of Drupal 5, an initially small module was created, which in Drupal 6 completely changed the rules of the game (the Content Construction Kit module, aka. CCK).

CCK was a contributed module which allowed to add additional fields to nodes. This does not sound too exciting, but it was. The absolutely brilliant CCK module allowed users to add various fields (number, text, bool, select etc) and it was creating a separate database table for each field. The table field was matching what you wanted to store in it (A decimal, a float, a varchar, a text etc). On top of that, it was adding the field to the default content form. 

This was magnificent because you could create a form with multiple fields and then display the data in a template pre-built by the developer (an image on the right, stats on the left, long tests at the bottom -- that sort of thing). This is how one was building pages in Drupal. The editor did not have to ‘design’ the layout in WYSIWYG anymore. You could just fill in a form with fields and the template took care of the rest. 

Moreover, you could now query in SQL for particular nodes by the field content. Eg. if you created a City node type and added a population decimal field to it, you could search for all cities with a population larger or smaller than a set amount. 

Very quickly after CCK, another module was created - the Views module. Views allowed users to build the queries in the admin interface. You could now create a list of cities ordered by population with a title and a teaser and some other data without the need to code anything. This was a massive breakthrough which allowed developers to create very compelling websites without writing a line of code. 

CCK was so popular that is was incorporated into Drupal in version 7 and Views followed in Drupal 8.

This is how Drupal websites were built for quite a while. Many are still built like this today.

Drupal 7 - First attempts at page layouts 

From Drupal 7 fields were considered a standard. Templating, however, was not sufficient for the community and clients. Drupal developers began searching for solutions to allow more control over the content display with just the UI.

The main reason for the search efforts is the way websites began to be built. The knowledge that an additional click reduces the chance the customer will get to the content was propagating. The approach of having a sidebar and dividing information into pages was no longer interesting. Long scrollable pages were born.

The advent of long landing pages with content in sections began somewhere in 2010. It was, however, the mobile that effectively killed the sidebar. You just could not fit a submenu in a sidebar on mobile. You now had to stick everything on one long scrollable page with multiple sections (scrolling on mobile is much easier than clicking links). And each section had to be interesting, compelling and different.

Drupal developers started to search for solutions on how to allow the editors to create sections on pages easier.

The initial solutions were:

  • Panelizer - a module based on another one (Panels) which was effectively taking over the node display. Instead of just fields, you could now design your page to include blocks, fields, static images, views and various other elements Drupal renders. Editors could override “the default’ predefined layout on a node by node basis. The solution was great and got a lot of traction in the Drupal world.
  • Paragraphs - a bit late to the party on Drupal 7, paragraphs nonetheless made a splash. It started to gain popularity very quickly. The main reason for that was that it was bridging the 2 worlds: drupal form building experience and freedom to add blocks while maintaining ease of use for the editors, which the above solutions did not have. 
  • Context - Context a more general module, which gave users a mechanism for well - acting on contexts (eg what page you are on, what user or role you are etc. ) Using these conditions, one could add reactions (eg. show this block, set this setting). Context was very widely used for a while to arrange blocks on pages. If I am on this page, I want to see these blocks. The downside was you managed the layouts from a central location, needed admin privileges to manage the layouts and the UI was not straightforward. Not suitable for large websites.
  • Blockreference - a simple yet powerful module which allows referencing blocks from a node and effectively stacks them one over the other. This solution did not get a lot of traction.

Current state in Drupal 8 and onwards

Drupal 8, being a very big re-write of Drupal has evened out the playing field a little, allowing the community to vote again on what it thinks should be the approach to building pages. 

Blockreference did not get a D8 version, mostly because entityreference module was now in Drupal 8 core and blocks became references. One could theoretically build pages like this using what Drupal gives out of the box, but that did not catch on.

Context did not manage to gather a lot of usages in D8 and until today does not have a stable release.

Paragraphs - initial winner

The paragraphs module came out as a clear winner. It was stable very quickly and became the de-facto standard in Drupal 8 for over a year. With over 140k installations it now runs one-third of all the drupal websites. It is also worth mentioning that popular Drupal distributions created on Drupal 8 chose paragraphs as the base of their content editing experience. These would be in particular Thunder - distro for publishing houses and Droopler - for building corporate websites. 

Here is an overview of how paragraphs work in Drupal 8. A lot of work is also being done to further improve the editorial experience in the Experimental widget.

Panelizer moved to the core (became Layout Builder)

Panelizer took a different road. It lingered on behind paragraphs in term of the number of installs but because of its popularity in D7 work was underway to migrate it into Drupal core (just as CCK in d7). It was however only in Drupal 8.5 that Layout Builder became available (as an experimental module). At Drupal 7.8 it became stable. 

Layout Builder offers great flexibility and great promise, but the UI even as of writing still has a long way to go to be self-explanatory (one needs a bit of training as many things are not obvious). Also, there is no clear “best practice” as to how to manage content now and what should be composing the pages. Integrations are also lagging, most importantly with search modules. 

Currently, there is no clear winner and best practice is not established yet. There is the paragraphs module with 100k installations, multiple integrations and a clear UI. On the other hand, there is the Layout Builder which is in Drupal core, what is an incredible strength. 

Still, though there are many modules which did not stand the test of time and were removed from the core.

Gutenberg (a WordPress editor)

Last but not least there is the Gutenberg project. It is the newest of the interesting editors in Drupal. It was ported from Wordpress where it is the main editor.

Gutenberg is a React-based editor which takes over the whole editing experience giving the user a WYSIWYG like an experience. It differs in approach to Paragraphs and Layout Builder in that it does not store the layout or entities in the database, but it stores the generated HTML. You create the content with a WYSIWYG editor and the resulting HTML is saved. This makes it a true WYSIWYG readability of the content for machines (automatic updates or migrations of such content may be troublesome). Nonetheless, it continues to be integrated into Drupal better and better. With 900 or so installs it is by no means comparable to the two above but the speed of adoption is impressive. Check out a quick overview of Gutenberg in Drupal.

As you can see, there is no clear winner. Drupal community is still testing various approaches to building websites and empowering the editors. On the one hand, this is fantastic because competition helps the best solution win. On the other, the efforts of developers are spread over multiple various approaches, making progress slower. What is best? I do not know.


PreviousNext: Using the Drupal Diff Component in Custom Forms

Main Drupal Feed - Fri, 05/15/2020 - 04:30

Drupal 8 comes with a Diff component in core. It's mainly used for showing changes to configuration or content revisions. However, it can be used in other ways too. Here are some quick steps to show how to use the Diff component in your custom forms or controllers.

by Jibran Ijaz / 15 May 2020

One way Drupal core uses the Diff component is to show the difference between 'Active' and 'Staged' config. See \Drupal\Core\Config\ConfigManager::diff for more details.

Recently, I was building a form where I had to show the diff between two versions of an entity. The Diff component is designed as a stand-alone component that can be used to show the diff between any two arrays or strings. So why not use that in our own forms?

Here's a quick example:

use Drupal\Component\Diff\Diff; use Drupal\Core\Serialization\Yaml; $diffFormatter = \Drupal::service('diff.formatter'); $from = explode("\n", Yaml::encode($current->toArray())); $to = explode("\n", Yaml::encode($revision->toArray())); $diff = new Diff($from, $to); $diffFormatter->show_header = FALSE; // Add the CSS for the inline diff. $form['#attached']['library'][] = 'system/diff'; $form['diff'] = [ '#type' => 'table', '#attributes' => [ 'class' => ['diff'], ], '#header' => [ ['data' => t('From'), 'colspan' => '2'], ['data' => t('To'), 'colspan' => '2'], ], '#rows' => $diffFormatter->format($diff), ];

I hope this helps. Let me know how you have used the Diff component in your project in the comments!

Tagged Form API, Drupal 8, Diff Component

Lullabot: Lullabot Podcast: Update on Olivero: The Making of Drupal 9's New Look

Main Drupal Feed - Fri, 05/15/2020 - 01:42

Matt and Mike talk with Putra Bonaccorsi and host Mike Herchel about Drupal 9's new front-end theme, and its past, present, and future. 

Mediacurrent: How Digital Psychology and Personas Influenced the Area Alert Navigation

Main Drupal Feed - Thu, 05/14/2020 - 11:43

Mediacurrent designer Becky Cierpich recently discussed the UX choices and persuasive techniques used in designing Area Alert, our open source emergency site. Our VP of Technical Operations, Jay Callicott, also discussed the beta release of the distribution and how Mediacurrent has worked with Pantheon to provide a free public upstream and 90 days of free hosting for qualifying organizations looking to develop the site quickly and efficiently for their needs. 

This week, I’m excited to dive into the navigation choices we made for the distribution and how this can be best utilized when you are creating your site.

The Psychology Behind Our Navigation Design Choices

When you think about all of the information your site users need to get through the crisis at hand, you may be thinking about the emergency at hand and the people’s lives at stake. An intuitive navigation and establishing effective communication patterns may not be top of mind right away. However, your navigation should be a major factor into how your site is set up. 

We can empathize with this need and created a navigation on Area Alert that is framed around what your users are looking for when they enter your site; namely, they are focused on fulfilling immediate physiological needs (such as access to food or shelter) one might find in Maslow’s hierarchy of needs. We created a navigation that would meet the basic requirements someone might search for in a crisis.

Along with the design patterns chosen, the navigation follows a Z-shaped pattern in that we utilize negative space to the left of the logo and around the search bar to give breathing room to the top part of the site. As the Gestalt principles in design highlight, negative space can be used to improve composition, which is what informed us to allow for space between elements in the navigation. We followed that with topics most important to users based on reviewing information about past widespread emergencies. For instance, we included sections like Urgent Help after learning about how the public had limited access to information when Hurricane Harvey disrupted typical emergency communication methods in 2017.

Arrows in the navigation are expected visual cues and indicate subpages for the main topics to guide the user to find information most relevant to them. Users who are looking for information regarding a crisis are already in a heightened sensitive state, and ensuring that even the smallest elements of your design align with the expectations is critical in a reassuring experience.

Our Top-Level Navigation Topics

The top-level navigation topics reflect some of the most pressing needs related to the current crisis, especially in terms of public health. We felt it was important to leave space for people to self-select and choose a bucket of topics most important to them because at any given time they may be in various levels of need or explore topics based on different aspects of their lives. A working parent who has a young child may want to explore topics relevant to their child’s virtual learning one day, but the next may want information about how the current crisis impacts their job. 

We also employed digital psychology methods when thinking about the main ideas in our navigation—namely the Fogg Behavior Model. The model focuses on: 

  • Motivation - desire or willingness to do something

  • Ability - possessing the means to do something
  • And a trigger that compels us to take action

In order to understand users’ immediate needs and motivations, we reviewed several government sites, live press conferences, and user comments across social media to identify four main reasons for looking for content:

  • Urgency - Users may have been in a time of need or loss with no time to click around
  • General fact-finding - Users who went this route were typically validating something specific they heard about

  • Timeliness - Users may feel nervous and want to be informed on the latest

  • Authorative/Procedural - Users may be in a position of responsibility looking for guidelines and procedures relevant for their needs (e.g. an employer looking for guidelines relevant to his industry)

In general, we find that people using the site are likely highly motivated to find some of the top-level information, such as Urgent Help. In choosing this and other high-level topics in our main navigation, we have lowered the barrier of entry for users to take action through a consistent layout and sensible categorization of information. 

“Resources For” Dropdown

We chose the personas (Residents, Employees, Employers, and Students) in the Resources dropdown section because our research indicated these users would be the likely ones looking for information. 

In the current COVID-19 crisis, for instance, we know that many people have concerns about their employment situation and may want to know more about their rights. Employers are also an identified site visitor because they may be looking for information about how to keep their employees safe and this information may not be readily available from other sources. 

We also recognize that some people may fit multiple categories. For example, a parent may want to navigate to Residents resources for some topics to better understand overall community issues and to Students resources at other times for topics that impact their child’s education.

Public Health

In the current COVID-19 crisis, public health has been a major issue that site visitors are interested in learning about for their local area. Since mandates vary by locale and are being updated frequently, users may need a place to validate information they may have heard from family or on other channels. 

We developed the navigation to work fluidly based on the emergency at hand, with our current COVID-19 pandemic in the forefront of our thoughts. In other situations, this section may be a navigation item that can be customized to fit other needs for a particular emergency issue. 

All News

As a main level navigation, All News provides users access to timely news content that impacts everyone. We determined this was a necessary navigation item because as much as people may want to self-select, they may also wish to catch up on information quickly without often returning to the site. Adding All News into the navigation allows them to look at information quickly in one set area.

Urgent Help

Like All News, Urgent Help was developed with all personas in mind. We understand that people may be seeking information quickly, potentially experiencing loss or distress with little time or patience. They may not know where to start right away when they have an immediate need and this gives them a quick starting point. And just like the Public Health section, subtopics as part of Urgent Help may change depending on the particular emergency issue being faced at the time. 

We created Area Alert to be versatile, and content editors will be happy to know that if they wish, they can use other components, such as the accordion from the FAQ page, to make their Urgent Help page a quick resource with answers to questions users may have answered right away.

User-Focused Navigation Designed with You in Mind

Mediacurrent, a long-time contributor to open source, is committed to creating community-focused solutions to emergency situations, such as the COVID-19 pandemic currently happening worldwide. We would love to help you with setup or walk you through the demo so it works how you’re expecting when you use it. We aspire to help both organizations and municipalities seeking ways to help their communities in any way we can, so please contact us to answer any questions you may have regarding Area Alert.


Drupal blog: Drupal in COVID-19 Series: San Mateo County

Main Drupal Feed - Thu, 05/14/2020 - 10:55

Continuing our short series of articles highlighting ways that the Drupal software and its community are building solutions to help combat the effect of COVID-19, today we hear from Harish R. Rao of Interpersonal Frequency. Here, he describes their project at San Mateo County.

Under normal circumstances, a client asking for a new website “today” might seem laughable. But in the age of COVID-19, a quick turnaround on a new site could literally be a matter of life and death. In mid-March, San Mateo County, California reached out to the Interpersonal Frequency (I.F.) Solutions & Support team because their county, home to roughly 750,000 residents, had been one of the first in the U.S. to adopt a shelter-in-place order. The traffic on their county website had more than quintupled, and their current homepage was not working to convey vital and quickly evolving information in simple and accessible ways. 

Fortunately, San Mateo’s Drupal site was well-suited to the challenge. We knew we had the foundation for a solution, equipped to handle even a surge of visitors and able to support the rapid deployment of new content templates. 

We knew that our company was well-suited to the challenge, as well. Having collected aggregated analytics data and best practices from other civil emergencies, we understood the essentials needed, and we had clear indications of an urgent public need for COVID-19-related responses from municipal digital infrastructure. I.F. assembled a team of seven experts in content, user experience, and Drupal development. The team dove in to solve the specifics with the goal of supporting San Mateo’s residents and County staff as efficiently and effectively as possible. 

Our team worked with the client to marry best practices with their specific needs, such as clearly communicating and providing access to the public services still available online and breaking down information silos between government departments. We identified priorities and set out to provide a one-stop-shop for local COVID-19 updates that would be accessible, mobile-responsive, user-centered, and easy to maintain and update. We also set out to create a solution that could launch and assist the public even as the county was still developing new interior pages and that could morph to support new priorities as the situation evolved. We needed a site that would work now, next week, next month, and beyond. 

Drupal allowed us to address all of these goals. After a near round-the-clock effort over six days -- including a weekend -- we deployed. The design launched as a system of content cards that could be rearranged and repurposed as needed. It was purposely mobile-forward and flexible. The county has continued to shape and adjust the site as the situation and their priorities evolve, and you can see the latest iteration at SMCgov.org


Drupal Themes - Thu, 05/14/2020 - 02:39

This is a boostrap subtheme based in the background patterns design of the project patternFills

We get the patterns.css of the project and convert it to Sass mixin to apply to a blacka and white design.

A little extreme theme but may be someone like it.

This subtheme is based in Barrio theme

DrupalCon News: DrupalCon Global Announced

Main Drupal Feed - Wed, 05/13/2020 - 22:14
The Open Source Digital Experience Conference - Online Everywhere | July 14-17, 2020

Lullabot: Impact and Generosity in the Drupal Community

Main Drupal Feed - Wed, 05/13/2020 - 20:00

As the global pandemic continues to spread — causing widespread sickness and death, restricting in-person human contact, creating additional responsibilities at home or financial hardships, or any of the countless other changes to daily life that have resulted in feelings such as fear, anger, boredom, or uncertainty — this virus has forced some of us to reassess our values and our place in the world.

Evolving Web: What is Web Accessibility and Why You Should Care?

Main Drupal Feed - Wed, 05/13/2020 - 18:52

What is web accessibility?

Web accessibility is an inclusive design that ensures everyone can access your website, no matter their abilities. In the same way a ramp on the sidewalk makes sure someone in a wheelchair can get over the curb, having an alternative (alt) text on an image can make sure someone using a screen-reader can understand what the image conveys.

Types of Disabilities

Globally, 1 in 5 people have some form of a disability and someone's ability can change over time. For example, as adults age, they may lose some of their sight or hearing. A disability can also be temporary such as a broken arm or misplaced glasses. Sometimes the disability can be situational: someone on a busy subway who cannot hear the audio in a video would rather read captions, and someone by the pool in bright sunlight is in need of high contrast.  

Disabilities vary considerably. Some users with poor eyesight need high contrast and to increase the font size to access the content. Users who are blind need a screen-reader to access websites. Users who cannot hear need alternatives to access the audio content. Users with a mobility impairment may need to use voice activated commands or a mouse alternative such as a mouth-operated joystick to access the content. Users with epilepsy need to avoid quickly flashing content.   

How to Make Your Website Accessible

The best way to ensure your website is accessible is to provide multiple ways of accessing your content, such as alt text for images, captions for video and the ability to navigate with a keyboard instead of a mouse. Making sure the layout and structure of your website is logical, intuitive and simple to navigate can also make it easier to use for everyone.   

Why Web Accessibility Matters

Well, maybe now you're saying to yourself equal access sounds nice, but why should I care about web accessibility? This seems like an extra headache that is going to cost me money. Well, in fact, not caring about accessibility is going to cost you money. If your website is not accessible, you risk losing a significant portion of potential clients since 20% of the population will not be able to use your site. Second, the law mandates it.   

In the US, Title III of the Americans with Disabilities Act includes websites and now applies to any public-facing businesses and private businesses in 12 categories, including sales, entertainment, service establishments, recreation and more. A website which is deemed inaccessible to someone with a disability can be forced to immediately redesign the website and to pay monetary damages and the other party's attorney fees.   

In Canada, four provinces currently have web accessibility laws: Quebec, Manitoba, Nova Scotia and Ontario. The Accessibility for Ontarians with Disabilities Act (AODA) is the most comprehensive of the four, and aims to create a barrier-free Ontario by 2025. To this end, by 2021 all private and non-profit organizations with more than 50 employees and all public organizations must make their websites compliant with Web Content Accessibility Guidelines (WCAG). The federal government is looking to pass web accessibility guidelines in the near future with the aim of enforcing WCAG. We can expect Canadian federal web accessibility laws to be rolled out soon.   

With all this in mind, it makes sense to build accessibility into your website design and updates now before you are hastily forced to do so by new laws. Or, before you get sued. In 2019, the pizza giant Domino's famously lost a US Supreme Court Case (Domino's Pizza v. Guillermo Robles) by failing to make their website accessible to a blind man who used a screen reader to access their site and mobile app. And their brand will forever be remembered as the big bad pizza chain who went up against a blind man in court. And lost. Don't be Domino's. The damage to your brand alone is reason enough. 

Accessibility Is a Human Right

Web accessibility is a human rights issue. It is imperative that everyone can access the same services in society, no matter their abilities. Now more than ever, many essential services, such as banking, healthcare, utilities bills and education are moving online. The laws have been slow to catch up to the internet but as the internet becomes more and more integrated into our everyday lives, the courts are finally catching up. There is no time like the present to design a website with accessibility in mind, or to incorporate accessibility as you update your website. Also, it can just make it easier for everyone to navigate.   

We're happy to help get you there. Contact us if you want us to help make your website accessible, or take our Web Accessibility training.

+ more awesome articles by Evolving Web