Subscribe to feed Planet Drupal - aggregated feeds in category Planet Drupal
Bijgewerkt: 9 uur 52 min geleden

Mediacurrent: Dropcast: Episode 25: The Good, The BadCamp and The Ugly

ma, 2016/11/07 - 2:48pm

Recorded October 26th

This episode we are all back in the ‘studio’ to talk about the great time most of us had at BADCamp the weekend prior. Ryan didn’t go so he won’t have much to say, but he will of course have his Final Bell, along with some Blog Mentions, Drupal News and a variety of failed humor.


Mediacurrent: Habitat for Humanity launches new website in Drupal 8

ma, 2016/11/07 - 2:38pm

Habitat for Humanity wanted to explore new ways to further highlight volunteer opportunities, broaden international reach, increase donations, and build an engaging desktop and mobile presence through its website, Habitat undertook a new digital and content strategy to better help users find the information they are looking for to achieve these goals. The new recently was launched using Drupal 8 as its content management system.


Annertech: Things I Learned from the DrupalTwig Slack: Volume 2

ma, 2016/11/07 - 2:15pm
Things I Learned from the DrupalTwig Slack: Volume 2

Welcome to Volume 2 of my adventures in learnings from the DrupalTwig Slack, a resource that continues to be the best source of (frontend) knowledge for Drupal. Again, if you haven't joined, do so. (Volume 1 is here.)

And without further ado, here's some things I've learned (or helped others to learn):

Categorieën: - Thoughts: Drupalcon - My First Encounter

ma, 2016/11/07 - 12:05pm





Palantir:'s Guide to Digital Governance: Organization

ma, 2016/11/07 - 4:09am's Guide to Digital Governance: Organization's Guide to Digital Governance brandt Sun, 11/06/2016 - 21:09 Scott DiPerna Nov 7, 2016

This is the seventh installment of’s Guide to Digital Governance, a comprehensive guide intended to help get you started when developing a governance plan for your institution’s digital communications.

In this post we will cover...
  • Why organization is important to site visitors
  • Questions you should consider regarding your main site and subsites
  • Some tools for creating good test-driven information architecture

We want to make your project a success.

Let's Chat.

A website’s organization is one of the most important factors in determining how effective and useful the site is for its visitors. Sites that are well-organized, in a manner that visitors intuitively understand, will be more effective and useful than those which aren’t. Therefore, it is important to define for your institution who will have the authority and responsibility to determine your website’s organization, and how they will make those decisions.

Here are some questions to consider with regard to main websites and subsites within the main site.

Main Website
  • Who determines the overall organizational hierarchy of the main website?
  • Who determines the top-level menu options? How are those decided?
  • Who determines the subsequent levels of navigation, order, labeling, etc.? How are those established?
  • Who determines other navigational structures, such as utility menus, topic-based menus, etc.?
  • Are there site-wide taxonomies to be maintained? Who determines and edits those?
  • What role does usage data, analytics, and user-testing play in those decisions?
  • Are there limits to the size, quantity, or depth of navigation?
  • Are there any site-wide standards for how navigation and sub-navigation are displayed?
  • Is there a process for addressing concerns or proposed changes to the site’s organization?
  • Who has the ability to make changes to the website’s overall structure?
  • Is there a review or approval process that needs to be followed?
  • Who determines the organizations of sub-sites within the larger website?
  • Are there any guidelines or services for website owners who must create their own site organization?
  • Are there limits to the size, quantity, or depth of navigation?
  • Are there any site-wide standards for how navigation and sub-navigation are displayed?
  • Are there any site-wide standards for where navigation and sub-navigation are displayed on sub-site pages?
  • Are there rules for the labeling of navigation?
  • Are there sub-site specific taxonomies? How are those determined and edited? Must they conform to any site-wide standards or rules?

These questions cover only the definition of responsibility surrounding website organization, which presumes that you have good information architecture in place already. For more information on creating good, test-driven information architecture, Optimal Workshop has both advice and tools for conducting your own card sorts (OptimalSort) and menu “tree” tests (TreeJack). We use these tools regularly in our work.


This post is part of a larger series of posts, which make up a Guide to Digital Governance Planning. The sections follow a specific order intended to help you start at a high-level of thinking and then focus on greater and greater levels of detail. The sections of the guide are as follows:

  1. Starting at the 10,000ft View – Define the digital ecosystem your governance planning will encompass.
  2. Properties and Platforms – Define all the sites, applications and tools that live in your digital ecosystem.
  3. Ownership – Consider who ultimately owns and is responsible for each site, application and tool.
  4. Intended Use – Establish the fundamental purpose for the use of each site, application and tool.
  5. Roles and Permissions – Define who should be able to do what in each system.
  6. Content – Understand how ownership and permissions should apply to content.
  7. Organization – Establish how the content in your digital properties should be organized and structured.
  8. URLs – Define how URL patterns should be structured in your websites.
  9. Design – Determine who owns and is responsible for the many aspects design plays in digital communications and properties.
  10. Personal Websites – Consider the relationship your organization should have with personal websites of members of your organization.
  11. Private Websites, Intranets and Portals – Determine the policies that should govern site which are not available to the public.
  12. Web-Based Applications – Consider use and ownership of web-based tools and applications.
  13. E-Commerce – Determine the role of e-commerce in your website.
  14. Broadcast Email – Establish guidelines for the use of broadcast email to constituents and customers.
  15. Social Media – Set standards for the establishment and use of social media tools within the organization.
  16. Digital Communications Governance – Keep the guidelines you create updated and relevant.

