emGee Software Solutions Custom Database Applications

Share this

Drupal CMS

Chocolate Lily: The Curse of the Haunted Drupal Site, Revisited!

Drupal.org aggregator - Wed, 10/31/2018 - 10:08

Ten Halloweens ago I shared a story of Drupal haunting. The post survives only in the faint afterlife of archive.org's Wayback Machine, having long since disappeared from the site of CivicActions where I was working at the time, so I thought I'd reprise it here. First, the original post. Then some notes on what's changed in the years since--and what remains chillingly accurate.

Categories: Drupal CMS

InternetDevels: Reasons to Choose Drupal 8 for Building a Multilingual Website

Drupal.org aggregator - Wed, 10/31/2018 - 08:14

Have you thought of expanding your online business overseas? Or having identical platforms available to visitors in Spanish, French and German? There is one certain way to increase your business globally — create a multilingual website!

One might think that it is easy to translate any platform into any languages. However, there are a number of factors to consider when creating multilingual sites.

Read more
Categories: Drupal CMS

Dries Buytaert: The rise of headless commerce

Drupal.org aggregator - Wed, 10/31/2018 - 08:10

Today, Acquia announced a partnership with Elastic Path, a headless commerce platform. In this post, I want to explore the advantages of headless commerce and the opportunity it holds for both Drupal and Acquia.

The advantages of headless commerce

In a headless commerce approach, the front-end shopping experience is decoupled from the commerce business layer. Headless commerce platforms provide a clean separation between the front end and back end; the shopping experience is provided by Drupal and the commerce business logic is provided by the commerce platform. This decoupling provides advantages for the developer, merchant and shopping experience.

  • For developers, it means that you can decouple both the development and the architecture. This allows you to build an innovative shopping experience without having to worry about impacting a system as critical as your commerce backend. For instance, you can add ratings and reviews to your shopping experience without having to redeploy your commerce platform.
  • For merchants, it can provide a better experience for administering the shop. Traditional commerce solution usually ship with a lightweight content management system. This means that there can be competition over which system provides the experience layer (i.e. the "glass"). This can introduce overlap in functionality; both systems offer ways to manage URLs, create landing pages, manage user access rights, etc. Because headless commerce systems are designed from the ground up to integrate with other systems, there is less duplication of functionality. This provides a streamlined experience for merchants.
  • And last but not least, there is the shopping experience for end-users or consumers. Simply put, consumers are demanding better experiences when they shop online. They want editorials, lookbooks, tutorials, product demonstration videos, testimonials, and more. They want the content-rich experiences that a comprehensive content management system can provide.

All this is why Acquia is excited about our partnership with Elastic Path. I believe the partnership is a win-win-win. It's a win for Acquia because we are now better equipped than ever to offer personal, unique and delightful shopping experiences. It is a win for Elastic Path as they have the opportunity to provide contextual commerce solutions to any Acquia customer. Last but not least, it's a win for Drupal because it will introduce more organizations to the project.

Note that many of the above integration challenges don't apply to native solutions like Drupal Commerce for Drupal or WooCommerce for WordPress. It only applies when you have to integrate two entirely different systems. Integrating two different systems is a common use case, because customers either already have a commerce platforms in place that they don't want to replace, or because native solutions don't meet their needs.

Acquia's commitment to best of breed

Acquia remains committed to a best-of-breed strategy for commerce. There isn't a single commerce platform that meets the needs of all our customers. This belief comes from years of experience in the field. Acquia's customers want to integrate with a variety of commerce systems such as Elastic Path, SAP Hybris, Salesforce Commerce Cloud (Demandware), Magento, BigCommerce, Reaction Commerce, Oracle ATG, Moltin, and more. Our customers also want to use Drupal Commerce, Drupal's native commerce solution. We believe customers should be able to integrate Drupal with their commerce management solutions of choice.

Categories: Drupal CMS

