Drupal Planet

Evolving Web: How to Embed Facebook Videos with the Drupal Media Module

13 hours 4 minutes ago

Since the start of lockdown in March, you’ve probably seen way more live streams on social media than you ever had before. These are taking places on platforms like YouTube, Instagram, and Facebook Live.

We recently got a question at a training from an attendee whose organization has been doing more live streams on Facebook. They also use Drupal’s built-in Media module and were wondering how they could embed their recorded live streams from Facebook onto their Drupal site. In today's tutorial, I outline two different methods for pulling this off.

Method 1: Basic HTML Embed

This method isn’t integrated with Drupal’s Media module. The video won’t appear in your Media Library and can’t be referenced and re-used through your site.

However, if you’re looking for a quick solution and don’t need all the magic that Media offers, this might be a good route.

  1. Go to the video on Facebook
  2. In the top-right of the page, click the three dots to reveal the drop-down and click Embed
  3. Copy the HTML code
  4. Go to your WYSIWYG editor field, click View Source, then paste the HTML code.
Method 2: Drupal Media Module and Remote Video

Out of the box, Drupal ships with the Media module, which has a few different Media Types, including:

  • Audio
  • Document
  • Image
  • Remote video
  • Video

The difference between Remote video and Video is that the former are videos hosted on third-party platforms, like YouTube and Vimeo. In fact, out of the box, Drupal Media can have a URL from either of those two sites and be playable. Unfortunately, we have to do some work to get other platforms to be playable.

I’ll be showing a module called Media Entity Facebook to get Facebook videos to be embedded. But first: make sure you’ve already enabled the built-in Media module.

OK, let’s go.

Note: the embedded YouTube tutorial was recorded on July 13, 2020. On July 17th, a release of the Media Entity Facebook module was released and this is the recommended solution. You can skip to the 9:05 mark to jump straight to the process of configuring this module.

1. Get the Media Entity Facebook module for Drupal

First, download and enable the Media Entity Facebook module.

2. Create a new Media Type

After enabling, we can create a new Media Type that uses Facebook as a Media source:

  • Go to /admin/structure/media
  • Click Add media type
  • Give it a name and a description, then choose Facebook from the Media Source drop-down
  • Click Save

3. Create or modify a media field to handle the Facebook video media type

Now that we have a new Media Type, we can create a field (or modify an existing field) on a content type to use it.

  • Add a new field to your content type 
  • Choose Media from the Field Type drop-down and name your field
  • In the list of Media Types, choose the new Facebook media type that you created in the previous step.

4. Change the input widget

After adding a new Media field, the default method of adding the content is via the autocomplete widget. This is silly, and we are going to change this widget to something more sensible.

Go back to editing your content type and click on the Manage form display tab. Find the field field that uses your Facebook video embed and change the widget to use Inline entity form - Simple. This will let your users simply paste the URL of the Facebook video.

Now, when you add content, you can give your media entity a name and paste in just the URL of the Facebook video (not the embed code).

As for your content type, by default it will display several fields you may not need, such as Authored by, Authored on, URL alias, and Published. In the Manage form display menu of your media type, you can drag these fields to the Disabled section.

5. Change the display of field

After saving our content, by default this module just shows the Facebook URL and not the embedded video. To get it to display as an embedded video, we have to change the display type of the Media entity itself:

  • Go to /admin/structure/media/manage/name_of_your_media_type/display
  • Change the format of your field to Facebook embed
  • Click Save

And now, your content should have the Facebook video embedded.

Wrap-Up

The video tutorial and the directions above showed the Media Entity Facebook module being used on a content type. That said, nothing prevents you from creating a new Media Type and using it in Paragraphs.

In fact, that’s exactly how I use it on one of my personal sites. I record live streams and at the end of the week, I post all of the videos recorded into a blog post which is based in Paragraphs. Here you can learn all about the Moon, from embedded Facebook videos.

+ more awesome articles by Evolving Web

Specbee: Improving Drupal 9 Performance with modules, best coding practices and the right server configuration

19 hours 13 minutes ago
Improving Drupal 9 Performance with modules, best coding practices and the right server configuration Pradosh 11 Aug, 2020 Top 10 best practices for designing a perfect UX for your mobile app

You could have the most powerful server with memory in heaps but is that enough to ensure a high-performing website? With Drupal, scaling the website in harmony with your business growth is easy. In fact, that is what Drupal is great at. However, a sudden rise in web pages, functionality and content could impact its performance. Drupal 9 is here now and is all geared-up to take on this challenge like a pro! It comes with the goodness of Drupal 8 minus the old code which makes it leaner, cleaner and more powerful. Explore more on Drupal 9 performance improvement techniques that absolutely work.

Performance of the website is the key to business success. Slow loading websites could be harmful for businesses. A website with better performance helps in better SEO, improve visitor’s conversion rate and provides better user experience to the visitors which collectively help in the growth of the business. While slow loading websites do quite the opposite and become the reason for the business failure.

 

There are many things that affect the website performance. Some of them are:

•    Your service provider (Hosting, DNS etc.)
•    Number of requests to the server
•    Technical issues or bad programming practices
•    Caching technique
•    Improper server configuration
•    Heavy image and video files

Drupal 9 Core and Custom Modules to boost Performance 

There are many available contributed and core modules in Drupal 9 which can be helpful in improving your website’s performance. By following certain coding practices and with proper server configuration, you can drastically improve the site performance.

Core Modules
  •    Big Pipe

The Drupal Big Pipe module makes things faster without extra configuration. It comes packaged with Drupal core. It improves frontend perceived performance by using cacheability metadata and thus improving the rendering pipeline.

•    Internal Dynamic Page Cache

This Drupal 9 module helps to cache dynamic content. It is helpful for both anonymous & authenticated users. This module is not available in Drupal 7. Pages requested by users are stored the first time they are requested and can then be reused when the same page is further requested.


•    Internal Page Cache

The Internal Page Cache module helps to cache data for anonymous users. This module is available in core and is enabled by default. 

Configuration Path:  admin/config/development/performance

Here you can clear cache, set browser and proxy cache maximum age and enable / disable aggregation settings.

                     Internal Page Cache Module  Contributed Modules
  • Advanced CSS/JS Aggregation

    The Advagg module comes packed with many other submodules, such as -
  • AdvAgg Cdn: Helps to load assets (CSS/JS) from public CDN
  • AdvAgg CSS/JS Validator: Validates CSS and JS file
  • AdvAgg External Minifier: Minifies Javascript and/or CSS with a command line minifier.
  • AdvAgg Minify CSS : Helps in minify css files with 3rd party minifier
  • AdvAgg Minify JS : Helps in minify js files with 3rd party mi
  • AdvAgg Modifier : Allows one to alter the CSS and JS array. (May have compatibility issue)
  • AdvAgg Old Internet Explorer Compatibility Enhancer

Configuration Path: /admin/config/development/performance/advagg

This module also supports file compression techniques like gzip and brotli. This module helps in reducing the number of http requests, thus improving the site performance significantly.

  • Blazy

The Drupal 9 Blazy module provides lazy loading of images to save the bandwidth and avoid higher bounce rates. Lazy loading is a technique that loads images only when in the visible area to the user. This multi-serve technique saves time and data. 

Configuration path: /admin/config/media/blazy

Here you can enable/disable Blazy, configure placeholder effect and can also set the offset which determines how early the image will be visible to the user.


                              Blazy module
  • CDN

