This series will implement the same example as the Multisite series did, but with Domain Access instead. You can see and compare the two methods. First, let's look at some other examples using Domain Access and see what we get when we download the package from Drupal.org. We'll also talk about the features provided, along with some things to be aware of and consider when choosing Domain Access.
Additional resources
Domain Access project (drupal.org)
Domain Access can do its magic because of the Drupal node access system. In this tutorial we'll walk through the basics of how this system works, highlighting the two main methods, and then explain why this may be important information for you. We won't be diving into the code side of things, but instead outline the basic concepts for anyone who needs to interact with this system. When using a module like Domain Access, you should be aware of the Drupal context in which you are working, even if you hopefully never have to dive into the details.
Additional resources
Controlling Access to Content Overview (drupal.org handbook)
Node access developer documentation (api.drupal.org)
Let’s take a brief look at how translation contributions work in Drupal. This written tutorial is based on the free video, Translation in Drupal.
Podcast Episode 62: Distributed Design
Blog postDesign work is a lot of show-and-tell. It can be challenging to effectively communicate and collaborate on a distributed team. Join hostess Amber Matz, Lullabot Creative Director Jared Ponchot, Lullabot UX Designer Jen Witkowski, and Justin Harrell, Interactive Designer for Drupalize.Me, as they talk about the unique challenges, processes, and tools they use as part of a distributed team.
This week, we're wrapping up our series, Introduction to Object-oriented PHP, in partnership with KnpUniversity, with tutorials on access control for properties, type hinting, and constructors in PHP.
Here's an example of an assumption; The sun will rise tomorrow. An assumption is something that is accepted as true or as certain to happen, without proof. This kind of thinking, while convenient, is prone to concealing facts, and troublesome when debugging code. This article defines what an assumption is, and provides some techniques for helping to eliminate them during debugging.
Release Day: Working with PHP Objects
Blog postThis week, we continue our Introduction to Object-oriented PHP series, in partnership with KnpUniversity (now SymfonyCasts), with tutorials that mostly focus on working with objects in PHP. You'll also learn how to add a specially formatted comment to your code that will enable code autocomplete functionality in your IDE.
While a lot of our days are focused on Drupal, as web developers there are other pieces of tech that we need to understand and use on a regular basis. One example is Apache web server. This is the most popular web server on the web and likely the one your site uses. While you don't need to be a system administrator to use Drupal, you do need to understand some basics of Apache when working with domain names, especially if you're managing multiple domain names on one web server.
Self-Serve Group Memberships
Blog postAt the beginning of this month, we introduced a new feature on the site: self-serve group memberships! In the olden days, when a group wanted to purchase a membership, we asked that they email us. We then generated an invoice and emailed it back. No longer! Now, groups can purchase 5-seat memberships directly from our site—no emailing or invoicing required. Not only is the signup process now very straightforward, but you can purchase a group membership on a monthly basis in addition to the annual option.
This week's podcast, Episode 61: Mental Health and Open Source, dives into the private topic of our mental health. A few Lullabots are joined by Mike Bell, who recently gave a presentation on this topic, sharing his own personal journey. We discuss the pressures and effects we've all experienced in different ways, as well as the ways we've worked to manage our own mental health, and ways the Drupal and open source communities can help.
In anticipation of the release of Drupal 8, one of the things we think is important is to provide foundational training material in areas related to the changes in Drupal 8. One major change is the shift to an object-oriented PHP (OO PHP) architecture, which you can learn more about here, in my presentation, What's New in Drupal 8: Object-oriented PHP. To provide a hands-on coding introduction to OO PHP, we worked with our partners at KnpUniversity to create a new series. Today we are delighted to release the first four video tutorials in the new KnpUniversity series, Introduction to Object-Oriented PHP.
The Drupal 8 development cycle has definitely been a long one. There are several exciting features on the way, but the improvements to the authoring experience in Drupal 8 have definitely drawn a lot of attention. (I know Amber is clamoring for in-place editing for this blog.) The Spark project is the home to much of this work. Several new core modules that contribute to these improvements (Contextual, Quickedit, Toolbar, CKEditor and to a lesser extent, Tour) leverage a pair of popular javascript libraries Backbone.js and Underscore.js.
Both Backbone.js, and its dependency Underscore.js were committed to Drupal 8 two years ago! Let's take a quick look at both Backbone.js and Underscore.js, how they're used in core, and how you might be able to use them to simplify some javascript for your site.
The Drupalize.Me podcast (formerly the Lullabot podcast) has been running for many years now. During this time, not much has changed as far as what makes the podcast itself. There is theme music, a host, guests, event updates, and now even sound effects. Even when it comes to how we record a podcast, not much is different in either the method or the technology. What can make or break a podcast, though, is the quality of the sound. I'm not talking about if the podcast is HD or anything, but what the overall quality of a person's voice is, the ability to reduce or eliminate background distractions, or even just being able to create a good mix of volumes. All these things are great to be able to have some control over and edit before putting the podcast out to the masses.
Drupalize.Me Update: March 2015
Blog postAs Drupal 8 approaches, our team has been growing and really pushing ourselves. Over the past few weeks, we released some impressive tutorials and site updates. Here's an overview.
This week we continue to explore what's new in Drupal 8. We began this series with the Theming, CMI, and OO-PHP editions of our What's New in Drupal 8 series. Last week, we covered what's new in the Entity API, Blocks, Content Authoring Experience, and Mobile and Responsive Features. This week, we have videos outlining what's new in extending Drupal 8 (where did all the hooks go?), new site building features and workflows, and multilingual features. Finally, as a bonus, we have a free video tour of localize.drupal.org, where you can see how Drupal gets translated into languages from all over the world.
Do you want to know how to contribute translations to Drupal core or other contributed modules and themes? Have you ever wondered how translations are managed in Drupal? It all happens in the community at localize.drupal.org. This tutorial gives a tour of localize.drupal.org and then teaches you how to join translation groups and contribute translated strings back to the Drupal community.
Additional resources
Drupalize.Me and Lullabot together have made a donation of $5,000 to the Drupal 8 Accelerate Fund, becoming an anchor donor of this critical funding initiative. We heartily believe in funding core development and are so excited to be a part of providing a much needed final push to a Drupal 8 stable release. Learn more about how you can be a part of accelerating the release of Drupal 8.
Drupalize.Me Podcast No. 60
Blog postA new podcast, Drupalize.Me 2015 Spring Update, is ready for a listen. The Drupalize.Me team typically gets together each quarter to go over the past goals and create new ones.
This week we continue our series of presentations on What's New in Drupal 8. We'll explore blocks, the entity API, the all new content authoring experience, and mobile and responsive features in Drupal core.