سیاره دروپال

Drupal.org - aggregated feeds in category Planet Drupal
Subscribe to خوراک سیاره دروپال

It's never too late to share something useful with mates. And in this blog, I am going to discuss Queue Worker/API and how to implement it in Drupal 8. After completing this blog cum tutorial you will find yourself at a moderate level of expertise in implementing Queue API.

A couple of months back, we had a situation in one of our project where we had to pull data from a centralized server and update that content to the site almost every day. In order to overcome this scenario, we started using cron, but faced a situation where we were missing few contents because of time out. After a little research and discussion, we (our team) decided to implement queue worker. And yes! It worked.

Let’s start with Queue API.

Queue API enables us to handle a…

Many organization still struggle with the strain of manual processes that touch critical areas of the business. And these manual processes could be costlier that you think. It’s not just profit that may be slipping away but employee moral, innovation, competitiveness and so much more.

By automating routine tasks you can increase workflow efficiency, which in turn can free up staff for higher value work, driving down costs and boosting revenue. And it may be easier to achieve productivity gains simpler, faster, and with less risk that you may assume.

Most companies with manual work processes have been refining them for years, yet they may still not be efficient because they are not automated. So the question to ask is, “can I automate my current processes?”.

Mike and Matt are joined by renowned web accessibility expert Marcy Sutton, along with Lullabot's own Helena McCabe to explore various web accessibility topics.
Ixis, a leading Drupal specialist signs deal to provide development, hosting and support services to international energy company Uniper.
Sending emails from Drupal-powered sites. Setting up Exim under Debian

Once you have the web server set up and running, you need to make sure your Drupal site can send emails, like registration confirmation, password change etc.

For inbound email, you may want to use email services like that offered by Google Apps. They offer good spam protection and secure storage.

To send email from a Drupal-powered site, you can use an SMTP module and do it all through a third party mail service. Alternatively, you can set up your own SMTP server. This article describes setting up an Exim server that allows sending emails.

admin Thu, 10/05/2017 - 13:47 Tags

Every six months, there comes a fresh Drupal 8 minor release full of lucrative features — it’s the essence of Drupal 8’s continuous innovation policy. And another big day has come! Drupal 8.4.0 is out on October 4, making this autumn especially rich in gifts. Just two weeks after the appearance of Drupal Commerce 2.0 for Drupal 8 online stores, Drupal 8.4.0 takes its turn in the spotlight. Let’s see why.

Read more

For several years a team of photographers have captured the essence of DrupalCon through the lens. Michael Cannon and more recently Suzanne Coates have done a sterling job formalising the photographic efforts into a professional (volunteer) operation. Not only is this a prime example of contributing to open source without code, we have curated a vast library of Creative Commons licensed images available for anyone to use.

Our long term objective has been to create a large library of high quality Drupal related imagery available for free so journalists, bloggers, Drupal end users and community members can easily find photos to brighten your news articles, blog posts, marketing materials. Please respect the CC licensing which requires attribution to the photographer. I look forward to seeing many more of these images appearing across the internet.

Below are links to the Flickr Groups for Drupal and DrupalCon's leading to over 10,000 images. Huge thanks to the many photographers who have contributed to this vast and colourful resource.

DrupalCon Mumbai Dries mass selfie. Photo: Michael Cannon

Sprint first timers at DrupalCon Barcelona 2016 Photo: Josef Jerabek

DrupalCon Vienna 2017 PreNote - Photo Dominik Kiss

Acquia Partner summit at DrupalCon Vienna 201. Photo Paul Johnson

Dries Buytaert delivers his State of Drupal Keynote 2017. Photo by Paul Johnson

Enlightened by the code. Photo by Boris Baldinger

Drupal Mentors - DrupalCon Dublin 2016. Photo Michael Cannon

Reflections of the group photo at DrupalCon Barcelona. Photo: Josef Jerabek

DrupalCon Amsterdam - Coder vs. Themer. Photo Bastian Widmer

Photo Michael Cannon