The Drupal 9 CDN module helps in easy integration of CDN in Drupal websites. It helps to serve static content from the CDN server to increase the speed of content delivery. Other than that, this module is also easy to configure.

Configuration path: /admin/config/services/cdn

           CDN Module Settings

Here you can enable/disable the CDN, provide mapping URL and check/uncheck forever file caching.

Performance Improvement with Best Coding Practices
  • Using isset() over array_key_exist()

isset() method is significantly faster than array_key_exist(). The main difference between isset and array_key_exist is that array_key_exists will definitely tell you if a key exists in an array. Whereas isset will only return true if the key/variable exists and is not null. For more information on this check here for benchmark comparison.

  • Using entityQuery()

entityQuery() depends on a storage controller to handle building and executing the query for the appropriate entity storage. This has the advantage that any query run through entityQuery() is storage independent. So, if you’re writing a contributed module or working on a website where it might be necessary to move to an alternative entity storage in the future, all your queries will transparently use the new storage backend without any changes needed. entityQuery() can be used whether you’re writing queries by hand in custom code or via the entityQuery() Views backend.

  • Using loadMultiple() method instead of looping

If you have 10 nids (node ids) and you’re looping through it to load each node, you are making 10 queries to the database. While using loadMultiple() it is reduced to just one database query. 

 

  • Caching

Using Cache API in Drupal 9 you can cache the renderer, response array or object. There are three renderability caching metadata available in Drupal 9.

  1. Cache tags

    The Cache tags are used to cache data when it depends upon Drupal entities or configurations. Syntax for this is cache-item:identifier e.g. node:5, user:3.
  2. Cache context

    Syntax:
    •    periods separate parents from children
    •    a plurally named cache context indicates a parameter may be specified; to use: append a colon
                    Example: user.roles, user.roles:anonymous, etc.
  3. Cache max-age        

          Cache max-age is used to cache time sensitive data.

  • Queue worker / Batch

To process large amounts of data without php time out, batch processing or queue worker can be used. Items in queue worker runs only when the cron runs and it runs for a small amount of time. There are two types of queue workers: reliable and unreliable. Reliable queue worker ensures that the item in the queue runs at least once, whereas an unreliable queue may skip items due to memory failure or for other interruption. Batch processing processes the items till all the items finish in the batch conditioned so that no error should occur during the processing without waiting for the cron run.

Improving Performance with better Server Configuration
  • Using Nginx instead of Apache

Nginx and Apache, both are widely used web servers. Nginx has an edge over Apache on performance benchmark. It is also faster and more efficient than apache. Nginx performs 2.5 times faster than Apache according to a benchmark test running up to 1,000 simultaneous connections.

  • HTTP/2.0 over HTTP/1.1

HTTP/2.0 supports multiplexing, that is unlike HTTP/1.1 which blocks other resources. If one resource cannot be loaded, HTTP/2.0 uses TCP connection to send multiple streams data at once. HTTP/2.0 uses advanced header compression techniques than HTTP/1.1