Amazee Labs: Zurich Drupal Meetup

Drupal.org aggregator - Wed, 10/31/2018 - 01:07
Zurich Drupal Meetup

Join us on November 5th for the Zurich Drupal Meetup at the Amazee Labs Zürich office.

Laura Simonetto Wed, 10/31/2018 - 09:07

Agenda

  • The File Management Module for Drupal 8 - Lightning talk + Q&A by David Pacassi Torrico
  • Outlook Drupal Switzerland Activities 2019 - Discussion by Josef Dabernig (Amazee Labs)
  • Propose your topic in the comments!


General Information 

The Zurich Drupal Meetup is dedicated to people interested in the Content Management System & Framework Drupal.

We welcome everybody from beginners to Drupal ninjas and would be happy to see you present a recent project of yours or talk about any other Drupal-related topic.

Talk Formats

  • Lightning talk (max. 10 minutes)
  • Short talk (max. 25 minutes)
  • Full talk (max. 45 minutes)

If you would like to join us, sign-up here: https://www.meetup.com/Zurich-Drupal-Meetup/ 

Categories: Drupal CMS

Code Karate: Drupal 8 Linkit Module

Drupal.org aggregator - Tue, 10/30/2018 - 21:07
Episode Number: 214

In this episode, we cover the Drupal 8 Linkit Module. This module extends the link functionality of your Drupal 8 WYSIWYG editor (like CKeditor) to make it easier to link to other pages on your website. Rather than having to go find a page on your website you would like to link to, copy the URL, and paste it in the link field, this module allows you to do it in one step!

Check out the Code Karate Patreon page

Tags: DrupalContribDrupal 8Site BuildingDrupal Planet
Categories: Drupal CMS

Palantir: Mass.gov Benchmarks as One of the Top State Government Websites

Drupal.org aggregator - Tue, 10/30/2018 - 11:00
Mass.gov Benchmarks as One of the Top State Government Websites brandt Tue, 10/30/2018 - 13:00 Alex Brandt Sep 10, 2018

In a recent report published by ITIF, Mass.gov ranks #3 overall in the nation for performance in page-load speed, mobile friendliness, security, and accessibility.

More than 1 million websites worldwide use Drupal to combine great design with power, speed and security that Drupal provides. From large enterprises to NGOs, Drupal is actively helping organizations change the world through their digital experiences. One of these institutions is the Commonwealth of Massachusetts.

In a recent report published by ITIF (an independent, nonpartisan think tank), the official website for the Commonwealth of Massachusetts (mass.gov) was named #3 in the nation for its overall web presence.

“This report assesses four criteria: page-load speed, mobile friendliness, security, and accessibility. For page-load speed, we reviewed both desktop page-load speed and mobile page-load speed.” - ITIF

Building a Better Experience for Constituents

The Commonwealth set out to better the digital experience for the constituents of Massachusetts back in 2016 when they began engaging with outside vendors to take on the responsibility of redesigning and developing mass.gov using the open source CMS Drupal 8. The end goal for the Commonwealth was to restructure their site’s content in a way that made it intuitive for people to accomplish their goals.

With the help of Palantir.net, Massachusetts launched the new platform in October 2017 designed to better serve constituent needs in the digital age.

“We’ve redesigned Mass.gov for you, the people of the Commonwealth. We have one goal: to make it easy for you to find what you need.” - Mass.gov homepage

We’re proud of Mass.gov for this amazing achievement, and we’re not surprised. Good web design in government is about ensuring a great experience for constituents of diverse backgrounds and creating an open and accessible government for all users.

The goal of ITIF’s report was to assess state government websites based on seven popular state e-government services. Download the full report to see how your state’s website ranked.

Drupal Industries Government
Categories: Drupal CMS

Dries Buytaert: How we are improving Drupal's configuration management system

Drupal.org aggregator - Tue, 10/30/2018 - 10:39