Are you going to San Francisco for BADCamp? No need to wear some flowers in your hair (although that would be festive), but you should definitely check out these presentations brought to you by our Lullabots and the Drupalize.Me team. The event will be held October 18-21 at the University of California at Berkeley. And, if you haven't registered yet, here's a handy link for convenience! It's FREE!

Intro to Backdrop CMS Thursday, October 19, 8:00 am - 5:00 pm

with Jen & Nate Lampton, Senior Technical Architect at Lullabot

If you aren't already familiar with Backdrop CMS, it's a simple and easy-to-use CMS built for the budget-conscious SMBs, educational institutions, and non-profits that need comprehensive CMS solutions that won't break the bank. Jen and Nate will give you an intro to Backdrop CMS and conduct a hands-on site building session from exploring pages and posts to deploying changes using Configuration Management. Check out the full details as there are pre-requisites for this session.

Theming Drupal 8 Thursday, October 19, 8:00 am - 5:00 pm

with Joe Shindelar, Lead Developer & Lead Trainer at Drupalize.Me

Front-end developers: You're probably in a situation where you have an existing site that needs a little facelift or you're creating a new theme from scratch. Joe will show you everything you need to know about how Drupal 8's theme system works so you can make your websites beautiful. Also, if you attend this session, Joe has a little Drupalize.Me gift for your continued learning.

Debugging, Profiling, & Rocking Out with Browser-Based Developer Tools! Friday, October 20, 1:30 pm - 2:15 pm

with Mike Herchel, Senior Front-End Developer at Lullabot

Front-end developers have come to rely on browser-based tools for developing the modern web, but keeping up with the continuously evolving changes and features often presents challenges. Never fear! Mike will make it simple by walking you through live examples sharing tricks and tips for using Chrome, Firefox, and Safari developer tools, as well as common troubleshooting solutions.

So long and thanks for all the requests: Front-end performance in the age of http/2 Friday, October 20, 4:45 pm - 5:30 pm

with Marc Drummond, Senior Front-End Developer at Lullabot

Curious to know how http/2 affects front-end performance when aggregating your CSS and JS? Marc says, "Don't panic!" New front-end performance techniques don't have to be drastically different from what you already know. In addition to recapping the basics of how http/2 is changing the way browsers process requests, Marc will take a look at performance strategies, stats, and studies on http/2 that will encourage attendees to continue the conversation and knowledge-sharing.

Big BADCamp Party Friday, October 20, 8:00 pm - 1:00 am 

And, of course, don't miss the party! We're proud to be a sponsor this year.

Photo by Changyu Hu

What's new in Drupal 8.4.0?

This new version is an important milestone of stability for Drupal 8. It adds under-the-hood improvements to enable stable releases of key contributed modules for layouts, media, and calendaring. Many other core experimental modules have also become stable in this release, including modules for displaying form errors inline and managing workflows.

The release includes several very important fixes for content revision data integrity as well as an update to stop the deletion of orphaned files that was causing data loss for many sites, alongside numerous improvements for site builders and content authors.

Download Drupal 8.4.0

Important: If you use Drush to manage Drupal, be sure to update to Drush 8.1.12 or higher before updating Drupal. Updating to Drupal 8.4.0 using Drush 8.1.11 or earlier will fail. (Always test minor version updates carefully before making them live.)

Inline Form Errors

The Inline Form Errors module provides a summary of any validation errors at the top of a form and places the individual error messages next to the form elements themselves. This helps users understand which entries need to be fixed, and how. Inline Form Errors was provided as an experimental module from Drupal 8.0.0 on, but it is now stable and polished enough for production use.

Datetime Range

The Datetime Range module provides a field type that allows end dates to support contributed modules like Calendar. This stable release is backwards-compatible with the Drupal 8.3.x experimental version and shares a consistent API with other Datetime fields. Future releases may improve Views support, usability, Datetime Range field validation, and REST support.

Layout Discovery API

The Layout Discovery module provides an API for modules or themes to register layouts as well as five common layouts. Providing this API in core enables core and contributed layout solutions like Panels and Display Suite to be compatible with each other. This stable release is backwards-compatible with the 8.3.x experimental version and introduces support for per-region attributes.