Nginx configuration for HTTP/2.0 server { listen 443 ssl http2; //http2 settings ssl_certificate server.crt; ssl_certificate_key server.key; }
  • Serving Compressed Content
Compressing responses often significantly reduces the size of transmitted data. However, since compression happens at runtime, it can also add considerable processing overhead which can negatively affect performance. Nginx configuration to serve compressed content: server { gzip on; gzip_static on; gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript; gzip_proxied any; gzip_vary on; gzip_comp_level 6; gzip_buffers 16 8k; gzip_http_version 1.1; ... }
  • MariaDB instead of MySQL

mariaDB has improved speed as compared to MySQL. It provides faster caching and indexing than MySQL. It is almost 24% faster than MySql in this case. There are other key metrics also where mariaDB is better than MySQL. So, MariaDb is preferred over MySQL in terms of performance.

  • CDN

CDN stands for content delivery network. It is a cluster of servers spread across the globe (a.k.a., points of presence, or PoPs), which works together to deliver the content faster. CDN stores the cached version of the site content and delivers the content from the nearest available server. Some of the popular CDN providers are Cloudflare, Amazon cloudfront, Google cloud cdn etc.
 

Drupal 9 is persistent on continuous innovation and carries forward significant features from Drupal 8. The codebase is now cleaner and more lightweight. It’s compatibility with the latest modern web technologies and libraries have enabled organizations to build better, more powerful digital experiences. However, applying and leveraging the best of the techniques, modules and coding practices can help maximize your efforts in performance improvement for a Drupal website. At Specbee, we are committed to providing our customers with high-performing websites only. Contact us today to know how we can help you with your Drupal project.

Drupal Planet Drupal Development Drupal Tutorial Drupal Module Shefali ShettyApr 05, 2017 Subscribe For Our Newsletter And Stay Updated Subscribe

Leave us a Comment

  Shefali ShettyApr 05, 2017 Recent Posts Image Improving Drupal 9 Performance with modules, best coding practices and the right server configuration Image Top Drupal 8 (and 9) Modules for Intuitive Website Navigation Image Drupal Pathauto Module - A Brief Tutorial on how to Automatically Generate Bulk URL Aliases in Drupal 8 Want to extract the maximum out of Drupal? TALK TO US Featured Success Stories

Know more about our technology driven approach to recreate the content management workflow for [24]7.ai

link

Find out how we transformed the digital image of world’s largest healthcare provider, an attribute that defined their global presence in the medical world.

link

Discover how a Drupal powered internal portal encouraged the sellers at Flipkart to obtain the latest insights with respect to a particular domain.

link

Drupal.org blog: What's new on Drupal.org? - Special DrupalCon Edition 2020

1 day 6 hours ago

Read our roadmap to understand how this work falls into priorities set by the Drupal Association with direction and collaboration from the Board and community. You can also review the Drupal project roadmap.

It's hard to believe that our last published update was back in April of 2020. Time seems to simultaneously crawl and disappear in the time of quarantine. All hands were on deck at the Drupal Association to facilitate the transition of DrupalCon from an in-person event to a virtual conference, and those efforts were rewarded:

The first DrupalCon Global event exceeded all expectations. Creating a 100% virtual event which captures the spirit of DrupalCon is no small task, but thanks to our sponsors and supporting partners we were able to set the benchmark for virtual open source conferences.

DrupalCon wasn't the only thing we worked for the past three months, of course, and we have a number of phenomenal updates that we'd love to share with you.

In fact, we spoke about this work during the Drupal.org Engineering Panel at DrupalCon Global, so what better way to update you than with that recording!

Highlights Looking for the TLDR? 

Don't worry - we know you're busy - here's the short version: 

  • We recapped the success of the #DrupalCares campaign, and reiterated our #DrupalThanks to all the contributors who made it possible to refocus on our mission work.
  • We shared new metrics available on https://www.drupal.org/metrics that help us understand community activity, project health, and community diversity.
  • We showed off the new community event listings - the beginning of a more modern replacement for the event-organizing features of groups.drupal.org.
  • We showed off the tools built for the new contributor guide - which are now in use by the community to help match contributors and their skills to what's needed for the DRupal project.
  • Drupal 9 released, not only on time, but in it's very first potential release window - on June 3rd, 2020. This is an incredible testament to the work of the community, and in particular the core maintainers.
  • We launched the beta for merge requests integrated into Drupal.org - you can opt in the projects you maintain.
  • We announced that Drupal Steward program was going live! And we're looking for 10-30 initial site owners ready to sign up, to help us refine our onboarding process.
But that's not all!  Community contributed Drupal.org improvements

In addition to all the work that the Engineering team has done in recent months, the community has also swung into action to provide some great improvements to Drupal.org. 

Drupal Agency Marketing (Promote Drupal): Drupal Evaluator Survey - Help Us Spread the Word

1 day 9 hours ago

The Promote Drupal initiative is looking for input from decision makers who play a role in selecting the content management system (CMS) or digital experience platform of choice for their organization. We want to better understand the pain points and the key decision criteria evaluators use in selecting a content management system.

We’ve put together a survey that you can share with your network. We encourage you to invite Drupal end-users as well as any contacts who have selected a different technology for their website. We’ll share the results with the community in the form of an anonymized report, and use the feedback to improve marketing materials for Drupal.

Here’s a quick message you can use to promote the survey to your contacts:

Fill out this quick survey from the Promote Drupal Initiative to tell us how you select which technology platform for your website.

The survey only takes 5 minutes, and you might learn a thing or two about your own decision-making criteria in the process. Whether or not you’ve decided to build your website with Drupal, your input would be incredibly valuable.

Why Are We Doing This?

The survey feedback will greatly facilitate the work of the Promote Drupal initiative. It will help us create more relevant resources and on-boarding materials for those evaluating Drupal.

Every voice matters! We want to get the perspective of evaluators who are looking at Drupal from technical and marketing perspectives and are able to provide honest and actionable insights. We would love to hear from as broad an audience as possible so that we can make the evaluation process more accessible to decision makers with expertise in different areas.

What is Promote Drupal?

The Promote Drupal initiative creates branding and marketing materials to spread the word about Drupal, drawing on the expertise of agencies and Drupal users around the world. If you would like to contribute to the Promote Drupal initiative in any way, you can check out some of our past projects (e.g. the pitch deck with over 70 Drupal case studies).

You can publish a case study, help with translating materials, or help us design resources. The best way to start, is to join the #promotedrupal channel on slack.drupal.org and get the conversation going there.

Drupal Association blog: Drupal Association Board Elections, 2020

1 day 14 hours ago

It is that time of year again where the Drupal Association Board looks to fill the At-Large member seat that becomes available every year.

This year, we send our thanks to Suzanne Dergecheva, who will be stepping down as At-Large board member after serving her two years. Last year, we elected Leslie Glynn to the board, who has one more year to serve - and we are sure will be happy to welcome the next person onto the board!

Important Dates

Nominations open: 10 August 2020

Nominations close: 27 August 2020

"Meet the Candidates" begins: 28 August 2020

"Meet the Candidates" ends: 13 September 2020

Voting opens: 14 September 2020

Voting closes: 30 September 2020

Announcement of winner: 30 October 2020

What does the Drupal Association Board do?

The Board of Directors of the Drupal Association are responsible for financial oversight and setting the strategic direction for serving the Drupal Association’s mission, which we achieve through Drupal.org and DrupalCon. Our mission is: “Drupal powers the best of the Web. The Drupal Association unites a global open source community to build, secure, and promote Drupal.”

Who can run?

There are no restrictions on who can run, other than you must be a member of the Drupal Association.

How do I run?

Candidates are highly encouraged to:

  1. Watch the latest Community Update Video

  2. Read about the board and elections
  3. Read the Board Member Agreement

Then visit the Election 2020: Dates & Candidates page to self-nominate. The first step is to fill in a form, nominating yourself. Drupal Association staff will create you a candidate page and make you the author so you can continue to add content here during the election and answer any question posed by the electorate as comments on the page.

Who can vote?

For 2020 and moving forward, all individual members of the Drupal Association may vote in the election.

If you are not currently a member, please ensure you have renewed your membership before voting opens, on 14 September.

How do I vote?

The Drupal Association Board Elections are moving to the free and open source Helios Voting service for 2020 and beyond. All Drupal Association individual members will receive their unique voting links via email, sent to the primary email address in their Drupal.org profile, when voting opens. Follow the instructions in that email to vote.

Elected board member special responsibilities

As detailed in a previous blog post, the elected members of the Drupal Association Board have a further responsibility that makes their understanding of issues related to diversity & inclusion even more important; they provide a review panel for our Community Working Group. This is a huge important role in our global community.

What should I do now?

Self-nomination is open! Please do read further:

Then consider if the person who should be standing for election is you. (It probably is!)

OpenSense Labs: Different options of decoupling Drupal

1 day 18 hours ago
Different options of decoupling Drupal Shalini Rawat Mon, 08/10/2020 - 17:36

In this world of growing interfaces and APIs, content plays a significant role and great user experiences begin with great content. Certainly, wearables, conversational interfaces, IoT, and more have begun to establish the changes in how we experience the internet, making alterations in the digital marketplace. Therefore, to keep up the pace, organizations need to adopt front-end technologies such as AngularJS, React JS, etc. that can deliver the content at a fast speed. Decoupled Drupal (or headless Drupal) is one such solution that has been gaining ground lately and is being considered as a holy-grail that exhibits innovative strength to produce exceptional digital experiences. 


The role of the website is not limited to the creation of the content. In other words, the website is responsible to deliver the content in a user-friendly manner across all devices. Keeping this responsibility in mind, more and more websites are opting for a decoupled approach and preferring a strong content store in Drupal And probably that is why you are here. However, the most complex question remains - how to decouple Drupal. Therefore, in this post, we will be gaining more insight into different ways of implementing decoupled Drupal.

Ways to Decouple Drupal

In a traditional web project, Drupal is used to manage the entire content and to present it. Since Drupal is a monolithic system, therefore it maintains entire control over the presentation as well as data layers. Traditional Drupal has been an excellent choice for editors who wish to take full control over the visual elements on the page. Not to mention, traditional Drupal open door to access features such as in-place editing and layout management. 

There are certain factors that are required to be considered by a technical decision maker before thinking to implement the Decoupled approach. These factors are the implications whether the effort to decouple Drupal is the perfect fit for your organization or not. Therefore, let’s take a look at the factors that should be a part of the decision making process.

  • First things first, do you have separate backend and front-end development resources? 
  • Are you building a native app and want to use Drupal to manage your content, data, users, etc.? 
  • Do you envision publishing content or data across multiple products or platforms?
  • Is interactivity itself a primary concern?
  • Does working around Drupal’s rich feature set and interface offer more work in the long run?
  • Do you want the hottest technology?
  • If your organization complies with the above mentioned factors, the organization is ready for the decoupling process. 

There are two approaches for decoupling drupal depending on the preferences and requirements. These include progressively decoupled, and fully decoupled.

Source: Drupal.orgProgressively Decoupled Drupal

Progressively decoupled Drupal is required when an additional layer called JavaScript is used to deliver a highly interactive end-user experience. In progressively decoupled Drupal, a JavaScript framework is used as a layer on top of the existing Drupal front end. The former is responsible for nothing more than rendering a single block or component on a page or it may render everything within the page body. The progressive decoupling model lies on a spectrum; the less of the page committed to JavaScript, the more editors can take control over the page through Drupal's administrative capabilities.

Fully Decoupled Drupal

Fully decoupled Drupal can be implemented in two ways, namely Fully decoupled app and Fully decoupled static site. 
Fully decoupled Drupal web app involves a complete separation of concerns between the presentation layer and all other aspects of the CMS. In this approach, the CMS becomes a data provider, and a JavaScript application along with server-side rendering is held responsible to render and markup, communicate with Drupal via web service APIs. Despite the unavailability of key functionality like in-place editing and layout management, fully decoupled Drupal app captivates the attention of developers who want greater control over the front end and who are already experienced with building applications in frameworks such as Angular, React, Vue.js, etc. 

On the contrary, JAMstack (JavaScript, APIs, Markup) offers an alternative to the complexities of JavaScript development. It helps in building fully decoupled Drupal static sites. The prime and obvious reason behind the idea is improved performance, security, and reduced complexity for developers.

Front end technologies

In the world of software development, whatever is built around falls into two categories: front-end technology and back-end technology. Front-end technology is everything that is seen by the user and the process that is happening in the background. On the contrary, all the behind-the-scenes activity that is responsible to deliver data and speed to run a screen is considered back-end technology. 

The development of front-end technology is crucial for any business application that wants to succeed and sustain itself in the digital marketplace. It is possible to have the most structured back-end programming to strengthen your application, however, the front-end is what people see and mostly care about.

Therefore, for your consideration, we have rounded up the best front-end technologies that a front end developer can use with Drupal to derive the best outcomes. 


React

React is a JavaScript library that is used to create interactive user interfaces (UIs). It is one of the most powerful and highly used front-end technologies, supported and maintained by the tech giant Facebook. The React holds the capability to split the codes into components to further enable developers with code reusability and fast debugging.  The appellations produced are SEO friendly and highly responsive.
Some of the prominent websites and web applications that use React as front-end technology include Airbnb, Reddit, Facebook, NewYork Times, BBC, etc.

Why connect with Drupal?

  • The combination of React and Drupal can be used to create amazing digital experiences. However, it is quite challenging to know how to leverage the strengths of both react and Drupal.
  • The one-way data flow of React helps in shaping the web page in accordance with the data that is sent from Drupal's RESTful API.

Gatsby

Gatsby is basically an open-source, modern website framework that helps build performance into every site by leveraging the latest web technologies such as React and GraphQL. Moreover, Gatsby is used to creating blazing-fast apps and websites without needing to become a rockstar. It uses powerful pre-configuration to build a website that uses only static files for incredibly fast page loads, service workers, code splitting, etc.
 
Why connect with Drupal?

  • There is no better option than Gatsby to create an enterprise-quality CMS for free, paired with great modern development experience. Not to mention, it offers all the benefits of the so-called JAMstack, like performance, scalability, and security.
  •  Static site generators like Gatsby can do fireworks by pre-generating all the pages of the website, unlike dynamic sites that render pages on-demand, thereby reducing the need for live database querying. As a result, performance is enhanced and overheads are reduced. This enhances the performance and brings down the maintenance cost.

Angular

Angular is an open-source, JavaScript front-end technology. Ever since the advent of this technology in 2009, it has been continuously gaining immense popularity for the advantages that it delivers to the businesses. Angular is supported by a large community and maintained by the tech giant Google. This open-source is readable and constant and enables businesses with various high performing apps.
Paypal, Gmail, and The Guardian are some of the examples that use Angular as the front end technology.

Why connect with Drupal?

  • The powerful combination of Drupal with Angular will allow you to move display logic to the client-side and streamline your backend, thus resulting in a super speedy site.
  • HTML never goes out of date and is always demanded by web developers and designers because of its simplicity, clarity, and intuitivism in its code structure. Angular makes use of HTML to define user interfaces, hence letting the organizations build interactive web applications that are highly functional and hard to break.

Vue

Vue is a JavaScript library that is used for developing distinct web interfaces and to create single-page applications. The core library of Vue solely focuses on the view layer, therefore providing convenient integration with other libraries and tools to achieve the pre-decided or desired outputs. Vue is not just a technology rather it is a proud ecosystem that is easily adaptable as it is lightweight. 

Why connect with Drupal?

  • With Drupal and Vue combination, developers have an upper hand to request and store Drupal content as data objects with the help of the official Vue-Resource plugin.
  • When combined with Vue, Drupal becomes competent to exhibit its magic at the back-end while the compelling features of the Vue handle the client-side. Vue’s component system is one of the powerful features that allow large-scale application building, comprising small and self-contained reusable components.
Decoupled Drupal ecosystem

The world of Decoupled Drupal is a compendium of a myriad of unique modules and features that can help transform the way you retrieve and manipulate information. Amongst which Rest, JSON: API, and GraphQL are the most important as well as the common modules when it comes to decoupled Drupal implementation.  So, let’s take a birds-eye view of each one of them-

RESTful Web Services

Web Services holds the responsibility to allow other applications to read and update information on your site via the Web. REST is one of the ways of making Web Services available on your site. Unlike other techniques, it encourages developers to rely on HTTP methods (such as GET and POST) to operate on resources (data managed by Drupal). RESTful web services is a module that provides a customizable, extensible RESTful API of data managed by Drupal. The module enables you to create an interaction with any content entity (nodes, users, comments) as well as watchdog database log entries. 

JSON: API

JSON: API is designed with an intent to minimize the number of requests as well as the amount of data that is transmitted between clients and servers. And guess what, this efficiency comes without any compromise relating to readability, flexibility, or discoverability. The moment you enable the JSON: API module is the moment you immediately gain a full REST API for every type in your Drupal application. JSON: API works on the principle that the module should be production-ready ‘’out of the box". To clarify, the module is highly inflexible in nature, wherein everything is pre-fixed. Be it about the location where the resources will reside, or what methods are immediately available on them. JSON: API leaves access control to Drupal Core's permissions system. 

GraphQL

The GraphQL Drupal module is used to raise a query or mutate (update/delete) any content or configuration using the official GraphQL query language. This particular module is considered as an extremely powerful tool which opens the door for Drupal to be used in a multitude of applications. Also, plays a crucial role in tools like GraphQL to implement auto-completion. This module can be used as a foundation for building your own schema through custom code or you can use and extend the generated schema using the plugin architecture and the provided plugin implementations form the sub-module.

In addition to these, the shift of responsibility has given rise to the development of some other modules to better serve the content and data. Let’s take a glance at them.

  • You can use Webform REST module to retrieve and submit web forms via REST.
  • If you wish to extend core's REST Export views display to automatically convert any JSON string field to JSON in the output, REST Export Nested module is the best option. 
  • Overriding the defaults that are preconfigured upon the installation of JSON: API module sounds easy with the JSON: API Extras.
  • For easy ingestion of content by other applications, Lightning API provides a standard API that primarily makes use of the json:api and OAuth2 standards via the JSON: API and Simple Oauth modules.
  • To build an integration between GraphQL and Search API modules, GraphQL Search API module can be useful.
  • Subrequest module tells the system to execute several requests in a single bootstrap and then return all the things.
  • Contenta JS module is necessary for Contenta.js to function properly.
  • There is an OpenAPI module in Drupal that can integrate well with both core REST and JSON: API for documentation of available entity routes in those services. 
  • Schemata module that provides schemas can be used for facilitating generated documentation and generated code.

Check out more such modules in the decoupled Drupal ecosystem here

Conclusion 

To conclude, decouple Drupal is an interesting approach that can help you build feature-rich interactive websites or build content hubs. There is a lot of talk about headless Drupal in the market and there is no doubt why companies are going gaga over it. In today’s world, end-users look forward to highly interactive websites that can pop out results in a jiff. Moreover, content needs to be made available at all touch-points in harmony. The decoupled Drupal solves these problems by creating different layers for presentation and data.

However, it is equally important to dig in certain minute downsides to it as well and carefully consider them before taking the decoupled path.

Got a question? Feel free to ping us at [email protected] and our experts will help you embark on your Drupal project.

blog banner blog image Drupal Decoupled Drupal Progressively decoupled Drupal Fully Decoupled Drupal JSON API GraphQL REST API RESTful Web Services OpenAPI Contentajs React Vue Gatsby Angular JAMstack Blog Type Articles Is it a good read ? On

Morpht: Announcing personalisation for Drupal 8 with Recombee

2 days 3 hours ago

At Morpht, we have been busy experimenting and building proof-of-concept personalisation features on Drupal 8. We started off with content recommendations as one of the cogs in a personalisation machine. Recombee stood out as a great AI-powered content recommendations engine and we decided to develop some contributed modules to integrate it with Drupal.

We have implemented three modules which work together:

  • Search API Recombee indexes content and pushes it across to Recombee.
  • Recombee module tracks users and displays recommendations.
  • JSON Template module defines a plugin system for transformers and templates and controls how JSON can be transformed client side.

The video below is a demonstration of these three modules and how they combine to deliver a power recommendations system capable of providing content to anonymous and logged in users alike. 

Download the slides from the presentation
(PDF 785KB)

Let's talk

Find out how personalisation can help you increase audience engagement and lift user experience.

Contact us

Evolving Web: Get a Free Ebook About Drupal Accessibility!

4 days 13 hours ago

Did you know that according to WebAim, a whopping 98% of the top million homepages on the web today present some sort of barrier to accessibility? This has serious implications for the 1 in 5 people worldwide living with some form of disability. Building a more accessible, inclusive web is truly everyone's business.

There's a ton of information out there on web accessibility, and it isn't always clear where to start and what you should be focusing on.

We've put together a simple, straightforward, informative guide to help designers, developers, and anyone working with a Drupal website navigate the ins and outs of the accessible web. Head over here to download your copy. It's free!

Ebook Chapters 1. Why web accessibility matters

Find out why making your website accessible should be a business priority.

2. What is web accessibility?

Learn about the key principles of accessibility and what standards and guidelines currently exist.

3. Assistive technologies you can start using today

Spend some time in the shoes of a user with a disability to experience first-hand why accessibility is so important, and whether your website really works for everyone.

4. Why Drupal is great for building accessible sites

The Drupal CMS comes with robust accessibility features out of the box. Find out how switching to Drupal can help your accessibility journey.

5. 18 tips for making your website WCAG compliant

Start making simple changes with a big impact today.

6. Tools for checking website accessibility

You're not alone! Discover some must-have accessibility testing tools.

7. Drupal modules for web accessibility

Need even more features? Explore our favourite Drupal modules that extend the CMS's accessibility capability even further.

Download Your Copy!

Click here to get your free copy of Building a More Inclusive Drupal Website: Your Accessibility Guide.

+ more awesome articles by Evolving Web

OpenSense Labs: Planning for accessibility: Ultimate guide

5 days 19 hours ago
Planning for accessibility: Ultimate guide Shalini Rawat Thu, 08/06/2020 - 16:59 “The power of the web is in its universality. Access by everyone regardless of disability is an essential aspect.” – Tim Burners-Lee, W3C Director and inventor of the World Wide Web’’

Are you planning to start a new business and probably looking to have a great web presence to go along with it? If that’s the case then you have landed at the right place. In the current age of web development, there are markets that are flooded with customers that would prefer to research and buy online. Today the word ‘web’ has become an indispensable resource that covers just about every aspect of our lives. Further, there are various modern ways to design effective and irresistible web solutions to captivate the attention of online buyers. However, the main question here is - is your website accessible to everyone, including people with disabilities?  Does everyone around you share the same level of accessibility that they should have? 

Unfortunately, many websites are inaccessible to people with disabilities, making it difficult for them to find information online. However, web accessibility for people with disabilities is becoming a greater priority, and as a matter of fact, accessible websites are no longer optional, rather they are a must-have. It has become important for websites to implement web accessibility to make sure that all the users are able to surf the web and easily browse content at the best possible.

A quick overview of the term 'Disability'

According to Centers for Disease Control and Prevention (CDC), “a disability is any condition of the body or mind (impairment) that makes it more difficult for the person with the condition to do certain activities (activity limitation) and interact with the world around them (participation restrictions).”

It is important to note that while referring to the people with disabilities, it is preferable to use language that focuses on their abilities rather than their disabilities. Terms like ‘handicapped’, ‘able-bodied’, 'physically challenged’, and ‘differently abled’ discourage the disabled. Therefore, it is important to keep the language in mind when communicating with or about people with disabilities.

Types of Disabilities

There are numerous types of disabilities that can affect a human being. Some of these conditions are more common than others. However, disability is not black and white, which means that two people with the same type of disability may not have the same experiences. Following are the disabilities that may affect different people in different manners.

Visual - Visual disabilities include mild or moderate vision loss in one or both eyes to complete loss of vision in both eyes. It involves a lack of sensitivity to certain colors, color blindness, and sensitivity to brightness. For example, color blindness, low vision, and blindness.

Cognitive, learning, and neurological -  Cognitive, learning, and neurological disabilities encompass neurological, behavioral as well as mental health disorders. For example, attention deficit hyperactivity disorder (ADHD), autism spectrum disorder, mental health disabilities, memory impairments, perceptual disabilities, and seizure disorders.

Auditory - Auditory disabilities can range from mild to moderate hearing impairment in one or both ears. Even partial loss or difficulty can contribute to auditory disabilities. For example, hard of hearing and deafness.

Physical - Physical also known as motor disabilities are weaknesses and limitations related to muscular control. These include involuntary movements that you cannot control. For example, amputation, arthritis, paralysis, and repetitive stress injury.

Speech - This disability includes the inability to produce speech that is recognizable by other people or software. Generally, the volume or clarity of speech makes the recognition difficult. For example, muteness, dysarthria, and stuttering.

Common Web Accessibility Myths 

In simple terms, web accessibility implies that the websites, tools, and technologies are designed and developed so that people with disabilities can use them. More specifically, web accessibility helps people to perceive, understand, navigate, and interact with the web. 

However, in this contemporary era, website accessibility is just a buzzword and not everyone in the present times has a firm grasp on what that term means. There exist web developers with little or no experience in terms of accessibility and the lack of accurate information about the best ways to quickly and easily identify accessibility problems. As a result, there are still a lot of myths and misconceptions about accessible websites and the people who use them.

Here are some of the most common myths that run around web accessibility. Let's burst them and face reality. 

Myth #1: Accessible sites are ugly

The first and foremost myth which prevails over all the other benefits of web accessibility is the mindset that accessible sites are ugly. There are people who still believe that accessibility places too many restrictions on the look and feel of the website. However, times have moved on and so has technology. In other words, internet space holds a collection of websites that are beautiful, media-rich, interactive, and accessible websites. 

Myth #2: Web accessibility is a solo job

A lot of people think that web accessibility is a solo job that needs to be performed by the Developer. However, falling all the accessibility duties into the remit of a developer is not right. Every individual who is associated with the website has to be responsible for accessibility.  Whether it is a content writer, a project manager, or even the CEO; everyone is required to be on-board to deliver accessibility effectively. 

Myth #3: Accessibility is all about burning a hole in your pocket

Well, the response to this myth is quite difficult to answer. There are basically two instances if you consider accessibility in your website. The first instance is if you are building a website from scratch, accessibility should not be expensive to implement. On the contrary, if you are implementing accessibility on a pre-existing site, it may take more people, and as a result, cost more in terms of ‘man-hours.’ Therefore, it is highly essential to think about accessibility at the very beginning of a project so as to reduce labor work and time in the future.

Myth #4: Accessibility is a prolonged process

Most of the websites dodge accessibility because they think accessibility holds nothing but a time disadvantage that they cannot afford to bear. However, considering accessibility at the very beginning of the project can help websites save their time and they don’t have to lose hours to fix their websites. Another way to help yourself with time crunch is to conduct an audit to identify key areas for improvement.

Myth #5: Unnecessary codes may lead to bloating

Websites are often afraid of the harm that the website may incur due to accessibility. There is a misconception that extensive code additions or unnecessary codes may harm the site and can lead to bloating. This is wrong as accessibility is all about developing a website in the right way and it can actually improve the SEO when produced correctly. 

Myth #6: Accessibility is subjective in nature

This is one of the biggest and unfortunate myths. No, accessibility is not subjective and by no means, any website is allowed to create discrimination against anyone with a disability. There are more than 650 million disabled people around the world and denying each of those people access to your website could be holding you back. Further, if you are a public sector organization, you are bound to follow the guidelines regulated by the new Public Sector Bodies (Websites and Mobile Applications) (No. 2) Accessibility Regulations 2018. And if you’re anyone else, you need to adhere to the Equality Act 2010.

Convincing Reasons to Implement Accessibility

Apparently, the web has become an important part of our lives in such a short span of time. Accessing the web can help people to participate in a more active manner, thereby improving the life experience for all. Besides this, there is also the fact that the web offers one of the easiest ways to communicate and do business with people who suffer from a disability. However, the advantages of web accessibility aren’t limited to their immediate impact on people with disabilities, and some of them can even surprise you. 

Following are the many business and technical benefits that will help the website when you adopt web accessibility.

1. Better User Experience

User experience is more important than anything to ensure the success of the website. The concept of web accessibility is not limited to the successful access of the website, but it also means that the website offers a good user experience to the users. Accessible web design leads to better user experience regardless of the user's physical impairments. Therefore, approaching the website with accessibility in mind ensures that you are offering a good user experience across the board and are not causing friction for a portion of your audience.

2. Avoid discrimination and legal complaints

Apart from making sure that the website provides a good user experience to all users, make sure that the website is accessible to ensure that the site stays within legal requirements. The American Disabilities Act (ADA) was passed in 1990 with a view to protecting people living with disabilities from discrimination. The law is applicable to public and private spaces, building codes, transportation, telecommunication, government, and employment. Not to mention, the U.S. Department of Justice has concluded that the lack of accessibility for websites may be a violation of the ADA.

3. Wider Audience

Improving your website’s accessibility is the best thing to invest in. In other words, web accessibility represents an opportunity for businesses to design a website that’s accessible to everyone on the planet. As a matter of fact, the implementation of accessible web design can minimize the rate at which users abandon a site and can further increase the revenue. Moreover, web accessibility can help the organizations to reach more and more customers, increase customer satisfaction, and eventually gain a competitive edge over those organizations that don’t include accessibility features.

4. Improves SEO

Accessible sites and search engines go hand-in-hand. There are certain SEO best practices that can make the website even more accessible. For example, creating easy navigation, adding image alt tags, providing captions and/or transcripts for video, offers better functionality and usability that can easily be crawled by search engines, and offers a better user experience overall. In addition, web accessibility can help your site be more relevant, authoritative, and competitive in the SERPs (search engine results pages).

5. Increases usability

Usability is closely related to web accessibility. The objective of web accessibility is to make products, services, and environments more usable by people who suffer from a disability. Accessibility is often considered as an overlapping concept of accessibility which aims to improve a product or service’s ease of use and user experience. Subsequently, making your website navigable with a keyboard also benefits your broader user base. To be clear, fulfilling this requirement allows all users to easily locate the content they need.

Roadmap to Web Accessibility

After an organization makes a commitment to make it’s website accessible, it is important to follow a roadmap for the implementation of accessibility. Fortunately, web accessibility is not difficult to implement. We have put together a list of steps that will help your website to implement accessibility with ease.

Initiate

First things first, the organization must align accessibility with the existing organizational approaches and communicate clear and measurable objectives with a view to engage stakeholders to support the plan. Further, discover and learn the current state of accessibility in your organization to discuss with the management. Set objectives in response to the problems identified with accessibility and organizational goals. Also, develop measurable objectives to address and fill the accessibility gaps within the organization’s web content, processes, and policies. It is often observed that lack of awareness is a frequent reason for lack of accessibility adoption. In other words, there are many people that may know little or nothing about accessibility and some may not appreciate that their role has an impact on website accessibility. Therefore, a general introduction to accessibility is required to create awareness and building enthusiasm for the task. Key stakeholder and management support will help with prioritization clashes, access to resources, and communication activities. Make sure to use the business case to help secure support from these groups.

Plan

Planning is the beginning of the implementation of the idea that was initially put in writing. It is highly essential to carefully plan the web accessibility policy to capture the goals and targets. A policy may be a compendium of roles and responsibilities, content preparation processes, quality assurance, infrastructure, and reporting. Budgeting and planning go hand-in-hand and it is equally important to create a budget for implementing accessibility. As a matter of fact, accessible sites don’t necessarily cost more money or time than inaccessible sites. However, there does exist a difference in cost. That is to say, accessible sites require money to train the team or build alternative materials like transcripts or translations. Therefore, it is a wise move to consider all potential costs from the beginning and factor them into the production budget. In case you have a very small budget, then consider the least expensive options that will allow the widest possible audience to access your site. 

Implement

Create accessibility implementation throughout the process to minimize overhead and improve the overall quality of the final outcome. Organizations need to develop the accessibility skills of everyone involved in the implementation process, including designers, developers, content creators, and managers. It is highly essential to integrate the goals from your accessibility policy within other organizational procedures and policies. This not only helps to spread the responsibility but also ensures that accessibility is considered as an integral part of everyday activities. Convey the assignments to the team members and ensure that the later knows what is expected of them. Also, make sure that everyone has the resources to aid them with their respective tasks. Organizations can prioritize the accessibility objectives so that you can achieve them more effectively. Examples of prioritization include:

  • Begin with the issues that can be fixed easily to help build motivation in the team.
  • Prioritize the development of accessible templates and components to support the creation of accessible content.
  • Prioritize visual design to synchronize with an on-going re-branding activity within the organization.
  • Prioritize recruitment or procurement policies to support anticipated hiring and acquisitions.
  • De-prioritize issues that are related to tools or systems, such as a content management system (CMS). The reason being,  they are expected to be changed soon anyway.

Sustain

Regular reviews of content, organizational processes, and resources will help in identifying the issues, thereby ensuring that accessibility remains a priority. It is important to coordinate closely with website owners to identify if there is room for improvement. This may include daily content publishing and maintenance activities, as well as broader redesign and development efforts. Since the content of the website is dynamic, make sure that regular accessibility reviews are performed. Accessibility checks can be included in the publishing process in order to reduce the risk of issues occurring. Besides this, consider the technologies that your organization aims to support and ensure to track functionality that changes each version. This may include the baseline browsers and assistive technologies you support and also the authoring tools such as the content management system (CMS). The improvements related to accessibility should be communicated on the website in the Accessibility Statement. Lastly, make your website user-friendly so that the user doesn’t find it difficult to submit the feedback on accessibility which can be used by the organization when considering future improvements.

Evaluating Web Accessibility 

It is always a good practice to implement web accessibility, however, it is equally important to evaluate accessibility to ensure that the websites and applications meet accessibility requirements. The process of evaluating accessibility should be early and throughout the development process so that it is easier to address them. The process of evaluation can be done using several accessibility tools. You can further use the filters to narrow down the list to the types of tools you are interested in.

Page Titles

Page titles help users to know where they are and help them move between pages open in the browser. The very first thing a user sees when s/he moves to a different web page is the page title.

What to check for:

  • Examine if there exists a title that adequately and briefly describes the content of the page.
  • Examine that the title is distinct from other pages on the website.

Image text alternatives ("alt text")

Text alternatives ("alt text") are used to convey the purpose of an image. It may include pictures, illustrations, charts, etc. Generally, text alternatives are used by people who do not see the image. For instance, people with visual disabilities can hear the alt text readout; and people who have turned off images to speed download can also see the alt text.

What to check for:

  • Every image has alt with an appropriate alternative text.

Headings

Web pages contain visual headings that divide the information into different sections. Generally, the heading text is bigger and bold. To make this work for everyone, the headings are required to be marked up.

What to check for:

  • The page consists of a heading and there should be at least one heading on every page.
  • All content that looks like a heading is marked up as a heading.

Contrast ratio ("color contrast")

  • Contrast ratio is beneficial for people who cannot read the text if there is not sufficient contrast between the text and background. For instance, light grey text on a light background.
  • High contrast (dark text on a light background or bright text on dark background) is required by older people with visual impairments who lose contrast sensitivity due to aging.
  • On the contrary, for some people with reading disabilities such as dyslexia — bright colors are not readable. Hence, they require low luminance.

What to check for:

  • Web pages should also have a minimum contrast ratio of at least 4.5:1 for normal-size text.

Resize Text

Some people need the enlarged text in order to read it. Also, some need to change other aspects of text display such as font, space between lines, and more.

What to check for:

  • All web content gets larger.
  • The text doesn't disappear.
  • Text, images, and other web content do not overlap.
  • All buttons, form fields, and other controls are visible as well as usable.

Moving, Flashing, or Blinking Content

Moving, flashing, or blinking content consists of carousels, ads, videos, auto-updating stock tickers, scrolling news feeds, and more. People with attention deficit disorder or visual processing disorders require the power to control the moving content.

What to check for:

  • Examine if there is any moving, blinking, or scrolling information that starts automatically and lasts more than five seconds.
  • Examine if there is any auto-updated information.
  • Ensure that no content flashes or blinks more than three times in a second.

Multimedia (video, audio) alternatives

People who suffer from some kind of hearing impairment or are deaf may not be able to access the information in podcasts or other audio unless it is provided in an alternative format. For example- captions and text transcripts.

What to check for:

  • Transcripts are easily found near the audio/video itself.
  • Check if there are captions in the specific language.
  • Visual information is provided to people who cannot see the video.

Keyboard access and visual focus

Most people feel difficulty or simply cannot use a mouse and therefore they rely on the keyboard to interact with the web. Such people who are blind or have mobility impairments rely on the keyboard commands such as voice input.

What to check for:

  • Examine that you can tab to all the elements, including links, form fields, buttons, etc.
  • Examine that you can tab away from all elements that you can tap into.
  • Examine that the tab order follows the logical reading order
  • Examine that the focus is clearly visible as you tab through the elements.
  • Examine that you can do everything with the keyboard and you don't need the mouse to activate actions or any other functionality.
  • Examine that after you tab into a drop-down list, you can use the arrow keys to move through all the options without triggering an action.
  • Examine that when images are links, they have clear visual focus and can be activated using the keyboard.
Conclusion

From the article above, you should have acquired a helpful high-level overview of accessibility, incorporating why it is important, and how you can get yourself fit into the workflow. Subsequently, it is highly recommended to have web accessibility at the back of your mind when building a website to ensure that everybody has the access to your website. Recently, web accessibility has become more important as the web begins to grow, and more and more people use it in their everyday lives. Therefore, making your website accessible to everyone will not only open the door to a wider range of users but also go towards making the web accessible for everyone.

Looking for a way to start your first-ever journey to web accessibility, ping us at [email protected] and our industry experts will assist you.
 

blog banner blog image Web Accessibility Accessibility Blog Type Articles Is it a good read ? On

Promet Source: Always be Optimizing for SEO

6 days 10 hours ago
In the current environment, search engines are an essential audience.  While it’s widely understood that attracting the attention of the major search engines, is key to a website’s overall effectiveness, too often, Search Engine Optimization is viewed as a task that can be checked off of a list once completed. SEO needs to be viewed as an ongoing activity, with a consistent monitoring of metrics, along with a focus on learning and adjustments to strategy based on the intelligence hidden in the data.  

Sooper Drupal Themes: Updates for DXPR Theme, DXPR Layout Builder, and Lightning DXPR

6 days 13 hours ago

Today we're presenting the first set of minor updates across the new DXPR (Formerly Sooperthemes/Glazed) branded products. 6 weeks ago we presented the 1.0.0 version of DXPR Builder, DXPR Theme, and our Lightning DXPR Drupal distribution.

What's New?

DXPR Theme
 

  • We updated our Free Drupal Theme to let you choose between a traditional 3-line hamburger menu icon and a 2-line menu icon. You can see it in use on DXPR.com right now! Do you like this new option? Let us know in the comments, we may choose to add more options to customize the menu icon.
  • We pushed several front-end performance enhancements that will be especially noticeable if your digital experience platform is taking advantage of HTTP/2. Want to know more about the front-end performance of our products? Feel free to run your favorite tests on our website. Last we checked all the pages in our main menu score in between 95 and 100 on Google PageSpeed. 
  • Drupal 9 compatibility

DXPR Builder Theme Changelog

DXPR Builder

  • For the first time ever we're updating DXPR Builder via our very own composer package server
  • We added an option "Mirror" to our row element. There is a design trend in creating story-like layouts with a rhythm of alternating text+image, image+text rows. However on the mobile design the order of content remains as text+image, text+image. With our new mirror option you can reverse the order the row's columns only on the desktop design. An example of this new feature is our Drupal Layout Builder product page. 
  • We've updated Font Awesome 5 Pro icons and included the duotone icon set, which is now available on all elements that support the Icon setting.
  • We modified how our "Full height" option on the section element works. This option will still make your section as tall as the viewer's screen, but we switched to making this minimum-height. This is to prevent text from invisibly flowing off the screen when the sections' content simply won't fit on a small screen.
  • Drupal 9 compatibility

DXPR Builder Changelog

DXPR Builder Enterprise

  • Added a "local video" drag and drop element for uploading videos to your media library and streaming them directy from your Drupal platform.
  • Fixed an issue with exporting "user profile" configuration entities.
  • Drupal 9 compatibility

DXPR Builder Enterprise Changelog

Lightning DXPR

  • Updated to Acquia Lightning 5.x.
  • Updated all depedencies to Drupal 9 compatible versions.

    Lightning DXPR Changelog

      How to update?

      BADCamp News: Get Ready for Virtual BADCamp: Registration and Session Submissions now open!

      6 days 13 hours ago
      Get Ready for Virtual BADCamp: Registration and Session Submissions now open! Wed, 08/05/2020 - 12:00 vclewis Wed, 08/05/2020 - 09:53 We can’t wait to see you all online! Join us Oct 14-17, 2020 for the first-ever virtual BADCamp. Don’t wait: register now!  With no travel arrangements to make, setting yourself up for an epic time at BADCamp is as easy as letting us know you’re attending. Consider all the other ways to get involved! Drupal Planet

      Tag1 Consulting: Modernizing Drupal’s UI and Improving Accessibility with The Olivero & Claro Themes - TTT #021

      6 days 16 hours ago

      Last month at DrupalCon Global, Dries Buytaert, the founder of Drupal, announced that a major focus of Drupal 9 will be improving the user interface and user experience of the platform - for all personas. Two of the five D9 Strategic Initiatives have been dedicated to making this happen. The “New Front-End Theme Initiative” or user interface (UI) for Drupal, also known as the Olivero Theme, covers the end-user experience. The “Admin UI & JavaScript Modernisation Initiative”, also known as the Claro Admin theme covers site builders, managers, and administrators. A critical component of improving the experience for all users is accessibility. In this episode of Tag1TeamTalks, Michael Meyers (Managing Director, Tag1) talks with Kat Shaw (Senior Front-end Developer, Lullabot), a CPACC-certified accessibility expert working on both initiatives. Join us for a tour and overview of both themes, get unique insight into the development process and inner workings of strategic initiatives, learn about the accessibility improvements, and find out how all these benefit you and your Drupal sites (hint: your sites become a lot more accessible, for free, with little effort on your part). Both initiatives carry over from D8 and have been under development for some time. In Drupal...

      Read more michaelemeyers Wed, 08/05/2020 - 07:33

      Mobomo: Drupal vs WordPress: Which is Better for Your Business?

      1 week ago

      Like many developers, some of our first websites were built on the backbones of WordPress. It’s the hyper-popular king of content management systems. It has name recognition, an overflowing user base, and plenty of third-party integrations that help cut your development time. But, over the years, we’ve migrated almost exclusively to Drupal. So why did we switch? What is it about Drupal that leaves developers drooling? And why would anyone pick Drupal — which has around 1.3 million users — over WordPress —which has over 400 million users? Today, we’re going to compare David to Goliath. Why is Drupal, the third most active CMS behind WordPress and Joomla, a good choice for businesses looking to build a refreshing, impactful, and feature-rich website?

      UNDERSTANDING THE CORE DIFFERENCES BETWEEN DRUPAL AND WORDPRESS

      By far, the most significant difference between WordPress and Drupal is the overall development need. WordPress is simple. There are hundreds of thousands of third-party plugins that you can leverage to build an entire website with virtually no coding or developing knowledge. And, that’s the single biggest reason that WordPress is so massive. Anyone can build a WordPress site. It’s easy. Drupal requires development. If you want to build a Drupal website, you’re going to have to hire some developers. So, naturally, Drupal has fewer overall users. But, it’s essential to make that distinction. Drupal is built for businesses, public entities, and enterprises. WordPress is built for your everyday website. It’s important to keep this main difference in mind. It’s this difference that resonates throughout these core pillars. And, it’s this core difference that creates pros and cons for each platform.

      DRUPAL VS. WORDPRESS: SECURITY, FLEXIBILITY, AND SCALABILITY

      We consider security, flexibility, and scalability to be the three primary pillars of a CMS. An amazing designer can make a fantastic template or theme regardless of the CMS. And ease-of-use is relative to your plugins/modules, familiarity with the platform, and overall development capabilities. So those are both highly subjective. Security, flexibility, and scalability aren’t subjective; they are what they are.

      SECURITY

      WordPress has a security problem. Alone, WordPress accounts for 90% of all hacked websites that use a CMS. There’s a tradeoff that comes with leveraging third-party plugins to build websites. You increase your threat landscape. WPScan Vulnerability Database shows 21,675 vulnerabilities in WordPress’s core and with third-party plugins. This security vulnerability issue has been an ongoing headache for WordPress from the start. If we do a play-by-play, year-over-year of WordPress’s history, we see an ongoing and consistent security issue:

      • 2013: 70% of the top 40,000 most popular WordPress websites were vulnerable to hackers
      • 2014: SoakSoak compromises +100,000 websites, a massive DDOS attack hits 160,000 websites, and All In One SEO Pack puts +19 million sites at risk.
      • 2015: A core vulnerability puts millions of websites at risk, Akismet opens millions of websites to hackers, and YoastSEO puts over 14 million websites in hackers’ crosshairs.
      • 2016: At this point, millions of hacks are happening every week across plugins. Check out this WordFence weekly update during this period.
      • 2017: The hacks continue. The average small business website using WordPress is attacked 44 times a day at this point, and WordPress websites are 2x more likely to be hacked than other CMS.

      The list goes on. Year-over-year, more vulnerabilities happen across WordPress. And this is an important point. WordPress has subpar security by design. It’s the tradeoff they made to build an ecosystem that doesn’t require development. We aren’t saying that the core of WordPress is inherently security-stripped. It’s not. But, given the scale, scope, and third-party-fanatic nature of the platform, it’s weak on security by nature. Drupal, on the other hand, is the opposite. Websites require development time, each website is customized to the user, and building a website takes time and patience. The tradeoff is better security. Drupal has built-in enterprise-scale security, and you don’t rely on a hotchpotch of third-party applications to build your website’s functionality. There’s a reason that NASA, the White House, and other government entities use (or used) Drupal. It has better security. We want to take a second to make the distinction. WordPress has a secure core. We would argue that Drupal has a more secure core. But the difference isn’t massive. WordPress’s security vulnerabilities are a product of its reliance on third-party applications to make a functional website.

      FLEXIBILITY

      WordPress is more flexible than Drupal to some users. And Drupal is more flexible than WordPress to some users. That may sound complicated. But it comes down to your development capabilities. Drupal has more features than WordPress. Its core is filled with rich taxonomies, content blocks, and unique blocks than WordPress. But, if you aren’t experienced, you probably won’t find and/or use many of these functionalities. On the surface, WordPress has more accessible features. At the core, Drupal is the single most feature-rich CMS on the planet. So, for businesses (especially public entities and larger enterprises), Drupal has a more robust architecture to tackle large-scale projects that have hyper-specific needs. For small businesses and personal website owners, WordPress is easier to use and requires far less development experience to tap into its functionalities, features, and flexibility.

      SCALABILITY

      Drupal has better scalability. This one isn’t a competition. Again, this comes down to the dev-heavy nature of the platform. To scale WordPress websites, you add more plugins. To scale Drupal websites, you develop more. There’s a key practical difference here. Drupal modules, taxonomies, and content blocks all exist in the same ecosystem. Each WordPress plugin is its own micro-ecosystem. So, with WordPress, most users are stringing together a ton of third-party ecosystems in an attempt to create one overarching website. Also, Drupal is built for enterprise-scale projects. So there’s backend support and a large landscape of community support around large-scale projects. WordPress is a catch-all CMS that has a little of everything. If WordPress is a Swiss army knife, Drupal is a custom, hand-forged bread knife — explicitly designed to help you scale, slice, and butter larger projects.

      ARE YOU READY TO DEVELOP YOUR PERFECT DRUPAL WEBSITE?

      At Mobomo, we specialize in Drupal development projects. Our agile-based team of top-level design, development, and support talent can help you launch and scale your website to fit your unique needs. From NASA to Great Minds, we help private and public entities build dreams and execute visions.

      Contact us to learn more.

      The post Drupal vs WordPress: Which is Better for Your Business? appeared first on .

      Checked
      57 minutes 35 seconds ago
      Drupal.org - aggregated feeds in category Planet Drupal
      Subscribe to Drupal Planet feed