Drupal Feeds

KnackForge: How to update Drupal 8 core?

Planet Drupal - Sat, 2018-03-24 05:01
How to update Drupal 8 core?

Let's see how to update your Drupal site between 8.x.x minor and patch versions. For example, from 8.1.2 to 8.1.3, or from 8.3.5 to 8.4.0. I hope this will help you.

  • If you are upgrading to Drupal version x.y.z

           x -> is known as the major version number

           y -> is known as the minor version number

           z -> is known as the patch version number.

Sat, 03/24/2018 - 10:31

KnackForge: How to update Drupal 8 core?

Feeds from Drupal.org - Sat, 2018-03-24 05:01
How to update Drupal 8 core?

Let's see how to update your Drupal site between 8.x.x minor and patch versions. For example, from 8.1.2 to 8.1.3, or from 8.3.5 to 8.4.0. I hope this will help you.

  • If you are upgrading to Drupal version x.y.z

           x -> is known as the major version number

           y -> is known as the minor version number

           z -> is known as the patch version number.

Sat, 03/24/2018 - 10:31
Categories: Straight From Drupal

Content Import

Latest Drupal Modules - 3 hours 52 min ago
Categories: Straight From Drupal

Love Huria: Keeping It Clean: Coding Standards That Matter

Planet Drupal - 8 hours 37 min ago

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...

Love Huria: Keeping It Clean: Coding Standards That Matter

Feeds from Drupal.org - 8 hours 37 min ago

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: Straight From Drupal

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

Planet Drupal - Tue, 2017-07-25 21:36
Hook 42 and DrupalCamp LA logos

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.

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

Feeds from Drupal.org - Tue, 2017-07-25 21:36
Hook 42 and DrupalCamp LA logos

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: Straight From Drupal

OneHub

Latest Drupal Modules - Tue, 2017-07-25 20:21

Placeholder for D8 integration with OneHub, module coming sometime early 2018

Categories: Straight From Drupal

Acquia Lightning Blog: Acquia Doctrine dependencies

Feeds from Drupal.org - Tue, 2017-07-25 19:07
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: Straight From Drupal

Acquia Lightning Blog: Acquia Doctrine dependencies

Planet Drupal - Tue, 2017-07-25 19:07
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.

youtubeplaylist

Latest Drupal Modules - Tue, 2017-07-25 17:44

It's a youtube playlist module. It helped in fetching playlist videos to our site. Once we've installed module then we have to replace playlist-id and and key value. After that we are all set to fetch videos from playlist.

Categories: Straight From Drupal

Accelerating Audience Data Collection for Marketing Personalization

Acquia Blogs - Tue, 2017-07-25 17:11

Lift Analytics Connectors
Personalization has become a requirement as part of delivering an exceptional digital experience for customers. However, organizations can only be successful in their personalization strategy if they understand their customers and have a complete view of their interests and behaviors.

Gaining insights on customers through profile data such as demographics or behavioral information helps marketers determine who their target personas are and how they should segment their audiences moving forward. Without the right visitor and customer data profiles, it’s impossible to understand your buyers and deliver personalized experiences across the customer journey. Even if you have the data, oftentimes, this lives in multiple solutions – such as marketing automation, content management systems, CRM, and web analytics tools – making it extremely difficult and time-consuming to create personalized experiences for customers at scale.

With Acquia Lift, organizations can already collect and aggregate customer data across all of their systems to provide marketers with a single view of their prospects and customers in one unified customer profile – simplifying personalization efforts. Marketers can get started in their personalization efforts fast by collecting profile data and immediately gaining insight into buyer segments to see how their audience is engaging with their brand and what content assets are converting to make insights actionable and data-driven marketing personalization possible.

Now, we’re making it even easier and faster for our customers to collect and aggregate data for impactful, personalized targeting throughout the customer journey.

We’re pleased to announce the following new capabilities to Acquia Lift:

Eloqua Connector (in beta): To enable our customers to quickly and easily deliver the most personalized experiences to their customers, Acquia has a connector between Acquia Lift and Oracle Eloqua, currently in beta. Marketers can augment their web data with campaign data to create segments and deliver cohesive, cross-channel digital experiences for their customers. IT can leverage pre-built integration to seamlessly connect data between marketing tools with speed and without heavy technical resources.

Eloqua and Acquia Lift

Google Tag Manager: Acquia allows customers to leverage Google Tag Manager with Acquia Lift. Tag management systems like Google Tag Manager enable marketers to easily manage different types of tags on their sites such as analytics, advertising and marketing tags. Using Google Tag Manager, customers can easily share Acquia Lift segments, decisions and goals with other systems, and append additional visitor data and behavioral events into the Lift visitor profile - making it easier to design cross-channel experiences. This integration with Google Tag Manager makes it simple for Lift customers to instrument visitor behavioral events of interest (such as clicks, shares, submits) and exchange data with complementary platforms.

PHP SDK for Personalization: By providing a PHP SDK for personalization, developers using PHP on other platforms such as Magento or even WordPress, can easily access the rich set of APIs that Acquia Lift provides. This makes it simpler for developers to focus on use cases like exchanging visitor data with Acquia Lift or using Acquia Lift’s APIs to retrieve decisions or segments in order to build highly customized digital experiences.

Acquia Lift removes the challenges for marketing teams around having to manage customer data from different systems. With these new updates to Acquia Lift, we continue to make it as easy as possible for our customers to streamline their personalization efforts by pulling in data and taking advantage of their existing systems and campaigns. With Acquia Lift, organizations are empowered with the personalization capabilities they need to provide a cohesive customer experience that engages their audiences and leads to conversions and bottom-line results at the right time in the customer journey.

As personalized marketing continues to shift toward data-driven customer journeys, we aim to provide organizations with a common solution and approach to speed productivity and make building personalized web experiences for customers as easy, fast and efficient as possible.

Categories: Drupal Universe

Xeno Media: WordPress coding standards for the Drupal developer

Planet Drupal - Tue, 2017-07-25 15:17

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

Xeno Media: WordPress coding standards for the Drupal developer

Feeds from Drupal.org - Tue, 2017-07-25 15:17

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: Straight From Drupal

DrupalCon News: Reserve your room for DrupalCon Vienna

Planet Drupal - Tue, 2017-07-25 14:05

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.

DrupalCon News: Reserve your room for DrupalCon Vienna

Feeds from Drupal.org - Tue, 2017-07-25 14:05

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: Straight From Drupal

InternetDevels: How Drupal 8 saves time & money, or a few words about backwards compatibility

Planet Drupal - Tue, 2017-07-25 12:50
How Drupal 8 saves time & money, or a few words about backwards compatibility

Migration to Drupal 8 will save your time, effort and money in the future. It’s a fact! Discover
the great news about easy upgrades and backwards compatibility.

Read more

InternetDevels: How Drupal 8 saves time & money, or a few words about backwards compatibility

Feeds from Drupal.org - Tue, 2017-07-25 12:50
How Drupal 8 saves time & money, or a few words about backwards compatibility

Migration to Drupal 8 will save your time, effort and money in the future. It’s a fact! Discover
the great news about easy upgrades and backwards compatibility.

Read more
Categories: Straight From Drupal

CKEditor Tweetable Text

Latest Drupal Modules - Tue, 2017-07-25 11:12

CKEditor Tweetable Text - is an extension to the Drupal 8 CKEditormodule.

Provides an input filter and WYSIWYG plugin for making text in content tweetable, just by clicking on the sentance or phrase itself! .

Categories: Straight From Drupal

Pages

Subscribe to My Drupal aggregator