Planet Drupal

Subscribe to Planet Drupal feed
Drupal.org - aggregated feeds in category Planet Drupal
Updated: 9 hours 52 min ago

Ben's SEO Blog: How Marketers Use Drupal’s AMP Module to Improve Google Search Rankings

26 July 2017 - 9:34pm

Mobile users are not patient! More than 71% of mobile users delete emails immediately that don’t render well on a mobile device,... Read more

Categories: Drupal

Ben's SEO Blog: 8 Ways Drupal 8 Can Improve Your Website and Generate More Leads

26 July 2017 - 9:34pm

Drupal 8 is a marketer’s dream. With the new core enhancements, you can execute more effective marketing campaigns because you can deliver personalized content segmented by audience, language, and device type. You can develop relevant content that improves SEO, drives users to your website, creates leads, and results in more sales.

Drupal draws on the innovation of thousands of developers, designers... Read more

Categories: Drupal

Ben's SEO Blog: Must-Attend Drupal Events of 2015

26 July 2017 - 9:34pm

Earlier this year, I posted a blog about Must-Attend Drupal Events of 2014; it was fairly well received so I figured I'd work on a similar list for the 2015 Drupal events.

It appears that BuildAModule keeps their list updated, as does Drupical's map. Instead of categorizing by Drupal Camps or Drupal Cons, this list will simply be in chronological order. I will be updating this blog over the next... Read more

Categories: Drupal

Ben's SEO Blog: Top SEO Factors for Drupal in 2014

26 July 2017 - 9:34pm

On Sept 15, 2014, Searchmetrics released their 2014 Ranking Factors Study. In it, they analyzed 10,000 search results and created correlations between characteristics of websites and their rankings. In other words, webites that rank high, do x. Sites that ranks low, do y. For this blog post, I’m leaving out things like Backlinks (factor 4, 9, 12, etc.) because - as far as I know - there just aren’t that many modules or settings that can help you with it... Read more

Categories: Drupal

Ben's SEO Blog: Blue Drop Awards [Infographic]

26 July 2017 - 9:34pm

We'd like to share this infographic we've made depicting interesting facts about the Blue Drop Awards. Without the wonderful community support, The Blue Drop Awards simply would not and could not exist; we appreciate it.

Categories: Drupal

Ben's SEO Blog: About Our Partnership with Net-Results

26 July 2017 - 9:34pm

Today we announced that Automatr, our marketing automation platform for Drupal, was built on the Net-Results platform. Although that has not exactly been a secret, it’s not something we had publicly announced prior to today so I wanted to take a few minutes to tell our partners and customers about this relationship and what it means to you and to Volacci going forward.

The partnership we have with... Read more

Categories: Drupal

Ben's SEO Blog: Installing Google Tag Manager and Universal Analytics on your Drupal Website

26 July 2017 - 9:34pm

Erik Wagner, Program Manager at Volacci, walks you through the steps of installing Google Tag Manager and Universal Analytics on your Drupal website.

 

Transcript:

Hey folks, this is Erik Wagner from Volacci, and today I’m going to be walking you through installing Google Tag Manager and Universal Analytics onto... Read more

Categories: Drupal

DrupalCon News: Programming Announced with 132 DrupalCon Sessions

26 July 2017 - 4:47pm

One of the most exciting aspects of preparing for a DrupalCon is selecting its sessions. It’s always incredibly impressive and humbling to see the great ideas that our community comes up with—and they’re all so good that making the official selections is definitely not an easy process!

This time, the Track Chairs had over 500 sessions to evaluate, and only 108 hours worth of time to select. With the addition of the 25-minute talk option, we were able to accept 132 sessions to fill our programming time.

Categories: Drupal

Phase2: Stop Using Features: A Guide To Drupal 8 Configuration Management

26 July 2017 - 10:02am
Introduction

One of the greatest improvements added in Drupal 8 was the Configuration Management (CM) system. Deploying a site from one environment to another involves somehow merging the user-generated content on the Production site with the developer-generated configuration from the Dev site. In the past, configuration was exported to code using the Features module, which I am a primary maintainer for.

Categories: Drupal

Chiranjeeb Mahanta | Blog: GSoC’17 Coding period | Week #8 | Uc WIshlist

26 July 2017 - 9:40am
GSoC’17 Coding period | Week #8 | Uc WIshlist chiranjeeb2410 Wed, 07/26/2017 - 12:40
Categories: Drupal

DrupalCon News: DrupalCon Vienna Welcomes 12 Grant and Scholarship Recipients

26 July 2017 - 9:15am