Media API

The new core Media module provides an API for reusable media entities and references. It is based on the contributed Media Entity module.

Since there is a rich ecosystem of Drupal contributed modules built on Media Entity, the top priority for this release is to provide a stable core API and data model for a smoother transition for these modules. Developers and expert site builders can now add Media as a dependency. Work is underway to provide an update path for existing sites' Media Entity data and to port existing contributed modules to the refined core API.

Note that the core Media module is currently marked hidden and will not appear on the 'Extend' (module administration) page. (Enabling a contributed module that depends on the core Media module will also enable Media automatically.) The module will be displayed to site builders normally once once related user experience issues are resolved in a future release.

Similarly, the REST API and normalizations for Media are not final and support for decoupled applications will be improved in a future release.

Content authoring and site administration experience improvements

The "Save and keep (un)published" dropbutton has been replaced with a "Published" checkbox and single "Save" button. The "Save and..." dropbutton was a new design in Drupal 8, but users found it confusing, so we have restored a design that is more similar to the user interface for Drupal 7 and earlier.

Both the "Comments" administration page at `/admin/content/comment` and the "Recent log messages" report provided by dblog are now configurable views. This allows site builders to easily customize, replace or clone these screens.

Updated migrations

This release adds date and node reference support for Drupal 6 to Drupal 8 migrations. Core provides migrations for most Drupal 6 data and can be used for migrating Drupal 6 sites to Drupal 8, and the Drupal 6 to 8 migration path is nearing beta stability. Some gaps remain, such as for some internationalization data. The Drupal 7 to Drupal 8 migration is incomplete but is suitable for developers who would like to help improve the migration and can be used to test upgrades especially for simple Drupal 7 sites. Most high-priority migrations are available.

Moderation and workflows

The Workflows module is now also stable, however it only provides a framework for managing workflows and is not directly useful in itself. The experimental Content Moderation module allows workflows to be applied to content and is now at beta stability. Content moderation workflows can now apply to any entity types that support revisions, and numerous usability issues and critical bugs are resolved in this release.

Platform features for web services

Drupal 8.4 continues to expand Drupal's support for web services that benefit decoupled sites and applications, including a 15% performance improvement for authenticated REST requests, expanded REST functionality, and developer-facing improvements.

Further details are available about each area in the 8.4.0 release notes.

What does this mean for me? Drupal 8 site owners

Update to 8.4.0 to continue receiving bug and security fixes. The next bugfix release (8.4.1) is scheduled for November 1, 2017.

Updating your site from 8.3.7 to 8.4.0 with update.php is exactly the same as updating from 8.3.6 to 8.3.7. If you use Drush, be sure to update to Drush 8.1.12 or higher before using it to update Drupal 8.3.7 to 8.4.0. Drupal 8.4.0 also has major updates to several dependencies, including Symfony, jQuery, and jQuery UI. 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.

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

Most high-priority migrations from Drupal 7 to 8 are now available, but the migration path is still not complete, especially for multilingual sites, so you may encounter errors or missing migrations when you try to migrate. That said, since your Drupal 7 site can remain up and running while you test migrating into a new Drupal 8 site, you can help us stabilize the Drupal 7 to Drupal 8 migration path! Testing and bug reports from your real-world Drupal 7 sites will help us stabilize this functionality sooner for everyone. (Search the known issues.)

Drupal 6 site owners

Drupal 6 is not supported anymore. Create a Drupal 8 site and try migrating your data into it as soon as possible. Your Drupal 6 site can still remain up and running while you test migrating your Drupal 6 data into your new Drupal 8 site. Core now provides migrations for most Drupal 6 data, but the migrations of multilingual functionality in particular are not complete. If you find a new bug not covered by the known issues with the experimental Migrate module suite, your detailed bug report with steps to reproduce is a big help!

Translation, module, and theme contributors

