Posts tagged with drupal
JAMstack or Drupal? - Part I
September 23, 2020 by Tom Friedhof
Why are organizations still building websites on old technology like Drupal or Wordpress these days when there are so many more hip ways to deliver your content?
Why are organizations still building websites on old technology like Drupal or Wordpress these days when there are so many more hip ways to deliver yo...
Drupal 8 Campaign Builder
January 30, 2020 by Simon Westyn
Recently, we were asked if we could integrate some small, one-page websites into an existing Drupal website. This would not only make it easier to manage those different websites and their content, but also reduce the hosting and maintenance costs.
Recently, we were asked if we could integrate some small, one-page websites into an existing Drupal website. This would not only make it easier to man...
Quick Setup with Composer Template for Drupal Projects
September 28, 2018 by Jonathan Westman
Pairing Composer template for Drupal Projects with Lando gives you a fully working Drupal environment with barely any setup. Lando is an open-source, cross-platform local development environment. It uses Docker to build containers for well-known frameworks and services written in simple recipes. If you haven’t started using Lando for your local development, we highly recommend it. It is easier, faster, and relatively pain-free compared to MAMP, WAMP, VirtualBox VMs, Vagrant or building your own Docker infrastructure.
Pairing Composer template for Drupal Projects with Lando gives you a fully working Drupal environment with barely any setup. Lando is an open-source, ...
Factor Two - Dependency Management
September 13, 2018 by Tom Friedhof
We are building a 12 factor app with Drupal. This is part two in our series, building a 12 factor app. Today I'm talking about Factor Two…
We are building a 12 factor app with Drupal. This is part two in our series, building a 12 factor app. Today I'm talking about Factor Two…
Deploying Docker containers - Introduction to Kubernetes
August 27, 2018 by Tom Friedhof
This post is part 5 in the series [“Hashing out a docker workflow”]({% post_url 2015-06-04-hashing-out-docker-workflow %}). I have resurrected this series from over a year ago, but if you want to checkout the previous posts, you can find the [first post here]({% post_url 2015-06-04-hashing-out-docker-workflow %}). Although the beginning of this blog series pre-dates Docker Machine, Docker for Mac, or Docker for Window’s. The Docker concepts still apply, just not using it with Vagrant any more. Instead, check out the Docker Toolbox. There isn’t a need to use Vagrant any longer.
This post is part 5 in the series [“Hashing out a docker workflow”]({% post_url 2015-06-04-hashing-out-docker-workflow %}). I have resurrected this se...
Accessibility Tips for Beginners
October 25, 2017 by Martha Westman
With more than 56 million people with disability in the United States1, why are they less likely to use the web2? There are multiple factors that can go into an individual's reasoning for not feeling comfortable using the web. One might be that the majority of websites are not created with them mind. Meaning, even if they have assistive technologies, they may not be able to navigate a website comfortably or at all. Even though, companies are making an effort to improve assistive technologies there are a handful of things you can do now that can help improve their experience on your website or product.
With more than 56 million people with disability in the United States1, why are they less likely to use the web2? There are multiple factors that can ...
Drupal Modules to Help Improve Your SEO
August 15, 2017 by Sam Tabari
So you just finished building an awesome new website on Drupal, but now you’ve run into a new dilemma. How do optimize the site for search engines? Search engine optimization, or SEO, can be overwhelming, but don’t let that cause you to ignore certain things you can do to help drive traffic to your website. There’s nothing worse than spending countless hours to develop a web application, only to find out that users aren’t able to find your site. This can be extremely frustrating, as well as devastating if your company or business heavily relies on organic traffic.
So you just finished building an awesome new website on Drupal, but now you’ve run into a new dilemma. How do optimize the site for search engines? Se...
Migrating Drupal 7 redirects to Drupal 8
August 2, 2017 by Evan Jenkins
When migrating from Drupal 7 to Drupal 8, it is important to remember to migrate over the redirects as well. Without the migrations users will not find your content if for example: the redirect was shared on social media. Using the Migrate Plus module, it is quite simple to write a migration for the redirects. The Migrate Plus module contains some good examples on how to get started writing your custom migrations.
When migrating from Drupal 7 to Drupal 8, it is important to remember to migrate over the redirects as well. Without the migrations users will not fin...
Pattern Lab in Drupal 7
June 15, 2017 by Tom Friedhof
Tom Friedhof: There’s a lot of hype around integrating Pattern Lab with your Drupal theme these days. Particularly because Drupal’s template…
Tom Friedhof: There’s a lot of hype around integrating Pattern Lab with your Drupal theme these days. Particularly because Drupal’s template…
Shibboleth Authentication in Symfony 2.8+|3.0+
March 23, 2017 by Bez Hermoso
Preface We recently had the opportunity to work on a Symfony app for one of our Higher Ed clients that we recently built a Drupal distribution for. Drupal 8 moving to Symfony has enabled us to expand our service offering. We have found more opportunities building apps directly using Symfony when a CMS is not needed. This post is not about Drupal, but cross posting to Drupal Planet to demonstrate the value of getting off the island. Enjoy! Writing custom authentication schemes in Symfony used to be on the complicated side. But with the introduction of the Guard authentication component, it has gotten a lot easier.
Preface We recently had the opportunity to work on a Symfony app for one of our Higher Ed clients that we recently built a Drupal distribution for. Dr...
Composer FTW! RIP Drush Make?
March 6, 2017 by Tom Friedhof
In the modern world of web / application development, using package managers to pull in dependencies has become a de-facto standard. In fact, if you are developing enterprise software and you aren't leveraging package managers I would challenge you to ask yourself why not?
In the modern world of web / application development, using package managers to pull in dependencies has become a de-facto standard. In fact, if you a...
Drupal vs Proprietary Software: DrupalCamp LA 2016 Table Talk - pt. 4/5
October 12, 2016 by Tom Friedhof
Ron Huber: Proprietary software does a really good job of being everything to everybody. When somebody goes and pitches something for a…
Ron Huber: Proprietary software does a really good job of being everything to everybody. When somebody goes and pitches something for a…
Drupal as an Integration Point: DrupalCamp LA 2016 Table Talk - pt. 3/5
October 1, 2016 by Tom Friedhof
Jordan Ryan: Are any of you selling, in particular with Drupal, the power of integrations or integrating with other systems? Kind of like…
Jordan Ryan: Are any of you selling, in particular with Drupal, the power of integrations or integrating with other systems? Kind of like…
Who is Drupal Right For: DrupalCamp LA 2016 Table Talk - pt. 2/5
September 19, 2016 by Tom Friedhof
Ron Huber: It does go back to what Dries said earlier this year, about who adopts Drupal, right. I mean, they're truly ambitious web…
Ron Huber: It does go back to what Dries said earlier this year, about who adopts Drupal, right. I mean, they're truly ambitious web…
Drupal 7 or 8: DrupalCamp LA 2016 Table Talk - pt. 1/5
September 9, 2016 by Tom Friedhof
Tom: Hey guys, we're here at DrupalCamp LA 2016, at UC Irvine. We've got a few shop owners here. We just wanted to have a conversation and…
Tom: Hey guys, we're here at DrupalCamp LA 2016, at UC Irvine. We've got a few shop owners here. We just wanted to have a conversation and…
Incrementally Upgrading to Drupal 8
August 25, 2016 by Tom Friedhof
You guys asked so here we are. In my last video I answered the question, "Should I build on Drupal 7 or Drupal 8?" I mentioned in that video…
You guys asked so here we are. In my last video I answered the question, "Should I build on Drupal 7 or Drupal 8?" I mentioned in that video…
Adding pURL Multidomain XMLSitemap
July 30, 2016 by Jonathan Westman
On a recent project, we had to create multiple sitemaps for each of the domains that we have setup on the site. We came across some problems that we had to resolve because of the nature of our pURL setup.
On a recent project, we had to create multiple sitemaps for each of the domains that we have setup on the site. We came across some problems that we h...
Drupal 8 Development in Docker - Redux
July 14, 2016 by Bez Hermoso
Back in December, Tom Friedhof shared how we set up our Drupal 8 development and build process utilizing Docker. It has been working well in the several months we have used it and worked within its framework. Within the time-span however, we experienced a few issues here and there which led me to come up with an alternative process which keeps the good things we like and getting rid of/resolving the issues we encountered.
Back in December, Tom Friedhof shared how we set up our Drupal 8 development and build process utilizing Docker. It has been working well in the sever...
10 Things Every Jr. Drupal Web Developer Needs to Know
June 15, 2016 by Jonathan Westman
The web development community can have a long list of requirements, languages, frameworks, constructs and tools that most companies or bosses want you to know.
The web development community can have a long list of requirements, languages, frameworks, constructs and tools that most companies or bosses want you...
Writing custom fields in Drupal 8 - Part 2
June 7, 2016 by Bez Hermoso
Continuing from Evan's blog post on building pages with Paragraphs and writing custom blocks of content as fields, I will walk you through how to create a custom field-formatter in Drupal 8 by example.
Continuing from Evan's blog post on building pages with Paragraphs and writing custom blocks of content as fields, I will walk you through how to crea...
Drupal 7 vs Drupal 8
June 4, 2016 by Tom Friedhof
Which version of Drupal should you build your site on, Drupal 7 or Drupal 8? This question comes up quite frequently, and for good reason! Your website is an investment and could be serving you for the next 3-5 years. It's important to weigh the pros and cons of choosing to build on Drupal 7 or Drupal 8. If you're thinking about building your new site on Drupal 7, you need to watch this video first. Drupal 7 adoption is going down, with Drupal 8 adoption going up. Drupal 8 should hit critical mass by the end of 2016.
Which version of Drupal should you build your site on, Drupal 7 or Drupal 8? This question comes up quite frequently, and for good reason! Your websit...
Writing custom fields in Drupal 8 - Part 1
June 3, 2016 by Evan Jenkins
On a recent project we had to create a section that is basically a Twitter search for a hashtag. It needed to be usuable in different sections of the layout and work the same.
On a recent project we had to create a section that is basically a Twitter search for a hashtag. It needed to be usuable in different sections of the ...
Going back to Drupal, it's fun again!
May 17, 2016 by Tom Friedhof
Actually, we never left. We didn't stop building Drupal sites, even through the long release cycle. However, we did move our company website, activelamp.com, off of Drupal about 18 months ago. Our company site had been built on Drupal since the Drupal 4.7 days. That was back when it started to become uncool to write and maintain your own home-grown CMS. I eventually found Drupal, ditched my custom CMS, and never looked back. Our site started on Drupal 4.7, upgraded onto Drupal 5, then Drupal 6, and also Drupal 7 all at the beginning of the release cycles of Drupal. About 18 months ago, when our site was in dire need of an update, we evaluated Drupal 8 but realized with no release date in sight, and the fact that we did not want to chase HEAD and develop on unstable API's, we decided to go a different route and build our updated site on Jekyll, a popular static generator. It's more fun to tinker with new technology when working on non-billable stuff, which is what we did. We brushed up on our Ruby skills and built out a Jekyll site (which is this site you're looking at if you're reading this blog post before Q3 of 2016). We're getting ready for another update to our company website and moving back to Drupal to do it. Jekyll was great, but it came with its disadvantages over something like Drupal. This post will highlight some of the advantages and disadvantages of working with Jekyll the past 18 months, as well as highlight why we're excited to put activelamp.com on Drupal 8 in Q3 of this year.
Actually, we never left. We didn't stop building Drupal sites, even through the long release cycle. However, we did move our company website, activela...
Encapsulation, Inheritance, Polymorphism with Drupal Entities - SandCamp 2016
May 14, 2016 by Tom Friedhof
One of the best things to happen with the Drupal 7 release was the introduction of Entities. Drupal Entities have been around forever, but it seems like a lot of developers still refer back to using Nodes when creating content that requires more functionality than what Nodes give you out of the box. In this video, I talk about why it's a good idea to create your own Entities when the content you're adding requires extended functionality. I talk about the "what" and the "why" of Entities, not necessarily "how" to create an Entity. There are a bunch of resources already out there on the Internet for that. I talk about using the Entity API module, and defining your own Class for your custom Entities. This presentation was given at SandCamp 2016.
One of the best things to happen with the Drupal 7 release was the introduction of Entities. Drupal Entities have been around forever, but it seems li...
Adding CKEditor plugins to Drupal 8
May 7, 2016 by Evan Jenkins
Drupal 8 has greatly improved editor experience out-of-the-box. It comes shipped with CKEditor for WYSIWYG editing. Although, D8 ships with a custom build of CKEditor and it may not have the plugins that you would like to have or that your client wants to have.
Drupal 8 has greatly improved editor experience out-of-the-box. It comes shipped with CKEditor for WYSIWYG editing. Although, D8 ships with a custom b...
Creating Layouts with the Layout Plugin Module in Drupal 8
April 22, 2016 by Evan Jenkins
Writing custom layouts using the Layout Plugin module for D8 is really easy. This video will outline how to create a new layout in your theme using Foundation 6 as the base theme and how to extend the layout to add custom classes and id.
Writing custom layouts using the Layout Plugin module for D8 is really easy. This video will outline how to create a new layout in your theme using Fo...
Page Manager, Panels, Context - SandCamp 2016
April 9, 2016 by Tom Friedhof
Panels, is one of the most mis-understood modules in the Drupal eco-system. Drupal developers seem to either love Panels, or hate it with a passion. Most of the time, when I begin to unwrap why people do not like Panels, it is mainly a misunderstanding of what makes Panels so powerful, Page Manager. In this video, presented at SandCamp 2016, see a mock sports league built out with the Node system and Field system that includes various relationships between the different node types. Watch, as we realize the entity relationships we create through the Field UI through the page manager UI. Lots of power in this suite of tools.
Panels, is one of the most mis-understood modules in the Drupal eco-system. Drupal developers seem to either love Panels, or hate it with a passion. ...
Composer Manager in Drupal 7 and Drupal 8
April 4, 2016 by Tom Friedhof
This video will take you through the correct way to use composer dependencies in Drupal 7 and Drupal 8 using the Composer Manager module. This video part 2 to the PSR video we did last month, that shows how to write a views handler using PSR-4 class autoloading (http://activelamp.com/videos/psr-4-class-autoloading-with-drupal-7). At the end of the PSR-4 video, I pulled in a composer dependency not using Composer Manager. This video will show you the correct way to use Composer with Drupal.
This video will take you through the correct way to use composer dependencies in Drupal 7 and Drupal 8 using the Composer Manager module. This video p...
Quick Tip How to Add a Hero Image to a Node in Drupal 7
April 1, 2016 by Jonathan Westman
Creating a deployable Docker image with Jenkins - Part 4
January 20, 2016 by Tom Friedhof
This post is part 4 in the series ["Hashing out a docker workflow"]({% post_url 2015-06-04-hashing-out-docker-workflow %}). For background, checkout my previous posts. My previous posts talked about getting your local environment setup using the Drupal Docker image with Vagrant. It's now time to bake a Docker image with our custom application code within the container, so that we can deploy containers implementing the immutable server pattern. One of the main reasons we starting venturing down the Docker path was to achieve deployable fully baked containers that are ready to run in whatever environment you put them in, similar to what we've done in the past with Packer, as I've mentioned in a previous post.
This post is part 4 in the series ["Hashing out a docker workflow"]({% post_url 2015-06-04-hashing-out-docker-workflow %}). For background, checkout m...
Our build process using Drupal 8
December 2, 2015 by Tom Friedhof
Now that the release of Drupal 8 is finally here, it is time to adapt our Drupal 7 build process to Drupal 8, while utilizing Docker. This post will take you through how we construct sites on Drupal 8 using dependency managers on top of Docker with Vagrant.
Now that the release of Drupal 8 is finally here, it is time to adapt our Drupal 7 build process to Drupal 8, while utilizing Docker. This post will t...
Visual Regression Testing with Shoov.io
November 14, 2015 by Jonathan Westman
Shoov.io is a nifty website testing tool created by Gizra. We at ActiveLAMP were first introduced to Shoov.io at DrupalCon LA, in fact, Shoov.io is built on, you guessed it, Drupal 7 and it is an open source visual regression toolkit.
Shoov.io is a nifty website testing tool created by Gizra. We at ActiveLAMP were first introduced to Shoov.io at DrupalCon LA, in fact, Shoov.io is bu...
Docker: A Minimalist's Choice
October 17, 2015 by Bez Hermoso
A little over a year ago the ActiveLAMP website had undergone a major change -- we made the huge decision of moving away from using Drupal to manage its content in favor of building it as a static HTML site using Jekyll, hosted on Amazon S3. Not only did this extremely simplify our development stack, it also trimmed down our server requirements to the very bare minimum. Now, we are just hosting everything on a file storage server like it's 1993.
A little over a year ago the ActiveLAMP website had undergone a major change -- we made the huge decision of moving away from using Drupal to manage i...
Drupal to Ember without Saving
October 10, 2015 by Evan Jenkins
Running headless Drupal with a separate javascript framework on the front-end can provide amazing user experiences and easy theming. Although, working with content editors with this separation can prove to be a tricky situation.
Running headless Drupal with a separate javascript framework on the front-end can provide amazing user experiences and easy theming. Although, working...
Setting up a Docker development environment with Vagrant - Part 3
September 23, 2015 by Tom Friedhof
This post is part 3 in the series ["Hashing out a docker workflow"]({% post_url 2015-06-04-hashing-out-docker-workflow %}). For background, checkout my previous posts. Now that I've laid the ground work for the approach that I want to take with local environment development with Docker, it's time to explore how to make the local environment "workable". In this post we will we will build on top of what we did in my last post, [Docker and Vagrant]({% post_url 2015-07-19-docker-with-vagrant %}), and create a working local copy that automatically updates the code inside the container running Drupal.
This post is part 3 in the series ["Hashing out a docker workflow"]({% post_url 2015-06-04-hashing-out-docker-workflow %}). For background, checkout m...
Drupal 8 - First Experiences
August 14, 2015 by Jonathan Westman
I recently had time to install and take a look at Drupal 8. I am going to share my first take on Drupal 8 and some of the hang-ups that I came across. I read a few other blog posts that mentioned not to rely too heavily on one source for D8 documentation with the rapid changing pace of D8 the information has become outdated rather quickly.
I recently had time to install and take a look at Drupal 8. I am going to share my first take on Drupal 8 and some of the hang-ups that I came across....
Docker with Vagrant - Part 2
July 19, 2015 by Tom Friedhof
This post is part 2 in a series of Docker posts hashing out a new docker workflow for our team. To gain background of what I want to accomplish with docker, checkout my previous post [hashing out a docker workflow]({% post_url 2015-06-04-hashing-out-docker-workflow %}). In this post, we will venture into setting up docker locally, in the same repeatable way from developer to developer, by using Vagrant. By the end of this post, we'll have Drupal running in a container, using Docker.
This post is part 2 in a series of Docker posts hashing out a new docker workflow for our team. To gain background of what I want to accomplish with d...
How to Use Picture and Image Replace for Drupal 7
July 3, 2015 by Jonathan Westman
The Picture module is a backport of Drupal 8 Responsive Image module. It allows you to select different images to be loaded for different devices and resolutions using media queries and Drupal’s image styles. You can also use the Image Replace module to specify a different image to load at certain breakpoints.
The Picture module is a backport of Drupal 8 Responsive Image module. It allows you to select different images to be loaded for different devices and ...
Customize autocomplete fields with results you want
September 7, 2012 by Bryan Hazelbaker
<p> Occasionally a node reference or entity reference autocomplete widget will not operate as expected, specifically when it is based off a view reference display.<!--more--> Other widgets, the select box, or list of checkboxes, will still function correctly. </p> <p> This will happen if the view is depending on a contextual filter (an argument), but is not being provided one. Normally a view can try to automatically fill in the argument if one is not provided based on the current page url. If the view fails to receive an argument and is unable to infer its value from the url path then it will fail to provide any results. </p> <p> Outlined below is a possible scenario that would cause an autocomplete node reference field to fail. </p>
<p> Occasionally a node reference or entity reference autocomplete widget will not operate as expected, specifically when it is based off a view refer...