Drupal

Dries Buytaert: Thank you, Tiffany

Planet Drupal - 8 March 2018 - 12:17pm

I recently had the opportunity to read Tiffany Farriss' Drupal Association Retrospective. In addition to being the CEO of Palantir.net, Tiffany also served on the Drupal Association Board of Directors for nine years. In her retrospective post, Tiffany shares what the Drupal Association looked like when she joined the board in 2009, and how the Drupal Association continues to grow today.

What I really appreciate about Tiffany's retrospective is that it captures the evolution of the Drupal Association. It's easy to forget how far we've come. What started as a scrappy advisory board, with little to no funding, has matured into a nonprofit that can support and promote the mission of the Drupal project. While there is always work to be done, Tiffany's retrospective is a great testament of our community's progress.

I feel very lucky that the Drupal Association was able to benefit from Tiffany's leadership for nine years; she truly helped shape every aspect of the Drupal Association. I'm proud to have worked with Tiffany; she has been one of the most influential, talented members of our Board, and has been very generous by contributing both time and resources to the project.

Categories: Drupal

Thank you, Tiffany

Dries Buytaert - 8 March 2018 - 12:17pm

I recently had the opportunity to read Tiffany Farriss' Drupal Association Retrospective. In addition to being the CEO of Palantir.net, Tiffany also served on the Drupal Association Board of Directors for nine years. In her retrospective post, Tiffany shares what the Drupal Association looked like when she joined the board in 2009, and how the Drupal Association continues to grow today.

What I really appreciate about Tiffany's retrospective is that it captures the evolution of the Drupal Association. It's easy to forget how far we've come. What started as a scrappy advisory board, with little to no funding, has matured into a nonprofit that can support and promote the mission of the Drupal project. While there is always work to be done, Tiffany's retrospective is a great testament of our community's progress.

I feel very lucky that the Drupal Association was able to benefit from Tiffany's leadership for nine years; she truly helped shape every aspect of the Drupal Association. I'm proud to have worked with Tiffany; she has been one of the most influential, talented members of our Board, and has been very generous by contributing both time and resources to the project.

Categories: Drupal

Acro Media: Urban Hipster: Updates & What's New

Planet Drupal - 8 March 2018 - 11:44am

The Urban Hipster (UH) Drupal 8 Commerce 2 demo site has been gaining a lot of traction lately due to some fanfare and sweet promo videos. An increasing number of people are trying it out and viewing the code (which is publicly available on GitHub). It was time for a bit of a content overhaul. Here's what's changed.

Public Domain Images

All of the imagery and icons used in the site are now created by Acro Media or taken from Unsplash.com. If you're not aware of Unsplash, they provide high quality images that are freely available to use in any way, shape or form. It's a pretty awesome service and supports the open source philosophy we in the Drupal community share.

Product Page Galleries

The biggest feature we added in this release has to do with the product pages. Products can now display a gallery of images on the product page instead of just showing the current variation. I won't get into the details here, but you can watch the video for more information. Here's an example.

More "Full" Product Examples

The UH demo was originally intended to be a sales tool for our staff. Because of this, we added a bunch of products, but only a handful were fully filled out with attributes, sample reviews, related products, etc. The rest were just placeholders to fill out the store. Now that more people are looking at it, we felt we needed more (if not all) of the products to be more robust so that it didn't matter which product you happen to look at. This was something we did in this content overhaul. Almost every product now includes multiple images, related products, variation options, etc. Here's an example.

Configuration Cleanup

Since we were adding all new content anyway, it was a good opportunity to clean up some of the attributes, product types and product variation types that weren't really needed or not well represented. A lot of people are looking to this demo for examples of configuration, so it's important that we try to keep it as clean as possible.

And that's about it! Enjoy the video and the site updates.

Related Links
Categories: Drupal

Twig Addons

New Drupal Modules - 8 March 2018 - 11:35am

Add Twig Extensions and Twig Namespaces with ease.

Categories: Drupal

Transaction Workflow