Minor releases like Drupal 8.4.0 include backwards-compatible API additions for developers as well as new features. Read the 8.4.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.3.x and earlier will be compatible with 8.4.x as well. However, the new version does include some changes to strings, user interfaces, and internal APIs (as well as more significant changes to experimental modules). This means that some small updates may be required for your translations, modules, and themes. See the announcement of the 8.4.0 release candidate for more background information.

BADCamp is back and Hook 42 is embracing all the magical goodness! This year we are not only a proud sponsor of the largest free Drupal Camp, but we also have the awesome opportunity to share our expertise across several platforms. Join us at our Supercharged SEO & Accessibility training, the DevOps Summit, and four sessions.

Drupal needs to adopt a JavaScript framework for its administrative interfaces. The selection of this framework is an important decision, which should not be based on just technical merits or popularity. Drupal has been an open source project and a community for over 17 years, and when we make decisions like this, our values should weigh more than what is the hottest JavaScript framework at the moment.
Introducing Mannequin Rob Wed, 10/04/2017 - 12:21

Today, we’re excited to announce the first stable version of our new Component Theming tool, Mannequin. We’ve been working on this for months now, and couldn’t be happier with the progress we’ve made.

Three days of sessions, discussions and meetings, one day for community, businesses, publishers and practices, and another day of code sprints - Drupalcon Vienna was a blast! It was very special experience for all our team members to have Drupalcon in town and we are proud to be among the supports of the event.


DrupalCon Vienna 2017 Sponsor

Here is a summary of our take-aways of the con:

Headless Drupal

One of the most discussed topics on DrupalCon Vienna was the idea of a headless CMS combined with a completely decoupled frontend. This way Drupal could not only serve as backend for a single website but as centralized data deliverer for applications of all kinds of devices. Combined with powerful JavaScript frameworks, like Angular or React, Drupal sites keep pace in the insanely fast changing world of web applications. Therefore Drupal should no longer be seen as an "all-inclusive"-CMS solution but as a single part in a modern Web-infrastructure and can return to its core strengths: Managing content.

As an example of how such a modern infrastructure could look like, kurier.at gave an insight of their system.


Adam Zielinski (CTO Telekurier Online Medien GmbH), © Amazee Labs

For further reading:

Contenta - API distribution
API-first initiative
Session: Headless, stateless, DB-less: how Kurier.at is transforming digital production with Drupal, NodeJS and Platform.sh

Accessibility

Andrew Macpherson, Théodore Biadala and Kristen Pol are part of the core accessibility team and it's always interesting to see what Drupal has achieved in all those years adressing persons with disabilities. The team briefly talked about some components of accessibility and the recent core accessibility improvements and what challenges they are facing. They gave half of their time room for discussions, which was very enlighning and informative. For instance automated testing can only cover around 40% of all accessibility issues. To get reliable test results many testss need to be done by real persons.

Another highly interesting, mind opening talk by Everett Zufelt was about how even little changes to the code can have a huge impact on a site's accessibility. Bringing in just a little more structure and semantic by using a wide variety of the available HTML5 tags, instead of just using <div> and <span>, is a big step forward for people depending on screen readers. The presentation also featured a list of good and bad examples which obstacles can be found and how most of them can be easiliy eliminated.


Andrew Macpherson, Théodore Biadala, Kristen Pol, © Amazee Labs

For further reading:

Session: JavaScript and Accessibility: Don't Blame the Language
Session: Core Accessibility: How are we doing, and what can we do better?
NYPL Design Toolkit
Manuel Matuzovic: Writing CSS with Accessibility in Mind

eleven Administration Theme

The current administration theme in Drupal 8 looks nearly the same as in Drupal 7. No large improvements have been made in Drupal 8. Although there is an initiative starting on developing a new administration them (with React) this approach will take some time before it will be part of Drupal core. However, there is already a modern administration theme on the way: eleven.

The eleven Administration Theme should be a modern way of how an administration should look like and behave with CSS variables, CSS grid and other CSS techniques supported in most modern browsers. As this is not intended for a wider audience and addresses solely administrators and editors backward compatibility with older browsers is not implemented.