Stay connected with the latest news on web strategy, design, and development.

Sign up for our newsletter.

PreviousNext: Building a layout system for Paragraphs

zo, 2016/11/06 - 11:37pm

A recent Drupal 8 project of ours had some great requirements around it’s landing pages, aimed at reusing existing components in a range of layouts and combinations. Paragraphs quickly established itself as the site-building tool of choice and Flexbox always wins for me as the CSS grid/layout approach, so we looked at how the two could be combined to give the client the flexibility they needed, without over-complicating the editor experience.


OhTheHugeManatee: Writing Drupal 8 Code for Drupal 7

za, 2016/11/05 - 12:05pm

A year ago I proposed a session for Drupalcon Mumbai and Drupalcon New Orleans, called “The best of both worlds”. It promised to show attendees how to write Drupal 8 code for Drupal 7 sites. I never ended up giving the session, but this week I got an email asking for more information. So in case it ever comes up again, here’s my own collection of resources on the subject.

The big improvement that’s hard for D7 developers to get used to is injected services. The service container module makes that possible in D7. The brilliant FabianX wrote it to make his life easier in writing render cache, and his is always a good example to follow! This module creates a service container for D7, which you use just like the container in D8. You can write independent, OO code that is unit testable, with service dependencies declared in a YAML file. Note that you will also need the registry autoload module to get PS4 namespaced autoloading!

I just mentioned unit testable code as a benefit of the service container. To be honest this is a little tricksy in Drupal 7. For my own custom work I tend to isolate the test environment from the rest of Drupal, so I don’t have to deal with everything else. Again, I followed Fabian’s example there by looking at how render cache does it’s tests. If you do want better integration, there is a good lullabot post that talks about (more) proper PHPUnit integration. .

Next on my list is Composer-managed dependencies. The Acquia developer blog has a great post about using Composer Manager for this in D7. This is a huge win for a lot of custom modules, and very easy.

Last is plugins. The rest of this list is in no particular order, but I left plugins for last because I think this isn’t actually necessary in D7. Personally I use modules’ own hooks and just autoload independent classes. You might consider using plugins instead if you’re going to write several plugins for the same module. In any case, Lee Rowlands has the go-to blog post about this.

All together, you can combine these approaches to write code for D7 with the biggest Dx features of D8: service injection, phpunit testing, composer libraries, and plugins. Note that each of these blog posts assumes different workarounds for all the other functionalities… but they should help you get an understanding of how to use that particular Dx improvement in 7.

When I wrote that session proposal, I thought of this as a good way for D7 developers to learn D8 practices gradually, one at a time. I no longer think that’s true. Mostly, there are so few working examples of D7 code using these practices, that it’s quite hard to get your stuff working. This is particularly hard when you’re just learning about the concept in the first place! Personally, I could mess around with this stuff and make my life harder with it in D7. But I couldn’t really get the best advantage out of them until I had better examples. My best learning aids were the examples in D8 core, and the code scaffolding available through Drush and Drupal console.

But now that I’m comfortable with the concepts… I would absolutely use these approaches in D7 work. You know, if I’m FORCED to work in the old system. :)

One last aside here: it is easy to fall into the mindset that Drupal 8 practices are better just because they’re newer. This is simply not true. These practices are not handed down from heaven, after all! When you have the rest of the D8 architecture in place, certain kinds of code tasks are much easier. That’s why we like developing for it so much more. But other (less common, IMO) tasks are harder. And doing any of this in D7 means you have to put the architecture in place, too. That’s a lot of time, and it’s only worthwhile if you’re going to use the particular strengths of these practices.

So if it looks like one of these D8 practices will make your life easier for a particular task in D7, then by all means use these approaches to get there. Composer manager has a particularly low bar – it’s so easy to use, and makes so many tasks easier, it’s a good approach to many tasks. But if I ever catch you implementing service container to get two lines of code into a form_alter, I will come to where you work and slap your hands off the keyboard.

Happy coding!


MTech, LLC: ¿Cómo agregar tamaño y tipo de fuente a CKEditor?

vr, 2016/11/04 - 7:02pm
How to add size and font family to CKEditor?

As already discussed in a previous blog post, CKEditor is a very useful module for creating and editing content. In my work editing content, I found the need to occasionally change the font size and type to avoid using css.

Here I will explain how to extend the CKEditor module using the CKEditor_font module, using composer, bower and gulp.

In our terminal, use the following command to download the most stable version of the module:

Charlotte León Fri, 11/04/2016 - 12:02