New Drupal Modules - 8 March 2018 - 10:19am

Light weight multipurpose workflow manager for any entity type. Based on standard fields, state is stored in generic string-list field. Transitions are fieldable content entities and no extra fields are required in the target entity.

Categories: Drupal

Ben Marshall: Load JS & CSS Conditionally in Drupal 7

Planet Drupal - 8 March 2018 - 9:00am

This post was originally published on May 22, 2013 and last updated March 8, 2018 thanks to some helpful input by Steve Elkins.

Drupal 7 is a haus at combining CSS & JS files. This can help boost page performance & optimization easily, but if not used right, can do the complete opposite. In this post, we’ll go over how to load JS & CSS files based on conditionals like URL, module, node, views and more.

Before we dive in, get somewhat familiar with the drupal_add_js and drupal_add_css functions. We’ll use these to load the actual JS and CSS files.

hook_init – runs on every page /** * Implements hook_init() * * @link https://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_init/7.x */ function HOOK_init() { // Using the equivalent of Apache's $_SERVER['REQUEST_URI'] variable to load based on URL // @link https://api.drupal.org/api/drupal/includes!bootstrap.inc/function/request_uri/7 if (request_url() === 'your-url-path') { drupal_add_js( /* parameters */ ); drupal_add_css( /* parameters */ ); } }

Using hook_init is one of the simplest methods to load specific JS and CSS files (don’t forget to replace HOOK with the theme or module machine name).

Be careful, this method get’s ran on every page, so it’s best to use this method only when you actually need to check every page for your conditional. A good example, loading module CSS and JS files. A bad example, loading node-specific CSS and JS files. We’ll go over that next.

There’s also a similar preprocess function, template_preprocess_page you could use, but it too get’s ran on every page and is essentially the same as hook_init.

template_preprocess_node – runs on node pages /** * Implements template_preprocess_node() * * @link https://api.drupal.org/api/drupal/modules%21node%21node.module/function/template_preprocess_node/7.x */ function TEMPLATE_preprocess_node(&$vars) { // Add JS & CSS by node type if( $vars['type'] == 'your-node-type') { drupal_add_js( /* parameters */ ); drupal_add_css( /* parameters */ ); } // Add JS & CSS to the front page if ($vars['is_front']) { drupal_add_js( /* parameters */ ); drupal_add_css( /* parameters */ ); } // Given an internal Drupal path, load based on node alias. if (drupal_get_path_alias("node/{$vars['#node']->nid}") == 'your-node-id') { drupal_add_js( /* parameters */ ); drupal_add_css( /* parameters */ ); } }

Using template_preprocess_node is perfect when loading JS and CSS files based on nodes (don’t forget to replace TEMPLATE with the theme machine name). Since it only get’s run on nodes, it’s great to use when you want to load CSS and JS files on specific node types, front pages, node URLs, etc.

template_preprocess_views_view – runs every view load /** * Implements template_preprocess_views_view() * * @link https://api.drupal.org/api/views/theme%21theme.inc/function/template_preprocess_views_view/7.x-3.x */ function TEMPLATE_preprocess_views_view(&$vars) { // Get the current view info $view = $vars['view']; // Add JS/CSS based on view name if ($view->name == 'view_name') { drupal_add_js( /* parameters */ ); drupal_add_css( /* parameters */ ); } // Add JS/CSS based on current view display if ($view->current_display == 'current_display_name') { drupal_add_js( /* parameters */ ); drupal_add_css( /* parameters */ ); } }

Using template_preprocess_node is useful when loading JS and CSS files when a particular view is being used (don’t forget to replace TEMPLATE with the theme machine name).

Helpful Methods for Conditionals

Here’s a few helpful Drupal methods you can use for your conditionals. Have one you use often? Let me know in the comments below.

  • request_uri – Returns the equivalent of Apache’s $_SERVER[‘REQUEST_URI’] variable.
  • drupal_get_path_alias – Given an internal Drupal path, return the alias set by the administrator.
Looking like a foreign language to you?

Not a developer or just lost looking at the code snipplets above? Shoot me a question in the comments below, or give these ‘plug-and-play’ modules a try for a GUI alternative:

The post Load JS & CSS Conditionally in Drupal 7 appeared first on Ben Marshall.

Categories: Drupal

RSS embed field

New Drupal Modules - 8 March 2018 - 8:28am
Overview & Features

RSS-Field is a lightweight module that allow you to integrate and setup a field (link) within a Contenttype, that offers you the possibility to display the latest Posts from a specific RSS-Feed within a node. You can handle this field like all other Drupal-Fields f.e. with Views etc.

You can define how many entries from the Feed should be displayed and and whether the title of the feed should be displayed or not.

Categories: Drupal

Webform Storage Toggle

New Drupal Modules - 8 March 2018 - 6:57am
Description
Categories: Drupal

Slack RTM

New Drupal Modules - 8 March 2018 - 6:03am

Place holder for module under current dev. It will utilize Slack RTM and obtain messages from Slack to list in Drupal for display purposes.

Categories: Drupal

Twitter embed field

New Drupal Modules - 8 March 2018 - 5:59am
Overview & Features

Twitter Field is a lightweight module that allow you to integrate and setup a field (plain Text) within a Contenttype, that offers you the possibility to display the latest Twitter-Posts from a specific Twitter-Account within a node. You can handle this field like all other Drupal-Fields f.e. with Views etc. The Twitter-Feed appears as a block via Twitter-API.

You can define the Width and Height, the Theme (dark or light) and Link Color (Hex Color) of the Twitter-Feed-Block/-Posts.

Categories: Drupal

View Password

New Drupal Modules - 8 March 2018 - 2:32am
Categories: Drupal

Flocon de toile | Freelance Drupal: Send transactional emails related to user account in HTML format with Drupal 8

Planet Drupal - 8 March 2018 - 2:00am
We have several solutions to automatically send emails emitted by a Drupal 8 project in HTML format. Without being able to quote them all, we can use SwiftMailer, MimeMail to send mails from the server itself, or Mailjet API, MailGun, etc. to send emails from a third-party platform. In a few clicks, we can then emit different emails, whether they are transactional (account creation, order creation, subscription, etc.) or business (Newsletters, Activity Log, What you missed, etc. .), in HTML format. It will then remain to implement one (or more) responsive email template that will be correctly read and interpreted on most mail software. And it's probably the most important part. There remains a special case: that of all the emails emitted according to the different events related to the life of a user account (Creation, Waiting for approval, Deletion, Welcome Mail, etc.). Let's see how to simply send this emails in a HTML format too.
Categories: Drupal

Amazee Labs: DrupalCamp London 2018 - Keeping it Cool

Planet Drupal - 8 March 2018 - 1:41am
DrupalCamp London 2018 - Keeping it Cool

I attended DrupalCamp London this past weekend. This was the 6th consecutive year the event has been hosted, which is remarkable. My mission getting to the event turned out to be just as remarkable! Keep reading to find out more about both.

Fran Garcia Thu, 03/08/2018 - 10:41

Something that the organisers couldn’t control was the fact that the whole of the UK was facing the biggest freeze in recent years. This meant that trains and buses were canceled. Schools, shops, and roads were also closed. As you can imagine, getting from Birmingham to London wasn’t an easy task, but I was on a mission and decided to venture into the elements (as I wasn’t able to either teleport nor fly there - see below!)

 

To make a long story short, plan A and B failed due to multiple cancellations so I opted for no-plan at all - just do and keep doing until I got there. What would usually be a two-hour relaxing journey became a nearly six-hour bumpy, cold, and wet quest through the elements... but guess what? I made it to London!

 


But why did I want to get there so badly? Going to the DrupalCamp was reason enough but additionally, I was selected to do three different talks at the camp. I was really excited about the opportunity and wouldn't miss it for the world!

My three talks were completely different:

The slides are linked above and the videos will soon be available on the Camp YouTube channel.

I am happy with how the talks went. People were engaged and participative - I even missed lunch one day as I was answering questions for more than 40 minutes after the talk. But most importantly I think they made a difference to the people who attended. I’m glad that one way or another I could give something back to the Drupal community. A special thanks goes out to Joe Shindelar for his little push in Vienna :-)

The rest of the sessions were great too. We had amazing speakers, inspiring talks, live demos, in-depth discussions and a unique atmosphere over the whole weekend. I met people from France, Italy, Iceland, Finland, Spain and many other parts of the UK, which was great. I loved listening to their stories and knowing how people work and use Drupal too. I also realised how proud and happy I am to be an Amazee.

The keynotes were especially inspiring, stating once and again Drupal's core values and mission, talking about the community behind Drupal, its importance and the ways in which we can all help improve it. Thanks to Ryan Szrama (Commerce Guys), Chris Teitzel (Lockr) and Baddý Sonja Breidert (1xINTERNET) for sharing your experiences, visions, opinions and for being so close and approachable during the weekend.

And of course thanks, DrupalCamp London (@DrupalCampLDN #dclondon) for organising such a great event. Huge kudos to organizers and volunteers, who were all over the place ensuring that the event was successful and flawless. See you next year!

Categories: Drupal

Bootstrap DateTime Picker

New Drupal Modules - 7 March 2018 - 11:22pm

Bootstrap DateTime picker module provides a widget for Drupal Date fields using the JQuery Date and Time Picker library by Eonasdan.

INSTALLATION & USAGE

- See README.txt file for the installation and usage documentation.

Categories: Drupal

DFP Lazy Load

New Drupal Modules - 7 March 2018 - 9:06pm
Categories: Drupal

Community: Community Working Group Call for New Members

Planet Drupal - 7 March 2018 - 6:03pm

Are you interested in volunteer work primarily concerned with community health, conflict resolution, and Drupal Code of Conduct matters? Then the Drupal Community Working Group (CWG) can benefit from your help. We are looking to add new volunteer members to our small, but dedicated, team and we’d like to hear from you! 

About the CWG

As our Charter states “The mission of the Community Working Group (CWG) is to uphold the Drupal Code of Conduct in order to maintain a friendly and welcoming community for the Drupal project.”; this means we very often deal with conflict resolution and guidance in the handling of Code of Conduct violations involving Drupal Community members and Drupal Community spaces. Although this sometimes can take a big chunk of our time, we also work on proactive tasks involving community health, growth, and awareness. For example, we get to honor amazing members of the community with the prestigious Aaron Winborn Award as well as work on tools and processes to facilitate community health and growth.

We currently are a diverse group of five members from three continents and we are looking to continue to diversify. We come from different backgrounds, and have different experiences, perspectives, and opinions, but we all share a deep desire to help community members and have them treat one another with respect, dignity, and encouragement. 

About you

Characteristics that are in line with what we do and what we are looking for:

  • Patient and open-minded
    We are often involved in high-stress and/or highly emotional situations. As facilitators, we must be able to listen to all sides patiently and without judgment to try to fully understand the situation as best we can. Although the work we do is rewarding and necessary, sometimes the issues we deal with can be tough and emotionally draining, and individuals looking to join the CWG need to be aware that it can involve a fair amount of emotional labor.
  • Self-driven and self-motivated
    A typical time commitment for CWG members is a couple hours a week, though that can vary. We are all volunteer members and, as such, juggle our own work-life-community schedules and try to create a balance where we do as much as we can without getting burned-out. We encourage and support members taking breaks from CWG business when needed.
  • Discrete and confidential
    We often deal with sensitive and confidential information and all members are expected to safeguard any and all information we come in contact with in our roles as CWG members. Additionally, we disclose any potential conflicts of interest and recuse ourselves when appropriate.
  • Love for the community
    All members of the CWG are volunteers and donate our own time and efforts while doing work we consider important and necessary. The main drive behind our work is the health of the community and its members.
  • The desire to uphold the Drupal Code of Conduct and share the Drupal values and principles.
    This almost goes without saying, but we think it is worth it for you to take a(nother) look at the Drupal Code of Conduct.
Still with us?

If you think you’d be a good fit or know someone you think is, please reach out!

Categories: Drupal

Drupal 8.5.0 released

Dries Buytaert - 7 March 2018 - 5:45pm

Earlier today, we released Drupal 8.5.0, which ships with improved features for content authors, site builders and developers.

Content authors can benefit from enhanced media support and content moderation workflows. It is now easier to upload, manage and reuse media assets, in addition to moving content between different workflow states (e.g. draft, archived, published, etc).

Drupal 8.5.0 also ships with a Settings Tray module, which improves the experience for site builders. Under the hood, the Settings Tray module uses Drupal 8.5's new off-canvas dialog library; Drupal module developers are encouraged to start using these new features to improve the end-user experience of their modules.

It's also exciting to see additional improvements to Drupal's REST API. With every new release, Drupal continues to extend investments in being an API-first platform, which makes it easier to integrate with JavaScript frameworks, mobile applications, marketing solutions and more.

Finally, Drupal 8.5 also ships with significant improvements for Drupal 7 to Drupal 8 migration. After four years of work, 1,300+ closed issues and contributions from over 570 Drualists, the migrate system's underlying architecture in Drupal 8.5 is fully stable. With the exception of sites with multilingual content, the migration path is now considered stable. Needless to say, this is a significant milestone.

These are just a few of the major highlights. For more details about what is new in Drupal 8.5, please check out the official release announcement and the detailed release notes.

What I'm probably most excited about is the fact that the new Drupal 8 release system is starting to hit its stride. The number of people contributing to Drupal continues to grow and the number of new features scheduled for Drupal 8.6 and beyond is exciting.

In future releases, we plan to add a media library, support for remote media types like YouTube videos, support for content staging, a layout builder, JSON API support, GraphQL support, a React-based administration application and a better out-of-the-box experience for evaluators. While we have made important progress on these features, they are not yet ready for core inclusion and/or production use. The layout builder is available in Drupal 8.5 as an experimental module; you can beta test the layout builder if you are interested in trying it out.

I want to extend a special thank you to the many contributors that helped make Drupal 8.5 possible. Hundreds of people and organizations have contributed to Drupal 8.5. It can be hard to appreciate what you can't see, but behind every bugfix and new feature there are a number of people and organizations that have given their time and resources to contribute back. Thank you!

Categories: Drupal

Dries Buytaert: Drupal 8.5.0 released

Planet Drupal - 7 March 2018 - 5:45pm

Earlier today, we released Drupal 8.5.0, which ships with improved features for content authors, site builders and developers.

Content authors can benefit from enhanced media support and content moderation workflows. It is now easier to upload, manage and reuse media assets, in addition to moving content between different workflow states (e.g. draft, archived, published, etc).

Drupal 8.5.0 also ships with a Settings Tray module, which improves the experience for site builders. Under the hood, the Settings Tray module uses Drupal 8.5's new off-canvas dialog library; Drupal module developers are encouraged to start using these new features to improve the end-user experience of their modules.

It's also exciting to see additional improvements to Drupal's REST API. With every new release, Drupal continues to extend investments in being an API-first platform, which makes it easier to integrate with JavaScript frameworks, mobile applications, marketing solutions and more.

Finally, Drupal 8.5 also ships with significant improvements for Drupal 7 to Drupal 8 migration. After four years of work, 1,300+ closed issues and contributions from over 570 Drualists, the migrate system's underlying architecture in Drupal 8.5 is fully stable. With the exception of sites with multilingual content, the migration path is now considered stable. Needless to say, this is a significant milestone.

These are just a few of the major highlights. For more details about what is new in Drupal 8.5, please check out the official release announcement and the detailed release notes.

What I'm probably most excited about is the fact that the new Drupal 8 release system is starting to hit its stride. The number of people contributing to Drupal continues to grow and the number of new features scheduled for Drupal 8.6 and beyond is exciting.

In future releases, we plan to add a media library, support for remote media types like YouTube videos, support for content staging, a layout builder, JSON API support, GraphQL support, a React-based administration application and a better out-of-the-box experience for evaluators. While we have made important progress on these features, they are not yet ready for core inclusion and/or production use. The layout builder is available in Drupal 8.5 as an experimental module; you can beta test the layout builder if you are interested in trying it out.

I want to extend a special thank you to the many contributors that helped make Drupal 8.5 possible. Hundreds of people and organizations have contributed to Drupal 8.5. It can be hard to appreciate what you can't see, but behind every bugfix and new feature there are a number of people and organizations that have given their time and resources to contribute back. Thank you!

Categories: Drupal

Drupal blog: Drupal 8.5.0 is now available

Planet Drupal - 7 March 2018 - 1:51pm
What's new in Drupal 8.5.0?

This new version makes Media module available for all, improves migrations significantly, stabilizes the Content Moderation and Settings Tray modules, serves dynamic pages faster with BigPipe enabled by default, and introduces a new experimental entity layout user interface. The release includes several very important fixes for workflows of content translations and supports running on PHP 7.2.

Download Drupal 8.5.0

Media in core improved and available to all site builders

In Drupal 8.4, we added a Media API to core that drew on work from the contributed Media Entity module, but the module was hidden from the user interface due to user experience issues. In Drupal 8.5, many of the usability issues have been addressed, and the module now can be enabled normally. Media in Drupal 8.5 supports uploading and playing audio and video files, as well as listing and reusing media.

For an optimal user experience, we suggest enhancing the core feature set with the rich ecosystem of contributed modules that extends the core Media module. In future releases, we will improve the core user experience with a media library and other tools, add WYSIWYG integration, add support for remote media types like YouTube videos, and provide an upgrade path for existing basic File and Image field data on existing sites.

Settings Tray and Content Moderation now stable

Two experimental modules originally added with Drupal 8.2.0 have been steadily improving in past releases and are now stable. The Settings Tray module provides a quick solution to manage settings in context, such as moving items around in a menu block. The Content Moderation module allows defining content workflow states such as Draft, Archived, and Published, as well as which roles have the ability to move content between states. Drupal 8.5.0 also adds support for translations to be moderated independently.

New experimental Layout Builder module

The new experimental Layout Builder module provides display layout capabilities for articles, pages, user profiles, and other entity displays. Layout Builder uses the same "outside-in" user interface that Settings Tray module does, allowing site builders to edit their layouts on the actual page (rather than having to go to a separate form on the backend). The current user interface is a basic implementation but we expect it will improve significantly in the coming months.

Big steps for migrations

After over four years of work, this release marks the Migrate system's architecture stable. The Drupal Migrate and Drupal Migrate UI modules are also considered stable for upgrading monolingual sites. (Multilingual site upgrades are still not fully supported.) Support for incremental migrations is also included in this release. See the migrate announcement for further details on migrating to Drupal 8.

BigPipe by default

The BigPipe module provides an advanced implementation of Facebook's BigPipe page rendering strategy for greatly improved perceived performance for pages with dynamic, personalized, or uncacheable content. The module was added in Drupal 8.1.0 experimentally and became stable in Drupal 8.3.0. Following real-world testing, Big Pipe is now included as part of Drupal 8.5.0's Standard installation profile, so that all Drupal 8 sites will be faster by default. BigPipe is also the first new Drupal 8 feature to mature from an experimental prototype all the way to being part of a standard installation!

Groundwork for a Drupal 8 "Out of the Box" demo

Drupal 8.5.0 includes the groundwork for a new demo profile and theme from the Out of the Box Initiative, which will be a beautiful, modern demonstration of Drupal's capabilities. This will allow us to provide the demo experimentally, possibly in a future Drupal 8.5 release. (The demo profile and theme should not be used on actual production or development sites since no backwards compatibility or upgrade paths are provided.) If you'd like to see this demo in action, you can also see it in the 8.6.x development version.

PHP 7.2 now supported

Drupal 8.5.0 now runs on PHP 7.2, which comes with new features and improves performance over PHP 7.1. PHP 7.2 is now the recommended PHP version to use with Drupal 8.

What does this mean for me? Drupal 8 site owners

Update to 8.5.0 to continue receiving bug and security fixes. The next bugfix release (8.5.1) is scheduled for April 4, 2018.

Updating your site from 8.4.5 to 8.5.0 with update.php is exactly the same as updating from 8.4.4 to 8.4.5. Drupal 8.5.0 also has updates to several dependencies, including a backwards-compatible update to a Symfony long-term-support release (which will be supported for many years). Modules, themes, and translations may need updates for these and other changes in this minor release, so test the update carefully before updating your production site.

Note that Drupal 8 will require PHP 7 starting in March 2019, one year from now. If your site is hosted on PHP 5.5 or 5.6, you should begin planning to upgrade (and consider upgrading to PHP 7.2 now that it is supported). See the Drupal core announcement about the PHP 5 end-of-life for more information.

Drupal 6 and 7 site owners

Drupal 7 is still fully supported and will continue to receive bug and security fixes throughout all minor releases of Drupal 8. Drupal 6 is no longer supported. See the migrate announcement for further details on migrating to Drupal 8.

Translation, module, and theme contributors

Minor releases like Drupal 8.5.0 include backwards-compatible API additions for developers as well as new features. Read the 8.5.0 release notes for more details on the improvements for developers in this release.

Since minor releases are backwards-compatible, modules, themes, and translations that supported Drupal 8.4.x and earlier will be compatible with 8.5.x as well. However, the new version does include some changes to strings, user interfaces, internal APIs and API deprecations. This means that some small updates may be required for your translations, modules, and themes. See the announcement of the 8.5.0 release candidate for more background information.

Categories: Drupal

Drupal blog: Big steps for migrations in Drupal 8.5.0

Planet Drupal - 7 March 2018 - 1:51pm

After over four years of work with over 570 contributors and 1300+ closed issues, Drupal 8.5.0 releases the Migrate system's architecture as fully stable. This means that developers can write migration paths without worrying for stability of the underlying system.

On top of that the Migrate Drupal and Migrate Drupal UI modules (providing Drupal 6 and 7 to Drupal 8 migrations) are considered stable for upgrading monolingual sites. All of the remaining critical issues for the Migrate Drupal module's upgrade paths and stability are related to multilingual migration support (so multilingual site upgrades are still not fully supported).

Support for incremental migrations is now also available, which means that site owners can work gradually on their new Drupal 8 site while content is still being added to the old site. When migrations (including incremental migrations) are run through the user interface, site owners will now see a warning if some data on the Drupal 8 site might be overwritten. (A similar fix for Drush is not yet available, so be careful not to overwrite data if you run a migration on the command line.) 

Upgrade instructions for Drupal 6 and Drupal 7 sites can be found in the Upgrading to Drupal 8 handbook. Your old site can still remain up and running while you test migrating your data into your new Drupal 8 site. If you happen to find a bug, that is not a known migrate issue, your detailed bug report with steps to reproduce is a big help!

Unlike previous versions, Drupal 8 stores translated content as single entities. Multilingual sites with reference fields (node_reference, entity_reference) or multilingual menus can upgrade to Drupal 8 using Drush, executing the desired migrations one by one. In this process you need to create and run a series of additional custom migrations to reflect the new entity identifiers assigned during earlier migrations. There is no automation implemented for this process yet.

Data can be migrated to Drupal 8 also from non-Drupal sources such as CSV, XML, JSON, or directly from 3rd party systems' databases. For instructions and examples, refer to Migrate API handbook.

Huge thanks again to all the contributors who made this possible.

Categories: Drupal

Pages

Subscribe to As If Productions aggregator - Drupal