There is also an own subchannel in the Drupal slack channel for the eleven theme.


Morten Birch, © Amazee Labs

For further reading:

Session: Admin Theming & design for a modern Drupal 8
BoF: Admin theme eleven
Drupal 8 Admin Theme: Eleven

UI Patterns

With UI Patterns it should be easy to get rid of the templates folder in the theme and connect the display of a field to a template in the administration backend directly. Advantages are a better overview and less Twig files.

For further reading:
Session: Introducing the UI Patterns module: use atomic UI components everywhere in Drupal 8
Drupal module: UI pattern

Landing Pages and Layouts

The Thunder team organized a BoF about "Landing Pages and Layouts" which lead to an interesting discussion on how layouts can be implemented in Drupal, as well as the tools & modules needed for editors to be able to have the necessary "content blocks" available for building good landing pages.
During the keynote, Dries has shown a demo of the new Layout Builder, which is currently worked on for inclusion in Drupal 8.5. As Tim Plunkett noted there will be an upgrade path of panelizer to the new layout builder in core, so panelizer can be considered a future-proof solution for layouts right now.


Driesnote at DrupalCon Vienna 2017, © Amazee Labs

For further reading:
BoF: Landing Pages and Layouts
Drupal Thunder Issue: Landing Pages and Layouts
Drupal Core ideas: Add a Layout Builder to core
Drupal Issue: Implementation issue for Layout Builder

Amazee.io: lagoon

Amazee.io demo-ed lagoon, their fully open-source docker production system. It's powered by docker compose, kubernetes and openshift and nice CLI and UI tools are planned for it. This and the branch-ed based auto-creation of new environments make it an interesting development that could be the base for the next version of our in-house docker CI system, which is able to create test-sites per feature-branch including initialized content. Amazing stuff! ;)

For further reading:
Introducing Lagoon, amazee.io’s fully open source Docker in Production system

Recently I was lucky enough to catch a workshop by Brian Sinclair entitled 'Accessibility: The Basics and Beyond'.  The workshop was part of the DinosaurJS conference in Denver CO.

As part of the accessibility group at Mediacurrent ,I was excited to see the issue being addressed at a javascript conference.

So last week we went with a big crowd (16 of us) from Digitalist to Drupalcon in Vienna to join the about 2000 other attendees. We went to sessions and BOF:s about caching in Drupal 8, Symfony components in Drupal core, Docker, Config split, Decoupled Drupal, Multi-sites in Drupal 8 and a lot of other things.   So last week we went with a big crowd (16 of us) from Digitalist to Drupalcon in Vienna to join the about 2000 other attendees. We went to sessions and BOF:s about caching in Drupal 8, Symfony components in Drupal core, Docker, Config split, Decoupled Drupal, Multi-sites in Drupal 8 and a lot of other things. Driesnote   A standard thing at Drupalcon is Dries talking about The state of Drupal - called the Driesnote – that means talking about all the good things we have in Drupal… Read More
Hailing from Managua, Nicaragua, Mauricio Dinarte takes some time from his pilgrimage across Europe to talk to us about teaching people Drupal from the ground up, no matter what language you speak. At BadCamp in October he'll be administering a training with Anna Mykhailova from Digital Echidna called "Getting Started with Drupal," then Thursday will be sitting in on the DevOps summit to talk about Behat testing. If you don't have plans November 17 and 18, you can visit him in Managua at Lakes & Volcanoes Drupal Camp! Many thanks to Felix Delattre (xamanu on Drupal.org) for giving Mauricio his first big break in Drupal.

The Pagerer module provides additional preset styles for Drupal standard pages and Views. It is a very simple module with styling options for everyone.

In this tutorial, you will learn how to add a pager to a View with Pagerer. Let's get started.

Drupal 8.4 is out now, and it contains new media handling features.

For many years, Drupal has shipped with almost no media handling. This was the most commonly requested feature whenever we did Drupal training.

If you missed it, here's our overview of everything new in Drupal 8.4. In this tutorial, we'll walk you through how to use Drupal's new media options. 