Configuration management is an important feature of any modern content management system. Those following modern development best-practices use a development workflow that involves some sort of development and staging environment that is separate from the production environment.

Given such a development workflow, you need to push configuration changes from development to production (similar to how you need to push code or content between environments). Drupal's configuration management system helps you do that in a powerful yet elegant way.

Since I announced the original Configuration Management Initiative over seven years ago, we've developed and shipped a strong configuration management API in Drupal 8. Drupal 8's configuration management system is a huge step forward from where we were in Drupal 7, and a much more robust solution than what is offered by many of our competitors.

All configuration in a Drupal 8 site — from one-off settings such as site name to content types and field definitions — can be seamlessly moved between environments, allowing for quick and easy deployment between development, staging and production environments.

However, now that we have a couple of years of building Drupal 8 sites behind us, various limitations have surfaced. While these limitations usually have solutions via contributed modules, it has become clear that we would benefit from extending Drupal core's built-in configuration management APIs. This way, we can establish best practices and standard approaches that work for all.

The four different focus areas for Drupal 8. The configuration management initiative is part of the 'Improve Drupal for developers' track.

I first talked about this need in my DrupalCon Nashville keynote, where I announced the Configuration Management 2.0 initiative. The goal of this initiative is to extend Drupal's built-in configuration management so we can support more common workflows out-of-the-box without the need of contributed modules.

What is an example workflow that is not currently supported out-of-the-box? Support for different configurations by environment. This is a valuable use case because some settings are undesirable to have enabled in all environments. For example, you most likely don't want to enable debugging tools in production.

The contributed module Config Filter extends Drupal core's built-in configuration management capabilities by providing an API to support different workflows which filter out or transform certain configuration changes as they are being pushed to production. Config Split, another contributed module, builds on top of Config Filter to allow for differences in configuration between various environments.

The Config Split module's use case is just one example of how we can improve Drupal's out-of-the-box configuration management capabilities. The community created a longer list of pain points and advanced use cases for the configuration management system.

While the initiative team is working on executing on these long-term improvements, they are also focused on delivering incremental improvements with each new version of Drupal 8, and have distilled the most high-priority items into a configuration management roadmap.

  • In Drupal 8.6, we added support for creating new sites from existing configuration. This enables developers to launch a development site that matches a production site's configuration with just a few clicks.
  • For Drupal 8.7, we're planning on shipping an experimental module for dealing with environment specific configuration, moving the capabilities of Config Filter and the basic capabilities of Config Split to Drupal core through the addition of a Configuration Transformer API.
  • For Drupal 8.8, the focus is on supporting configuration updates across different sites. We want to allow both sites and distributions to package configuration (similar to the well-known Features module) so they can easily be deployed across other sites.
How to get involved

There are many opportunities to contribute to this initiative and we'd love your help.

If you would like to get involved, check out the Configuration Management 2.0 project and various Drupal core issues tagged as "CMI 2.0 candidate".

Special thanks to Fabian Bircher (Nuvole), Jeff Beeman (Acquia), Angela Byron (Acquia), ASH (Acquia), and Alex Pott (Thunder) for contributions to this blog post.

Categories: Drupal CMS

Drupal Modules: The One Percent: Drupal Modules: The One Percent — Entity Jump Menu (video tutorial)

Drupal.org aggregator - Tue, 10/30/2018 - 07:38
Drupal Modules: The One Percent — Entity Jump Menu (video tutorial) NonProfit Tue, 10/30/2018 - 09:38 Episode 50

Here is where we bring awareness to Drupal modules running on less than 1% of reporting sites. Today we'll consider Entity Jump Menu, a module which allows you to quickly navigate between nodes, users, and taxonomy terms provided you know their ID.

Categories: Drupal CMS

ThinkShout: The Secrets of Keeping Your Content Editors Happy

Drupal.org aggregator - Tue, 10/30/2018 - 05:00