Our community is made up of incredible members from across the globe who continue to grow the Drupal project and create communities. DrupalCon is a place where community leaders and key contributors come together to meet, learn, and collaborate. The Drupal Association's Grant and Scholarship Program makes attending possible for many community members who may not have been otherwise able to join us.  

Categories: Drupal

Abhishek Lal | GSoC Blog: Examples for Developer #8 Week of Coding

26 July 2017 - 9:04am
Examples for Developer #8 Week of Coding Abhishek Lal B Wed, 07/26/2017 - 21:34
Categories: Drupal

LevelTen Interactive: Choosing the Best CMS for Your Marketing Team

26 July 2017 - 8:09am

Oftentimes, when we receive inbound leads from companies looking for a new website or new website redesign, we get a list of wants and needs and how fast and how much it will cost, but the potential client and we forget the people that will be using the platform the most.

WHO REALLY  USES THE WEBSITE?

It is no surprise that marketing teams own the internet site once it is completed. As I sit here and write this...Read more

Categories: Drupal

Tameesh Biswas | Blog: GSoC17 : Client Side File Crypto : week 8

26 July 2017 - 12:53am
GSoC17 : Client Side File Crypto : week 8

This blog post summarises the eighth week of writing open-source code for Drupal with Google Summer of Code. 

This week I nearly completed the final encryption JS script and moved to the decryption part of the module that is the last major functional component.

tameeshb Wed, 07/26/2017 - 13:23 Tags GSoC Google Summer of Code 2017 Drupal Drupal Blog
Categories: Drupal

Love Huria: Keeping It Clean: Coding Standards That Matter

25 July 2017 - 11:00pm

A year back, I was working on a project that taught me how to keep my code clean, modular, reusable, and all those terms that seem fancy, but are actually good for you in the long run. Interesting? Yeah a bit.

But what did I do after getting into those practices?

I made mistakes. Believe me, a lot of them. But with every mistake, I learnt a lot of stuff that I had never considered before. It helped me in my thinking process, on how we should build things, what steps we need to consider when we are developing/extending a...

Categories: Drupal

Hook 42: Fun in the Sun at Drupal Camp LA 2017

25 July 2017 - 2:36pm

We are keeping busy this summer! Immediately following Drupal Govcon we are sending Aimee and AmyJune to Drupal Camp Los Angeles. Fun in the sun while doing the Drups'.

Come find us at our sessions, panels, or in the hall to pick up some cool stickers and pleasant conversation.

Categories: Drupal

Acquia Lightning Blog: Acquia Doctrine dependencies

25 July 2017 - 12:07pm
Acquia Doctrine dependencies Adam Balsam Tue, 07/25/2017 - 15:07

We started receiving reports of broken Lightning builds due to the release of doctrine/common:2.8.0 and/or doctrine/inflector:1.2.0 which require php ~7.1 and php ^7.0 respectively.

Lightning actually doesn't have a direct dependency on anything under the doctrine namespace. The dependencies come from drupal/core. So should drupal/core constrain doctrine/common to <=2.7.3 so that it continues to support php 5.6? No.

If you follow the dependency tree for what happens when you run composer update for a Lightning project in a php 5.6 environment, it looks like this:

  • acquia/lightning:2.1.7 requires:
  • drupal/core:~8.3.1, drupal/core:8.3.5 requires:
  • doctrine/common:^2.5, doctrine/common:2.8.0 requires php ~7.1, so it will resolve to 2.7.3, which requires:
  • doctrine/inflector:1.*, doctrine/inflector:1.2.0 requires php:^7.0, so it will resolve to 1.1.0, which simply requires php:>=5.3.2

So why are we getting reports of broken builds?

The problem arises when:

  1. Your project commits its composer.lock file (which it generally should)
  2. Your development environment has a different php version than your CI or production/test environment

If you have php 7.0 installed locally, the dependency resolution for doctrine/inflector will look like this:

  • acquia/lightning:2.1.7 requires:
  • drupal/core:~8.3.1, drupal/core:8.3.5 requires:
  • doctrine/common:^2.5, doctrine/common:2.8.0 requires php ~7.1, so it will resolve to 2.7.3, which requires:
  • doctrine/inflector:1.*, which will resolve to doctrine/inflector:1.2.0

Which will lock doctrine/inflector to v1.2.0; which requires php ^7.0. Then when you push to your php 5.6 CI environment, you'll get an error like this:

Problem 1
    - Installation request for doctrine/inflector v1.2.0 -> satisfiable by doctrine/inflector[v1.2.0].
    - doctrine/inflector v1.2.0 requires php ^7.0 -> your PHP version (5.6.24) does not satisfy that requirement.