Drupal Modules: The One Percent —Hidey Help (video tutorial) NonProfit Tue, 10/03/2017 - 08:56 Episode 38

Here is where we seek to bring awareness to Drupal modules running on less than 1% of reporting sites. Today we'll think about  Hidey Help, a module which hides and displays your help text.

Creating a new instance of an existing site Adam Balsam Tue, 10/03/2017 - 09:43

Throughout the development and support lifecycle of a site, it is often necessary to install a fresh version of your application in a new environment with all of the existing site's configuration. For example, a new developer might need to set up their environment for the first time or your CI system might want a fresh install for tests. Basically:

As a user I want to be able to install Drupal from a package of configuration that is maintained in git.

Existing solution (pre Drupal 8.4.x): Drush --config-dir option

Installing a site from existing config is not as easy as going through the install process and then importing config though because the fresh install will have a different site UUID than the existing app and Drupal won't allow you to import configuration on sites with different UUIDs. To work around this, Drush introduced the --config-dir option to the site-install command which imported the configuration during install and magically worked around the UUID issue.

That workaround did have other issues including the fact that base fields defined in module or profile config would end up with conflicting UUIDs. But critically, Drush 9 only supports the --config-dir option when installing the Minimal profile - and Drush 8 isn't compatible with Drupal 8.4.x. So we need a new solution.

Investigated approaches

The Drush maintainers have suggested using the Config Installer profile. We tested it and works great, but:

  1. It's undocumented.
  2. It won't work if you're using Lightning as a Base Profile, which we recommend.

In theory, you could also manually set your site's UUID after install and then import your config, but this is sloppy and is an abuse of UUIDs. It also wouldn't solve the problems with base fields ending up with conflicting UUIDs.

Solution (Drupal 8.4.x): Another core patch

Enter the following issue: [#2788777] Allow a profile to be installed from existing config. The patch in #91 allows you to add a simple boolean to your sub-profile's info file that will automatically install your site with config from the config sync directory defined in your settings.php file. The end result is that no matter how you install your site (via Drush, the UI, or Drupal Console), your existing config will also be imported.

The only problem is that the scope of the issue is still being debated. As a result, Lightning can't bring the patch in just yet. But we will as soon as the issue is RTBC or we get further clarity about the scope. In the meantime, you can bring the patch in yourself.

Instructions

Given:

  • Your site's config sync directory is located in a VCS tracked directory (e.g. "../config/sync").
  • You use a sub-profile.
  1. Apply the patch #91 from issue #2788777 to drupal/core, in your root composer.json file: "patches": { "drupal/core": { "Allow a profile to be installed from existing config": "https://www.drupal.org/files/issues/2788777-91.patch" } }
  2. Add the boolean flag to your sub-profile's info file config_sync: true

     

The result will be that each time you install your site, all of your existing configuration will also be imported.

If you are not using a sub-profile, you can simply use the Config Installer profile mentioned above.

  1. Add the Config Installer profile to your codebase
  2. During installation select Config Installer as the profile
  3. Point Config Installer to your exported config directory (the resulting installation profile will still be Lightning even though you selected Config Installer)

If you're using BLT in your project (recommended), a lot of the configuration setup is already handled for you. See BLT's notes about updating to Drupal 8.4.x.

آخرین ارسال ها

محتواهای محبوب

درباره ما

Author
اینجا دروپال یعنی همه چیز. در مورد دروپال صحبت میکنیم. ماژول هامون رو به اشتراک میزاریم در مورد قالب دروپال ، فروشگاه دروپال، دروپال فارسی و تاریخ شمسی دروپال صحبت میکنیم و هرچیزی که در مورد طراحی سایت با دروپال میدونیم به هم انتقال میدیم. دروپالیون یک سایت شخصی نیست. ما دست همه کسانی که برای پیشرفت دروپال تلاش میکنند رو میفشاریم و با آغوش باز اونها رو در این سایت میپذیریم.

تماس با ما

با ما تماس بگیرید.

logo-samandehi