Our client is migrating from Luminate CMS to Drupal because they want to improve performance without changing the look or feel of the site. Each of the pages on a Luminate site are like snowflakes - unique. It doesn’t make sense to rebuild those features as structured blocks given that they only appear on one single page. So having the ability to use existing JS and CSS allows us to copy and paste markup without rebuilding a whole structure that wouldn’t be repurposed on other pages.

This technically savvy client wants a way to add existing JavaScript and CSS to Drupal pages. So let’s give them the capability of putting raw CSS and JavaScript on their pages. This will help them complete the migration, moving their existing code to Drupal. These are the tools the content editors need to make their website beautiful and effective. If your content editors are more familiar with writing javascript and css here’s how to enable them to keep doing that.

To make this happen, first make a raw field formatter.

  • Go to Configuration > Content authoring > Text formats and editors.
  • Add a new text format called “Raw”. None of the filters should be enabled since this will be raw output.

Adding in raw text format

AND…No filters enabled!

Since our client wants to add raw css and javascript to landing pages, we will create a field on the ‘landing page’ content type. It will be Text (formatted, long) and label “Inline CSS”. We will limit it to just one on the page.

Add field inline css

Have it use the Raw text format from the last step. You can limit the field to only this format by installing the package

Composer require drupal/allowed_formats

Be sure to check the “Raw” box on the field page and save it.

Now make sure our field is being output.

  • Go to Admin > Structure > Types > Manage > Landing page > Display > Full
  • Make sure it is enabled and the label is hidden. It should be output in the default format.

Making sure inline css is displayed

Visit a landing page content form by going to Manage > Content > Add content > Landing Page, and put some real css in our new field:

Adding map background raw

We also provide a WYSIWYG place to enter HTML. In this case we need some HTML, perhaps a div, with class=‘map’.

We’re not finished yet! We need to provide a twig template. Look at the output HTML. We get:

<!-- THEME DEBUG --> <!-- THEME HOOK: 'field' --> <!-- FILE NAME SUGGESTIONS: * field--node--field-inline-css--landing-page.html.twig * field--node--field-inline-css.html.twig * field--node--landing-page.html.twig * field--field-inline-css.html.twig x field--text-long.html.twig * field.html.twig --> <!-- BEGIN OUTPUT from 'core/themes/classy/templates/field/field--text-long.html.twig' --> <div data-quickedit-field-id="node/589/field_inline_css/en/full" class="clearfix text-formatted field field--name-field-inline-css field--type-text-long field--label-hidden field__item">.map { background: url(http://www.example.com/assets/images/background-images/banner-landing-page/map.png) center no-repeat; padding-top: 80px; min-height: 350px; }</div> <!-- END OUTPUT from 'core/themes/classy/templates/field/field--text-long.html.twig' -->

in our output! Notice the <div> surrounding our CSS! We don’t want that! So it’s time to create a Twig template without extra div’s. One that will output raw CSS.

We will go from this (notice all the extra <div>s)

{% if label_hidden %} {% if multiple %} <div{{ attributes.addClass(classes, 'field__items') }}> {% for item in items %} <div{{ item.attributes.addClass('field__item') }}>{{ item.content }}</div> {% endfor %} </div> {% else %} {% for item in items %} <div{{ attributes.addClass(classes, 'field__item') }}>{{ item.content }}</div> {% endfor %} {% endif %} {% else %} <div{{ attributes.addClass(classes) }}> <div{{ title_attributes.addClass(title_classes) }}>{{ label }}</div> {% if multiple %} <div class="field__items"> {% endif %} {% for item in items %} <div{{ item.attributes.addClass('field__item') }}>{{ item.content }}</div> {% endfor %} {% if multiple %} </div> {% endif %} </div> {% endif %}

And we should do three things:

  1. Remove all <div> tags,
  2. Send it through a raw filter, and
  3. Surround it with <style> tags so we will go to this >
<style> {% if label_hidden %} {% if multiple %} {% for item in items %} {{ item.content|raw }} {% endfor %} {% else %} {% for item in items %} {{ item.content|raw }} {% endfor %} {% endif %} {% else %} {% if multiple %} {% endif %} {% for item in items %} {{ item.content|raw }} {% endfor %} {% if multiple %} {% endif %} {% endif %} </style>

Then we get in output:

<!-- THEME DEBUG --> <!-- THEME HOOK: 'field' --> <!-- FILE NAME SUGGESTIONS: x field--node--field-inline-css--landing-page.html.twig * field--node--field-inline-css.html.twig * field--node--landing-page.html.twig * field--field-inline-css.html.twig * field--text-long.html.twig * field.html.twig --> <!-- BEGIN OUTPUT from 'themes/custom/example/templates/field/field--node--field-inline-css--landing-page.html.twig' --> <style> .map { background: url(http://www.example.com/assets/images/background-images/banner-section-landing-page/map.png) center no-repeat; padding-top: 80px; min-height: 350px; } </style> <!-- END OUTPUT from 'themes/custom/example/templates/field/field--node--field-inline-css--landing-page.html.twig' -->

Tada! The CSS shows up ready to use on the page! The same technique can be used to allow content editors to put JavaScript on the page! Instead of putting <style> tags around the template, make it <script> tags instead.

Make sure you meet your content editors where they are, give them tools they can use but don’t use this technique with novice or non-technical content editors.

Categories: Drupal CMS

DrupalBASE: Sharing embedded drawings across sites (Video)

Drupal.org aggregator - Tue, 10/30/2018 - 04:36

The article continues the series started with Creating interactive content in CKEditor with VisualN Embed article.

It shows how to use IFrames toolkit provided with VisualN module to share embedded drawings across sites.

For our example we use a Drupal 8 site as drawings origin and a Wordpress site as a target resource exposing those drawings. The Wordpress site can be located at any domain and/or server and doesn't depend on the origin in any way.

 

1. Go to the Edit page, open embedded drawing Context menu

 

2. Open Drawing Properties dialog, enable sharing, configure properties

 

3. Save changes, copy embed code from the Sharing box

 

4. Insert embed code into another site content and save

 

There are a couple of use cases when you might want to share drawings:

  • to share content with you audience to promote your brand, attract new users (generate quality traffic) or spread your data / knowledge across the Internet
  • to create SaaS-like solutions when users use your site to create content and reuse on their sites (e.g. Flickr)
  • to use it as a backend platform for your other resource (as in the video above, Drupal 8 can be used as a backend for Wordpress)

go to the full content to watch video

Categories: Drupal CMS

OSTraining: How to Use Entity Reference Views in Drupal 7

Drupal.org aggregator - Mon, 10/29/2018 - 23:24

Entity Reference Views are one way you can make life easier for Drupal content creators.

Normally, when people are creating content on your site, each field consists of a single box with a single data point. For example, in a list of people, you might get only the person's name. 

Entity Reference Views allows you to provide far more information. For example, you can add photos and personal details to your list of people.

Categories: Drupal CMS

OSTraining: How to Use Entity Reference Views in Drupal 8

Drupal.org aggregator - Mon, 10/29/2018 - 22:00

Entity Reference Views are a great way to make life easier for Drupal content creators.

Normally, when people create content on your site, each field is very plain. However, Entity Reference Views allows you to provide far more information. For example, instead of just showing a list of users, your content creators can browse through a list of names, photos and personal details.

Both Views and Entity Reference are now part of the Drupal 8 core. This made using Entity Reference Views in Drupal 8 much easier.

If you're a Drupal 7 user, read this version of the tutorial.

Categories: Drupal CMS

Code Karate: Drupal 8 Contact Storage Module

Drupal.org aggregator - Mon, 10/29/2018 - 20:54
Episode Number: 213

In this episode, we cover the Drupal 8 Contact Storage Module. This module extends the Drupal 8 core contact module by saving the contact entries in the database. This makes it easy to go back and view, edit, or delete any of the contact form submissions on your Drupal 8 site. It's a handy little module that can save you from needing to install a more fully featured form module (like Webform or Entity Forms).

Check out the Code Karate Patreon page

Tags: DrupalCore ConceptsContribDrupal 8Site BuildingDrupal Planet
Categories: Drupal CMS

Phase2: The New Normal for Open Source

Drupal.org aggregator - Mon, 10/29/2018 - 14:47

Yesterday, big tech tripped over itself with IBM’s Red Hat acquisition--for the staggering sum of $34B. Many were shocked by the news, but those that know Red Hat well--may have been less surprised. Long the leader and largest open source company in the world: Red Hat has been getting it right for many years.

Categories: Drupal CMS

Drupal blog: A book for decoupled Drupal practitioners

Drupal.org aggregator - Mon, 10/29/2018 - 10:12

This blog has been re-posted and edited with permission from Dries Buytaert's blog. Please leave your comments on the original post.

Drupal has evolved significantly over the course of its long history. When I first built the Drupal project eighteen years ago, it was a message board for my friends that I worked on in my spare time. Today, Drupal runs two percent of all websites on the internet with the support of an open-source community that includes hundreds of thousands of people from all over the world.

Today, Drupal is going through another transition as its capabilities and applicability continue to expand beyond traditional websites. Drupal now powers digital signage on university campuses, in-flight entertainment systems on commercial flights, interactive kiosks on cruise liners, and even pushes live updates to the countdown clocks in the New York subway system. It doesn't stop there. More and more, digital experiences are starting to encompass virtual reality, augmented reality, chatbots, voice-driven interfaces and Internet of Things applications. All of this is great for Drupal, as it expands its market opportunity and long-term relevance.

Several years ago, I began to emphasize the importance of an API-first approach for Drupal as part of the then-young phenomenon of decoupled Drupal. Now, Drupal developers can count on JSON API, GraphQL and CouchDB, in addition to a range of surrounding tools for developing the decoupled applications described above. These decoupled Drupal advancements represent a pivotal point in Drupal's history.

A few examples of organizations that use decoupled Drupal.

Speaking of important milestones in Drupal's history, I remember the first Drupal book ever published in 2005. At the time, good information on Drupal was hard to find. The first Drupal book helped make the project more accessible to new developers and provided both credibility and reach in the market. Similarly today, decoupled Drupal is still relatively new, and up-to-date literature on the topic can be hard to find. In fact, many people don't even know that Drupal supports decoupled architectures. This is why I'm so excited about the upcoming publication of a new book entitled Decoupled Drupal in Practice, written by Preston So. It will give decoupled Drupal more reach and credibility.

When Preston asked me to write the foreword for the book, I jumped at the chance because I believe his book will be an important next step in the advancement of decoupled Drupal. I've also been working with Preston So for a long time. Preston is currently Director of Research and Innovation at Acquia and a globally respected expert on decoupled Drupal. Preston has been involved in the Drupal community since 2007, and I first worked with him directly in 2012 on the Spark initiative to improve Drupal's editorial user experience. Preston has been researching, writing and speaking on the topic of decoupled Drupal since 2015, and had a big impact on my thinking on decoupled Drupal, on Drupal's adoption of React, and on decoupled Drupal architectures in the Drupal community overall.

To show the value that this book offers, you can read exclusive excerpts of three chapters from Decoupled Drupal in Practice on the Acquia blog and at the Acquia Developer Center. It is available for preorder today on Amazon, and I encourage my readers to pick up a copy!

Congratulations on your book, Preston!

Categories: Drupal CMS

a-fro.com: Drupal Pullquotes

Drupal.org aggregator - Mon, 10/29/2018 - 07:22

"Pullquotes", as described here, differ from blockquotes because they duplicate a section of text within the page, and get styled in a way that draws the reader's attention to the quote. As such, one simple solution that I've been using is to allow content editors to select a section of text while editing and click a button in the interface to designate it as a pullquote.

Categories: Drupal CMS

Dries Buytaert: Adding support for Dark Mode to web applications

Drupal.org aggregator - Mon, 10/29/2018 - 07:00

MacOS Mojave, Apple's newest operating system, now features a Dark Mode interface. In Dark Mode, the entire system adopts a darker color palette. Many third-party desktop applications have already been updated to support Dark Mode.

Today, more and more organizations rely on cloud-based web applications to support their workforce; from Gmail to Google Docs, SalesForce, Drupal, WordPress, GitHub, Trello and Jira. Unlike native desktop applications, web applications aren't able to adopt the Dark Mode interface. I personally spend more time using web applications than desktop applications, so not having web applications support Dark Mode defeats its purpose.

This could change as the next version of Safari adds a new CSS media query called prefers-color-scheme. Websites can use it to detect if Dark Mode is enabled.

I learned about the prefers-color-scheme media query on Jeff Geerling's blog, so I decided to give it a try on my own website. Because I use CSS variables to set the colors of my site, it took less than 30 minutes to add Dark Mode support on dri.es. Here is all the code it took:

@media (prefers-color-scheme: dark) { :root { --primary-font-color: #aaa; --secondary-font-color: #777; --background-color: #222; --table-zebra-color: #333; --table-hover-color: #444; --hover-color: #333; } }

If you use MacOS Mojave, Safari 12.1 or later, and have Dark Mode enabled, my site will be shown in black:

It will be interesting to see if any of the large web applications, like Gmail or Google Docs will adopt Dark Mode. I bet they will, because it adds a level of polish that will be expected in the future.

Categories: Drupal CMS

Specbee: Guiding Higher Education Beyond The Classrooms With Content Management Systems

Drupal.org aggregator - Mon, 10/29/2018 - 06:26

Over the past 2 decades, the advancements in technology have been tremendous and these changes have played a major role in allowing educational institutions to move into a teaching and learning method inspired and driven by technology. However, the changes while creating new opportunities for students, have brought upon new obstacles for colleges and universities to overcome

Categories: Drupal CMS

Drupal core announcements: Drupal 7.61 pre-release announcement; planned release date: Wednesday, November 7th, 2018

Drupal.org aggregator - Mon, 10/29/2018 - 05:28

Drupal 7.61 - the next planned minor release of Drupal 7 - is scheduled for Wednesday, November 7th, 2018. Minor releases include new features, usability improvements, and backwards-compatible API improvements.

The release will feature full compatibility for PHP 7.2 and so far includes the following changes:

- File upload validation functions and hook_file_validate() implementations are
now always passed the correct file URI.
- The default form cache expiration of 6 hours is now configurable (API
addition: https://www.drupal.org/node/2857751).
- Allowed callers of drupal_http_request() to optionally specify an explicit
Host header.
- Allowed the + character to appear in usernames.
- PHP 7.2: Fixed Archive_Tar incompatibility.
- PHP 7.2: Removed deprecated function each().
- PHP 7.2: Avoid count() calls on uncountable variables.
- PHP 7.2: Removed deprecated create_function() call.
- PHP 7.2: Make sure variables are arrays in theme_links().
- Fixed theme-settings.php not being loaded on cached forms

At core committer discretion important bug fixes might be added prior to release and this post will be updated to inform of further changes.

Thanks for your patience,

The Drupal 7 core committer team

Categories: Drupal CMS

Agiledrop.com Blog: Top Tips for Aspiring Drupal Developers

Drupal.org aggregator - Mon, 10/29/2018 - 03:49

In this post, I take a look at some Drupal development tips for aspiring Drupal Developers.

READ MORE
Categories: Drupal CMS

Pages