Problem 2
    - doctrine/inflector v1.2.0 requires php ^7.0 -> your PHP version (5.6.24) does not satisfy that requirement.
    - doctrine/common v2.7.3 requires doctrine/inflector 1.* -> satisfiable by doctrine/inflector[v1.2.0].
    - Installation request for doctrine/common v2.7.3 -> satisfiable by doctrine/common[v2.7.3].

The solution, of course, is to run composer update in a dev environment that matches your CI/test/production environment.

Categories: Drupal

Xeno Media: WordPress coding standards for the Drupal developer

25 July 2017 - 8:17am

If you've been doing Drupal development for any amount of time, chances are that you have installed the Drupal Code to help you write clean, compliant code. Coder allows you to check your Drupal code against the Drupal coding standards and other best practices using PHP_CodeSniffer.  It can be configured to work in your IDE, and also works on the command line.

Writing code according to standards helps avoid common errors, and helps teams understand the code faster.

I installed Coder using Composer per the well written instructions.  Using this method installs it globally, so I can use it on all of my projects, and installs all the dependencies, including PHP_CodeSniffer.

I recently was tasked with working on a Wordpress site, and I started looking into the WordPress Coding Standards.  My setup didn't jive with the standard installation method since I already had PHP_CodeSniffer installed globally using composer.  I had to do a little digging to add these additional standards to my already installed setup.

Here is a quick recap on how to install Coder using composer.

Install Coder composer global require drupal/coder

To make the commands available globally, add this line to your .~/bash_profile, and that it is sourced (or restarted your terminal).

# Composer recommended PATH export PATH="$PATH:$HOME/.composer/vendor/bin"

Tell phpcs where the Drupal and DrupalPractice standards are located:

phpcs --config-set installed_paths ~/.composer/vendor/drupal/coder/coder_sniffer

Verify it worked with:

phpcs -i

You should see:

The installed coding standards are MySource, PEAR, PHPCS, PSR1, PSR2, Squiz, Zend, Drupal, and DrupalPractice

You can now navigate to your Drupal project and run the following command to use:

phpcs --standard=Drupal file.nameInstall Wordpress Coding Standards

Thanks to some help I found in the issue queue, here are the steps to install the Wordpress Coding Standards globally using composer.

composer global require wp-coding-standards/wpcs:dev-master

Again, to make these commands available globally, make sure you have this line in your ~/.bash_profile, and that it is sourced (or restarted your terminal).

# Composer recommended PATH export PATH="$PATH:$HOME/.composer/vendor/bin"

Like we did with Drupal, we need to tell phpcs where the Wordpress standards are located. We use the same installed_paths configuration set, and use a comma to list both the Drupal and Wordpress paths.

phpcs --config-set installed_paths $HOME/.composer/vendor/drupal/coder/coder_sniffer,$HOME/.composer/vendor/wp-coding-standards/wpcs

Verify it worked with:

phpcs -i

You should now see:

The installed coding standards are MySource, PEAR, PHPCS, PSR1, PSR2, Squiz, Zend, Drupal, DrupalPractice, WordPress, WordPress-Core, WordPress-Docs, WordPress-Extra and WordPress-VIP

You can now navigate to your Wordpress project and run the following command to use:

phpcs --standard=Wordpress file.nameAdd aliases

If you've worked with me, or read my posts before, you know I love aliases. They streamline your process and help make you more productive. Add these aliases into your .bash_profile, .bashrc, or wherever you keep your aliases, and source it, or restart your terminal.

alias drupalcs="phpcs --standard=Drupal --extensions='php,module,inc,install,test,profile,theme,css,info,txt,md'" alias wpcs="phpcs --standard=Wordpress"

After this you can simply type drupalcs folder_name or wpcs file.name and start writing better code!

Acknowledgements

Thanks to Micheal Porter, Albert Jankowski, and Mike Acklin for the technical review of this article, and to all the maintainers!

Photo by Ilya Pavlov on Unsplash

Categories: Drupal

DrupalCon News: Reserve your room for DrupalCon Vienna

25 July 2017 - 7:05am

For DrupalCon Vienna, our partner hotel, Courtyard Vienna Prater, is located in the Trabrennstraße area, where you can explore St. Stephen's Cathedral and Vienna's famous Prater park. And, the hotels we chose are perfect hubs for connecting you to a rewarding DrupalCon experience.

The fun is where the Drupalers are. Stay with us at a partner hotel to network and socialize after sessions end.

Categories: Drupal

Pages