Subscribe to Planet Drupal feed
Drupal.org - aggregated feeds in category Planet Drupal
Updated: 4 hours 48 min ago

Blair Wadman: How to customise content in partial Twig templates

Wed, 2018/12/12 - 10:11am

Using partial Twig templates is a great way to organise your frontend code because you can reuse code fragments in multiple templates. But what happens if you want to use the same partial template in multiple places and customise its content slightly?

You can do this by passing variables to the included partial template using the with keyword.

Categories:

Kanopi Studios: Kanopi Studios is a Top Provider on Clutch

Tue, 2018/12/11 - 10:30pm

 

It’s not easy to find a development partner you can trust. Particularly if you’ve never been immersed in the world of web development, it may take you some time to learn the language. That can make it even more difficult to know whether your partner is really staying on track with what you want to accomplish.

Luckily, knowing what to look for in a business partner can save you from all of the potential troubles later on. Ratings and reviews sites like Clutch can help you get there. This platform focuses on collecting and verifying detailed client feedback, and then using a proprietary research algorithm to rank thousands of firms across their platform. Ultimately, Clutch is a resource for business buyers to find the top-ranked service providers that match their business needs.

Luckily for us, users on Clutch will also find Kanopi Studios at the top of the list to do just that. Kanopi has been working with Clutch for a few months to collect and utilize client feedback to find out what we should focus on in the coming year. Through the process, we’ve coincidentally been named among the firm’s top digital design agencies in San Francisco.

Here are some of the leading client reviews that led us to this recognition:

“They were fantastic overall. We had great success communicating to their team via video conferencing, and they were able to answer every question we had. They also worked quickly and were very efficient with their time, so we got a great value overall.”

“Kanopi Studios’ staff members are their most impressive assets — extremely intelligent, experienced, and personable. Building a website is never easy, but working with people you both respect and like makes a huge difference.”

“Kanopi Studios successfully migrated our Drupal platform while preserving all the content that we’ve built up over the years. They worked hard to achieve a responsive design that works well on both mobile and large desktop displays.”

Not only have these kind words earned us recognition on Clutch, but we’ve also gained the attention of the how-to focused platform, The Manifest (where we are listed among top Drupal developers in San Francisco), and the portfolio-focused site, Visual Objects (where we are gaining ground among top web design agencies site-wide).

Thank you, as always, to our amazing clients for the reviews and the support.

The post Kanopi Studios is a Top Provider on Clutch appeared first on Kanopi Studios.

Categories:

Acro Media: Drupal 7 Commerce Performance Tuning

Tue, 2018/12/11 - 8:30pm

When it comes to ecommerce, a fast site can make a big difference in overall sales. I recently went through an exercise to tune a Drupal 7 Commerce site for high traffic on a Black Friday sales promotion. In previous years, the site would die in the beginning of the promotion, which really put a damper on the sale! I really enjoyed this exercise, finding all the issues in Commerce and Drupal that caused the site to perform sub-optimally.

FYI, We also have a Drupal 8 Commerce Performance Tuning guide here.

Scenario

In our baseline, for this specific site the response time was 25 seconds and we were able to handle only about 1000 orders an hour. With a very heavy percentage of 500s, timeouts and general unresponsiveness. CPU and memory utilization on web and database servers was very high.

Fast-forward to the end of all the tuning and we were able to handle 12K-15K orders an hour! The load generator couldn’t generate any more load, or the internet bandwidth on the load generators would get saturated, or something external to the Drupal environment became the limiter. At this point, we stopped trying to tune things. Horizontal capacity by adding additional webheads was linear. If we had added more webheads, they could handle the traffic. The database server wasn’t deadlocking. Its CPU and memory was very stable. CPU on the web servers would peak out at ~80% utilization, then more capacity would get added by spinning up a new server. The entire time, response time hovered around 500-600ms.

Enough about the scenario. Let’s dive into things.

Getting Started

The first step in tuning a site for a high volume of users and orders is to build a script that will create synthetic users and populate and submit the form(s) to add item(s) to the cart, register new users, input the shipping address and any other payment details. There’s a couple options to do this. JMeter is very popular. I’ve used it in the past with pretty decent success. In my most recent scenario, I used locust.io because it was recommended as a good tool. I hadn’t used it before and gave it a try. It worked well. And there are other load testing tools available too.

OK, now you are generating load on the site. Now start tuning the site. I used New Relic's APM monitoring to flag transactions and PHP methods that were red flags. Transactions that take a long time or happen with great frequency are all good candidates for red flags. If you don’t have access to New Relic, another option is Blackfire. Regardless what you use for identifying slow transactions, use something.

Make sure that there’s nothing crazy going on. In my case, there was a really bad performing query that was called in the theme’s template.php and it was getting loaded on every single page call. Even when it wasn’t needed. Tuning that query gave use an instant speed-up in performance.

After that, we starting digging into things. There are several core and contrib patches I’ll mention and explain why and when you should consider applying them on your site.

In your specific commerce site, things might be different. You might have different payment gateways or external integration points. But the process of identifying pain points it the same. Run a 30-60 minute load test and find long running PHP functions. Then fix them so it doesn’t take as long.

As a first step, install the Memcache (or Redis) module and set it up for locking. Without that one step, you’ll almost immediately run into deadlocks on the DB for the semaphore table. This is a critical first step. From my experience, deadlocks are the number one issue when running a site under load. And deadlocks on the semaphore table is probably the most common scenario. Do yourself a favor. Install Memcache and avoid the problem entirely.

Then see if you can disable form caching on checkout and user registration. This helped save a TON of traffic against the database for forms that really don’t need to be cached. More about that later in specific findings.

One last thing before diving into some findings...

SHOW ENGINE INNODB STATUS

...will become your favorite friend. Use it to find deadlocks on your MySQL server.

Specific Findings The following section describes specific problems and links to issues and patches related to the problems.
  • Do not attempt field storage write when field content did not change
    Commerce and Rules run and reprocess an order a lot. And then blindly save the results. If nothing has changed, why re-save everything again? So don’t. Apply this patch and see fewer deadlocks on order saves.
  • field_sql_storage_field_storage_load does use an unnecessary sort in the DB leading to a filesort
    Many times it makes sense to use your database to process the query. Until it doesn’t make sense. This is a case it leads to a filesort in MySQL (which you can discover using EXPLAIN in MySQL) and locking of tables and deadlocks. It is not that hard to do the sort in PHP. So do it.
  • Do not make entries in "cache_form" when viewing forms that use #ajax['callback'] (Drupal 7 port)
    This is a huge win, if you can pull it off. For transient form processing like login and checkout, disabling form cache is a huge relief to the DB. You might need to put the entire cart checkout onto a single page. No cart wizard. But the gains are pretty amazing.
  • If you are using captcha or anything with ajax on it on the login page, then you’ll need to make sure you are running the latest versions of Captcha and Recaptcha. See issues #2449209 and #2219993. Also, side note: if using the timing feature of recaptcha, the page this form falls on will not be cacheable and tends to bust page cache for important pages (like homepages that have a newsletter sign up form).
  • form_get_cache called when no_cache enabled
    You’ve done all that work to cut down on what is stored in cache. Great. But Drupal still wants to retrieve from cache. Let’s fix that. Cut down more DB calls.
  • commerce_payment_pane_checkout_form uses form_state values instead of input
    If your webshop is like most webshops, it is there to generate revenue. If you disable form caching on checkout, without this patch the values in your payment (including the ones for receiving payment) aren’t captured. Oops. Let’s fix that too.
  • Variable set stampede for js and css during asset building
    If you are using any auto scaling system and building out new servers when the site is under heavy load, you might already be using Advagg. But if you aren’t and are still using Drupal core’s asset system, spinning up a new system or two will cause some issues. Deadlocks galore when generating the CSS and JS aggregates. So either install Advagg or this patch.
  • Reduce database load by adding order_number during load
    Commerce and Rules really like to reprocess orders. An easy win is to reduce the number of one-off resaves and assign the order number after the first load.
  • Never use aggregation in maintenance mode
    While the site is under heavy load, the database sometimes becomes unreachable. Drupal treats this as maintenance mode. And tries to aggregate the JS/CSS and talk to the database. But the database isn’t reachable. It is a little ridiculous to aggregate JS/CSS on the maintenance page. And even more to try to talk to the database. So cut out that nonsense.
  • drupal_goto short circuits and doesn't set things to cache
    If you have any PHP classes you are using during the checkout, Drupal’s classloader auto loads them into memory. It then keeps track of where the files exist on the disk and this makes the next load of those classes just that much faster. Well, drupal_goto kills all this caching. And drupal_goto gets called when navigating through checkout.
Recap

Wow! That was a long list of performance enhancements. Here’s a quick recap though. Identify critical flow of your application. Generate load on that flow. Use a profiler to find pain points in that process. Then start picking things off, looking on drupal.org for existing issues, filing bugs, applying patches. Many of the identified issues discussed here will apply to your site. Others won’t apply and you’ll have different issues.

Surprisingly, or maybe not surprisingly, the biggest wins in our discovery process were the low hanging fruit, not the complex changes. That query in the template.php was killing the site. After that, switching to use Memcache for the semaphore table and eliminating form cache for orders also cut down on a lot of chatter with the database.

I hope you too can tune that Drupal 7 Commerce site to be able to handle thousands of orders an hour. The potential exists in the platform, it is just a matter of giving performance bottlenecks a little attention and fine tuning for your particular use case. Of course, if you need a little help we'd be happy to assist. A little bit of time spent can have you reaping the rewards from then on.

Categories:

Acro Media: Drupal 8 Commerce Performance Tuning

Tue, 2018/12/11 - 8:30pm

Here are some performance tuning tips and instructions for setting up a very performant Drupal 8 Commerce site using Varnish, Redis, Nginx and MySQL. I’ve got this setup running nicely for at least 13,000 concurrent users and it should scale well past that.

FYI, We also have a Drupal 7 Commerce Performance Tuning guide here.

Varnish Config

You’ll need some specific config for Drupal as well as some extra config to work nicely with BigPipe caching. These are standard for Varnish and Drupal and not specific to Commerce.

Drupal

You’ll want to setup the Purge and Varnish Purge modules to handle tag based cache invalidation, nothing here is unique to Commerce, so you can follow the standard instructions. You will, however, want to make sure your pages actually are cached, as often modules or small misconfigurations can make a page not cacheable. To work nicely with Varnish, you want the entire page to be cacheable so your webserver doesn’t even get hit. An underused module that I find very helpful is Renderviz, which will show you a 3D breakdown of what cache tags are attached to what parts and can help you identify problem parts. I run

renderviz(‘max-age’, ‘0’) to show me anything that can’t be cached. Usually the parts you find can be corrected and made cacheable.

For example: In a recent set of performance testing I was doing, I found a newsletter signup that appeared on the bottom of every page had an overly aggressive honeypot setting, which rendered the page uncacheable. Changing the settings to only apply to necessary forms, as well as correcting a language selector, turned tons of uncached pages into cacheable pages. Now these pages return <10ms and put zero load on my web servers or database.

Web Servers PHP

Use the most modern version of PHP you can, preferably the latest stable. Never ever ever use PHP 5 which is terrible, terrible, terrible. Otherwise, make sure you have sufficient memory and allowed threads, and that will cover most of your PHP tuning. This is almost certainly the most resource heavy part of your Drupal stack, but it is also easy to scan horizontally, pretty much indefinitely. Also, the more you can make use of Varnish, the less this will get used.

Nginx/Apache

Most of this is just making sure you can handle the number of connections. You may need to up the file limit...

ulimit -n

...of your web user to allow for more than 1024 connections per nginx instance.

Database

A Commerce site is usually more write-heavy than your standard site, as your users create lots of "content" (aka carts and orders). This will usually change your MySQL config a bit, although the majority of your queries will still be reads. A pretty simple way to tune your site is to run...

mysqltuner

...against it after getting some real traffic data for at least a couple days, or simulating high traffic. It’s recommendations will get you a pretty good setup.

There is one other VERY important thing you need to do, you need to change your transaction isolation level from READ-REPEATABLE to READ-COMMITTED. READ-REPEATABLE is much too aggressive at table locking to work with most Drupal sites, especially anything write heavy. You will suffer from constant deadlocks even at fairly low traffic levels without this. Frankly, I think this should be a flag in the status page, but my patch hasn’t gotten any traction.

Cache Server

Nothing special here, but you are going to want use a separate caching option. It could be Memcache, Redis or even just a separate MySQL database. Redis is nice and fast, but the biggest gain is just splitting your cache away from the rest of your db so you can scale them easier.

Patches

There are a few specific patches that will be a great help to your performance.

_list cache tag invalidation

See: https://www.drupal.org/project/drupal/issues/2966607

Every entity type has an entity_type_list cache tag, which gets invalidated any time an entity of that type is added or changed and that those lists will need to get rebuild. This happens a LOT, but is a relatively simple query.

update cachetags set invalidation=invalidation+1 where tag=’my_entity_list’

This is an update, which is a blocking query, nothing else can edit this row while this query is running, which wouldn’t be so bad except...

This query often gets run as a part of larger tasks, in our case, such as when placing an order. A big task like this is run in a transaction, which basically means we save up all the queries and run them at once so they can be rolled back if something goes wrong. This means though, that this row stays locked for the whole duration of the transaction, not just the short time it takes this little query to run. If this invalidation happens near the start of the transaction, it can take a query that would talk 0.002 seconds and make it take 0.500 seconds, for example. Now, if we have more than 2 of these happening a second, we start to back up and build a queue of these queries, which just keeps getting longer and longer until we just start returning timeouts. Since this query is part of the bigger order transaction, it stops the whole order from being processed and can bring your checkout flow to a halt. 

Thankfully, the above listed patch allows these cache invalidations to be deferred so as to not block large transactions. I think the update query for invalidating cache tags is still a bottleneck as you could eventually reach it without these long transactions, but at this point that problem is more hypothetical than something you will practically encounter.

Add index to profiles

See: https://www.drupal.org/project/profile/issues/3017788

As you start getting more and more customers and orders, you will get more profiles. Loading them, especially for anonymous users, will really start to slow down and become a bottleneck. The listed patch simply adds an index to prevent that. Please note, this is a patch for the Profile module, not Commerce itself.

Make language switcher block cacheable

See: https://www.drupal.org/project/drupal/issues/2232375

This issue is unfortunately on hold pending some large core changes, but once it does land, this will allow the language switcher block to be used without worry of it blocking full page caching.

Conclusion

You should be able to scale well above 10,000 concurrent users with these tips. If you encounter any other bottlenecks or bugs, I’d love to hear about them. If you want help with some performance improvements from Acro Media and yours truly, feel free to contact us.

Categories:

php[architect]: Better Practice – December 2018

Tue, 2018/12/11 - 6:10pm

Practice and more practice are the keys to adopting modern software engineering practices. It doesn’t matter if you’re using WordPress or Drupal to manage website content, trying to learn unit testing, get hired, or looking for better ways to manage date and time data—there’s always an opportunity to learn how to do it better. This issue rounds up articles on each of these topics to help you deepen your problem-solving skills.

The post Better Practice – December 2018 appeared first on php[architect].

Categories:

Agiledrop.com Blog: How to Create a Node in Drupal 8 using REST

Tue, 2018/12/11 - 1:38pm

In this post, I go through the steps involved in creating content (nodes) using RESTful web services in order to demonstrate their capabilities.

READ MORE
Categories:

OpenSense Labs: 11 Drupal Distributions You Should Know for Success in 2019

Tue, 2018/12/11 - 11:25am
11 Drupal Distributions You Should Know for Success in 2019 Akshita Tue, 12/11/2018 - 15:55

If you are looking to build your website on Drupal in 2019 but don’t know where to start from, you need to know more about the Distributions. 

Here’s a list of top Drupal 8 distributions you could use in 2019. 


The Basics. What are Drupal Distributions? 

Distributions are full copies of Drupal that include core, in addition to themes, modules, libraries, and installation profiles. For a layman’s understanding distributions are a website (dummy) copy for an industry with an explicit requirement for that niche. 

“A Drupal distribution packages a set of contributed and custom modules together with Drupal core to optimize Drupal for a specific use case or industry”

Accordingly, there are Distributions for Media and Publishing, Government,  E-commerce, Education, Travel among others. 

There are two types of Drupal distributions:

  1. Full-featured distributions: complete solutions for specialized use cases (as discussed above).
  2. Other distributions as the starting points for developers and site builders.
Why Bother Yourself with Distributions?
  1. Out-of-the-box Additional Features: Remember “...Distributions are a package of the core, modules, themes”? Well, this means zero time searching for the Drupal modules and other required features, you don’t need to work extra to set up your website. You get all the required features according to your requirement in your distribution. 
     
  2. Easy set up of the website: Since you don’t need to look for additional features, it saves your time to set up your website. Launching your website now means setting up the distribution and getting a preconfigured site in a single download!
     
  3. Less Maintenance: Downloading a host of modules and features means more maintenance and more security. With distributions, you get the whole website ecosystem into one, maintenance is not an issue since everything will be updated in a single update. 
Drupal Distributions for your Website Drupal Starter Kit
  1. Varbase 

    Varbase is an enhanced Drupal distribution packed with adaptive functionalities and essential modules, that can speed up your development process, and provides you with standardized configurations, making your life easier.

    The essence of Varbase lies within the basic concept of DRY (Don’t Repeat Yourself). It is probably the best starter distribution because it can help relieve you from repeating all the modules, features, configurations that are included in a Drupal project.

  2. Panopoly

     Panopoly is another powerful base distribution. At its roots lies the power of Chaos Tools and Panels magic. Designed to be both a general foundation for site building and a base framework upon which one can build other distributions, Panopoly provides search, widgets, responsiveness at its core. 

  3. Presto! - Drupal 8 Starter Kit

    Claiming to save the development time by up to 20%, Presto! is a Drupal 8 Starter Kit with more than a few tricks up its sleeve!

    With intelligent content editing functionality, configuration defaults, and optional eCommerce integration, Presto is ready to use right out-of-the-box. Other functionalities include - 

    • An Article content type with some pre-configured fields

    • A couple of pre-configured user roles: Administrator & Editor

    • The ability to share nodes on social media

    • Pathauto for automatical URL aliasing

    • A Basic Page content type with a Paragraphs-based body field

    • Some pre-configured Paragraph types:

      1. Textbox

      2. Image

      3. Promo bar

      4. Divider

      5. Carousel

      6. Block (allows the embedding of Drupal block

Media and Publishing
  1. Thunder 

    The distribution for professional publishing, Thunder functionalities are publisher-centric. At its core, it has the Paragraphs module, media entity module, and various SEO features to keep it working. As a free and open-source technology, it is cost-effective, knocks down developmental efforts and isn't time-consuming.
     



    Easy to install, deploy and add new functionality, Thunder is SEO friendly, responsive, Google AMP friendly, and allowing editors to publish their content easily as instant articles on Facebook as well. 

  2. Lightning

    Lightning enables the developers to create a great authoring experience. It delivers a powerful set of tools to your editorial team and site builders right out of the box and is best suited for the media and publishing websites. The distribution provides a lightweight framework, documentation and best practice examples for building working solutions in Drupal.

    Built using the top 4 modules to enhance the editing experience - Workflow, Media, Layout, and Preview - it has taken the advantage of D8 functionalities and is tightly coupled to make up the new standard for enterprise authoring. 

Government
  1. aGov

    aGov is a Drupal distribution built for government websites and was developed for the Australian Government. It incorporates the Digital Transformation Agency's UI Kit, helping you adhere to the Digital Service Standard.


    aGov is ideal for any federal, state or local government agency wanting to move their websites quickly and easily to Drupal whilst retaining full control of their codebase and choice of hosting provider.

    • WCAG 2.0 Level AA compliance, independently audited by Media Access Australia

    • Editor Workflows (Workbench Moderation)

    • Responsive design 

    • Example content - to get you started quickly

    • Common content types: News, Events, Publications, Blogs

    • WYSIWYG editor with media library
       

  2. deGov 

    After aGov, Drupal’s deGov is another Drupal 8 distribution focussing on the needs of (German) governmental organisations. One can build all levels of government websites (federal, regional, local) to publish information. With the base of Acquia Lightning, it extends the valuable functions to meet the use cases for different scenarios.
     


    It provides a service-oriented E-Government portal to close the gap between citizens and your administration with various citizen engagement portals to discuss. 

    Following are the features of deGov distributions:

    • Open311 portals for civic issue tracking

    • Open data portals to publish and create communities around data

    • Intranet/Extranet for government employees

Community
  1. OpenSocial

    OpenSocial is an online community and intranet solution for nonprofits and innovative companies. It is currently employed by customers like the United Nations, Greenpeace and hundreds of smaller organizations to connect with their employees, volunteers and other stakeholders.

    It is an out-of-the-box solution to build online community platforms. Providing with features such as notifications, timeline, events, follow, groups it can help personalise your news feed with the people you want to connect with.

Learning Management System
  1. Opigno LMS

    A full-fledged Learning Management System based on Drupal, Opigno is the quickest way to get started with the e-learning framework.

    It allows to:

    • Manage training paths organized in courses and lessons

    • Assess students with quizzes

    • Award certificates

    • Facilitate interactions with live meetings, forums, and chats

      SCORM (1.2 and 2004 v3) compliant, it integrates the innovative H5P technology, making possible to create rich interactive training contents.

  2. OpenLMS

    OpenLMS is an interactive LMS to make learning a fun and easier process. It provides various kinds of the content type such as written content, video lectures, quiz, calendar, and documents to be used as course material for students/users.

    Modules such as webform are part of its core. It also provides interactive content powered by H5P which can be added to a course.

    Read about the top Drupal e-learning modules.

Headless Architecture
  1. Contenta

    Contenta helps you make the headless transition smooth.  Contenta (and Drupal in the backend) has the capacity to control behind-the-scenes systems for languages like Python, PHP, Java React, Vue and Ember. 

    Powerful and complex, Contenta is API-First.

    It optionally installs all the content types and dummy content necessary to build an application.  

OpenSense Labs has sound experience in building new pillars for organizations. We would love to hear your requirements, drop a mail at hello@opensenselabs.com.

blog banner blog image Blog Type Articles Is it a good read ? On
Categories:

Drupal blog: The ebbs and flows of software organizations

Tue, 2018/12/11 - 12:55am

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

This week I was in New York for a day. At lunch, Sir Martin Sorrell pointed out that Microsoft overtook Apple as the most valuable software company as measured by market capitalization. It's a close call but Microsoft is now worth $805 billion while Apple is worth $800 billion.

What is interesting to me are the radical "ebbs and flows" of each organization.

In the '80s, Apple's market cap was twice that of Microsoft. Microsoft overtook Apple in the the early '90s, and by the late '90s, Microsoft's valuation was a whopping thirty-five times Apple's. With a 35x difference in valuation, no one would have guessed Apple to ever regain the number-one position. However, Apple did the unthinkable and regained its crown in market capitalization. By 2015, Apple was, once again, valued two times more than Microsoft.

And now, eighteen years after Apple took the lead, Microsoft has taken the lead again. Everything old is new again.

As you'd expect, the change in market capitalization corresponds with the evolution and commercial success of their product portfolios. In the '90s, Microsoft took the lead based on the success of the Windows operating system. Apple regained the crown in the 2000s based on the success of the iPhone. Today, Microsoft benefits from the rise of cloud computing, Software-as-a-Service and Open Source, while Apple is trying to navigate the saturation of the smartphone market.

It's unclear if Microsoft will maintain and extend its lead. On one hand, the market trends are certainly in Microsoft's favor. On the other hand, Apple still makes a lot more money than Microsoft. I believe Apple to be slightly undervalued, and Microsoft is to be overvalued. The current valuation difference is not justified.

At the end of the day, what I find to be most interesting is how both organizations have continued to reinvent themselves. This reinvention has happened roughly every ten years. During these periods of reinvention, organizations can fall out of favor for long stretches of time. However, as both organizations prove, it pays off to reinvent yourself, and to be patient product and market builders.

Categories:

Flocon de toile | Freelance Drupal: Provide a custom mode form to entities with Drupal 8

Mon, 2018/12/10 - 11:54pm
Like display modes that allow you to display an entity in multiple ways, Drupal 8 allows you to create multiple form modes that can be used on entities, whether they are users, taxonomy terms, contents or any custom entity. Let's discover here how to use these form modes, from their creation to their use to customize the input of a user's information, for example.
Categories:

Hook 42: Consuming JSON APIs in Drupal 8

Mon, 2018/12/10 - 11:46pm

Nowadays everyone has an API and it's fairly common to want a website you're working on to fetch data from a 3rd party API. That's because pulling 3rd party data into your website can not only enriches your website's content, but doing so can prevent the need to duplicate commonly needed data.

API provided data could include displaying weather information, going through drupal.org projects, looking through census results, or even displaying Magic the Gathering card data. In fact, every WordPress site comes with an active JSON API out of the box.

There really is an API for almost anything. It's no surprise that you'll eventually want to consume some random API while developing a Drupal website. Enough of the sales pitch, let's get started consuming JSON APIs.

Categories:

Zivtech: Upcoming Drupal 8 Trainings in Philadelphia

Mon, 2018/12/10 - 10:22pm

Zivtech is happy to be offering a series of public Drupal 8 trainings at our office in downtown Philadelphia in January 2019. 

Whether you consider yourself a beginner or expert Drupal developer, our training workshops have everything you need to take your Drupal skills to the next level. 

Our experience

The Zivtech team has many years of combined expertise in training and community involvement. We have traveled all over the world conducting training sessions for a diverse range of clients including, the United States Department of Justice, the Government of Canada, CERN, Howard Hughes Medical Institute, Harvard University and more. 

We pride ourselves in educating others about open source, and attendees will leave our trainings with the knowledge to build custom Drupal sites, solve technical issues, make design changes, and perform security updates all on their own. We also offer private, onsite trainings that are tailored to your organization's specific needs. 

Read more
Categories:

Acquia Developer Center Blog: Decoupled Drupal Authentication with JSON Web Tokens

Mon, 2018/12/10 - 5:41pm

Although JSON Web Tokens (JWT) is a younger specification than its more well-established cousin, OAuth 2.0 Bearer Token authentication, JWT has been adopted by quite a few in the Drupal community due to its relative simplicity. In this installment, we explore JSON Web Tokens and how this authentication mechanism can benefit your decoupled Drupal architecture.

Tags: acquia drupal planet
Categories:

Evolving Web: 5 Ways to Improve the Usability of the Drupal Content Editor Experience

Mon, 2018/12/10 - 3:51pm

Over the last few months, I've been involved in a UX study to shed some light on what would make a good content editor experience in Drupal. I helped run a survey asking content editors for their feedback about the Drupal admin UI and got some interesting results. Then, we started looking around for examples of good content editor UX, which led to a comparative usability test of other CMS's, generating some ideas about patterns to follow and avoid.

I have a job where I get to train lots of people how to use Drupal: developers, site builders, and sometimes content editors. So I've gathered a lot of anecdotes of people's first impressions of editing content with Drupal.

As you've probably heard, there is work being done on a brand new Admin UI for Drupal, but this might take a while to build. So what are some things about content editor UX that we might be able to improve on before that?

Autosave

When you ask content editors what we should change about the admin UI, this one always come up. All content authors have anxiety about losing their content. And when we ran our user testing with other CMS’s, autosave clearly reassured and delighted editors. For example, Contentful has a nice autosave message that helps users know that their content is saved.

There is an open issue for adding autosave to Drupal. It would be great to get momentum behind implementing this!

A Content Editor Role

One of the challenges of using Drupal is that there are so many options. For site builders and developers, a UI that provides a lot of options is great because you can see that the platform is flexible. For content editors, seeing a lot of options that don’t relate to content editing is intimidating. From our usability testing, we can see that content editors love using a UI that is more streamlined, less complicated, and clearly designed for them.

Creating a content editor role as part of the Standard install profile might be a nice way to encourage the practice of limiting what content editors have access to by providing a set of default permissions to start with.

What should the content editor role look like? Of course, content editors need to be able to create and edit content. And they will need access to the content overview page. Should they have access to the Administer Content permission? What about working with files, taxonomy terms, revisions, and menus? Based on our content editor survey, it seems like giving all these permissions would align the role with a content editor’s typical tasks. But I think a more limited set of permissions would work as well, as long as it's clear that the permissions are a starting point that can be expanded on by an administrator.

Show Me the Content!

On a standard Drupal install, when you log into Drupal you're redirected to your profile page. I think for most content editors, this doesn’t make sense. Your home base is probably the content overview page. Maybe we should redirect content editors to the content overview page when they log in.

Move the Save Button

Currently, the Save button, along with the preview buttons and the interface to publish and moderate content is at the bottom of the node edit page. From our usability testing, it seems like content editors expect the Save button to be in the top right-hand corner. For long-form content, this would make those links more readily available and I think this would be a usability improvement for new content editors.

The key to success with all the save, preview, and content moderation options seems to be to put them all together. In the comparative usability testing, this feedback rang loud and clear.

One thing I like about moving the Save button top right-hand corner is that it puts those buttons in proximity to the “Revisions” section of the edit page, which is closely related to the task of saving or changing the status of a node.

That being said, I think it could really confuse existing Drupal editors if we just start moving buttons around. And I assume that there could be accessibility implications that we should take into account. So I leave this one as an open question. What do you think?

Modernizing the UI

One of the big pieces of feedback we got from the content editors survey was that the Drupal UI looks dated. Well, the idea of modernizing the UI already has a ton of momentum behind it. I’m super excited about the work Christina Chumillas and others have done to create new, improved designs for the existing Admin UI of Drupal 8. This is not an overhaul of the UX, but a new, modern style guide applied to the existing one. It's a big improvement that I think will bolster first impressions of Drupal. And it's something that is planned to be implemented in the near future.

What’s Next?

If you’re a UX person who wants to contribute to Drupal, there are ways to get involved! See the #ux and #admin-ui channels on Drupal Slack. If you have ideas for other content editor UX improvements, or know of existing UX issues in the queue that need some attention, I'd love to hear about them here. Or continue the conversation in those channels.

+ more awesome articles by Evolving Web
Categories:

OpenSense Labs: Drupal Lays The Foundation For Every Enterprise

Mon, 2018/12/10 - 3:04pm
Drupal Lays The Foundation For Every Enterprise Akshita Mon, 12/10/2018 - 19:34

Global leading enterprises, brands, governments, and universities are experiencing the power of Drupal to engage with their audience through their websites and beyond. In a quest to lead the digital transformation experience, Drupal helps them manage and deliver a host of content across channels and devices. 

Worldwide, the organizations are looking for a solution that will support their active community, growing businesses, and user experience. With technological innovations speeding up, be careful when you are choosing the CMS for your enterprise. 

Enterprises’ demands, stakeholders’ demands, future requirements - choosing the right technology is a tough call. However, more and more organizations are leveraging Drupal for enterprise website development. 

Fulfilling the business requirements as well as meeting the technical aspects, Drupal is used 7 times the number of top sites as its next two competitors combined (BuiltWith.com)


What is the Market Demand Like?

In one of its reports, Statista predicts the size of the enterprise content management (ECM) market worldwide to reach $67 billion by 2022.

The possible spike in the graph is likely due to digital transformation which has become a key strategy for every organization. In order to make the most of the data and information the focus is moving from managing content to using content to support process productivity with simple intuitive backend technology. 

In this scenario, the information control and governance features of Enterprise Content Management move to the background, and content presentation comes to the fore. 

Reliable, scalable, secure, flexible, presentation-friendly, future-proof to sustain the content without hampering the performance of your website. Can Drupal manage the unending list of demands? 

Drupal is Fostering Billion Dollar Businesses…

Drupal can manage, in fact, it is very well doing in that matter. Fostering billion dollar businesses under the aegis of its brand. The list includes names like Tesla Motors, The Economist, Puma, Pfizer, Timex, LO’real, Honda, Johnson and Johnson, and a million others. 

Drupal 8 rightly taps into the concentrated innovation from its open source community. 

Taking advantage from its open source community, Drupal derives the most value by being flexible while keeping its core robust without compromising on security providing with new capabilities for successful digital experiences.

Acknowledging that enterprise solutions often demand complex requirements, Drupal has it sorted for you.

5 Unconventional Reasons to Choose Drupal For Your Enterprise

With Drupal, you can build a powerful website that’s optimized for every device, personalized for every visitor, and integrates with all your marketing tools.

Here are some of the solid reasons which make Drupal an excellent candidate for the enterprise of any scale or vertical.

With the new technological developments, Drupal meets these unconventional market demands just right. 

  1. Content Presentation with a Headless Architecture
    Customer experience is the new standard to measure the success of your online business, so much so that even the commerce is going headless. Supporting a headless architecture, Drupal can integrate frontend technologies like React and Angular to give a new dimension to the digital experience. Today, headless is destined to take user experience to a whole new level where the experience itself can be merchandised.
     
  2. Balancing the Hardware-Software Relationship
    With changing demands, enterprises are entering new ways to distribute the content. The dramatic increase in smartphone usage and portable devices have triggered the emergence of stand-alone software apps. This requires an easy integration matrix between hardware devices (say an Apple Watch) and a data management system (software) to present the content in the desired format. This is especially important as a medical device CMS
     
  3. Personalization with Machine Learning and Predictive UX
    Bringing together advanced analytic capabilities, data mining, real-time scoring, and machine learning enterprises are trying to discover patterns in data and forecast events to offer the best digital user experience. In fact, 65% of customers are more likely to shop at a store or online business that sent relevant and personalized promotions.

    For enterprises, machine learning has the ability to scale across a broad range of businesses. 

    Acquia Lift Connector, a Drupal module, offers integration with the Acquia Lift service and an improved user experience for web personalisation, testing and targeting directly on the front end of your website.

    It leverages machine learning to automatically recommend content based on what a user is currently looking at or has looked in the past. It has the feature of real-time adaptive targeting that refines segments while A/B helps in keeping the users engrossed with the content that resonates.

  4. Chatbots to Drive the Business Value
    Providing a conversational UI that communicate with the users and is vital for an organization, you can't afford to miss Chatbots in your website. Understanding what users want to know, pass on the information to the backend, and provide them with quick and better responses. Chatbot API, in Drupal helps integrate chatbots with your website. 

  5. Exploring Markets with AR and VR
    Drupal leads by an example when it comes to innovating with technologies outside of its periphery. By the year 2022, the market size of Virtual Reality and Augmented Reality is forecasted to increase by humungous levels as can be seen in the graph below.

    Source: Statista


    Several examples of VR applications built on top of Drupal 8 have been presented in the community. One of the famous examples of VR built on Drupal is the 'The Drupal site of Massachusetts State University' (a fictional university).


    Augmented Reality has a lot to offer to different industries, with transportation, sports, education, and healthcare reaping the most benefits out of it. More recently with Google adding AR to its maps for a street view mode.

     

The Conventional Reasons to Opt for Drupal 
  1. It is Easy To Build

    With Drupal 8.6 “quick-start” command, launching a Drupal site is easy in one command using only one dependency, PHP. Setting up a demo website no longer requires you to have setup a web server, a database, containers, or anything else.

    A fully functional Drupal demo application can be downloaded and installed in less than two minutes. 

    Providing easy-to-set-up solutions with distribution, the development time is cut by half. 

    Enabling companies to deploy core features and functionality rapidly, it allows easier customization as per their business requirements. It is easier to choose the layout and themes for your Drupal website, as themes and appearances are just a click away. With features simplified to make non-developers comfortable around Drupal, the editorial capabilities have been made fluent and easy.

  2. Drupal is Secure

    Used by hundreds and thousands of websites, Drupal’s core, codes, and passwords are repeatedly encrypted and hashed to strengthen the life of your website.

     Supported by experts, and a large and continuously growing community, it has a dedicated security team to patch any probable security violation.

    Frequent Updates

    In case of any security update, the community ensures that you get notified the day patches are released. Security release windows are released every Wednesday for contributed projects, and the third Wednesday of every month for core, usually, for a fixed period of time.

    Even though the release window does not necessarily mean that a release will actually be rolled out on that date, it exists for the site administrators to know in advance the days they should look out for a possible security release.

    Security Modules

    In addition to the proven security of core, numerous contributed modules can strengthen the security of your website. These modules extend the security by adding password complexity, login, and session controls, increasing cryptographic strength, and improving Drupal' logging and auditing functions. Additional security modules like security kit, captcha, paranoia, Drupal Security Review can be used as a checklist to test and check for many of the easy-to-make mistakes making your site vulnerable.  

    Security Team and Working Group

    The security team works closely with the Drupal Security Working Group (SecWG), comprising dozens of experts from around the world to validate and respond to security issues, aim being - to ensure that core and contributed project system provides world-class security and provide security practices to community developers.

    Its core is designed to prevent any possible security breach. Vulnerabilities in the core are coordinated with branch maintainers and individual project maintainers respectively.

    Drupal has proven to be a secure solution for enterprise needs and is used by top-tier enterprises.

  3. Drupal is Scalable and Flexible

    Another salient feature that makes it popular among businesses. When concerning web technology, enterprises require the ability to handle considerable traffic throughout - especially if it is a media and entertainment site.

    Drupal has stood both the test of time and traffic spike.

    Its ability to make the framework extensible via its modules and distributions is at the heart of much of its success. While it has enabled the core to sustain the bulk of the content, its way to streamline the demands of new industries by allowing them to address their needs in the form of custom modules and distributions has given it more satisfactory customer reviews. 

    One matter that addresses the worries of enterprises is the cost of maintenance. Many government and non-government organizations have migrated to Drupal to avoid the licensing and maintenance cost of the proprietary systems.  

  4. Excels at Faster and Responsive Development

    According to Google’s official statement, more than 50% of search queries globally now come from mobile devices. People want to be able to find answers as fast as possible and various studies have proved that people really do care about the loading speed.

    And that is why a recent Google release says that page speed will be a ranking factor for mobile searches from July 2018. It’s high time that you take the combination of performance and mobile responsiveness as a serious factor for improving visibility and revenue from the web. It is very important to have an AMP friendly website. 

    Drupal 8 is built for a mobile-first world. Everything in version 8 supports mobile responsive design. Its admin and default designs are responsive for both developers and content authors providing a responsive front-end theming framework.

    Increasing the loading speed of your web page opens numerous doors for business. And when users can view your Drupal website the same way on a desktop and mobile devices you cannot be having second thoughts.

    Mobile responsiveness helps you deliver the optimal mobile visitor experience. It supports the best responsive design practices and ensures that your users get a coherent experience anytime and every time.  

  5. Supports Multi-site Functionalities

    Given that your organization is running more than one site, the maintenance and management would require big bucks and time. But with the multi-site feature you can share one single Drupal installation (which includes core code, contributed modules, and themes) among other several sites.

    Enterprises, this way, can handle complex requirements from a single Drupal installation which implies that less time and resources are required to build your network of websites.

    One can manage any number of sites across their organization or brand, crossing geographies and campaigns from a single platform that allows swift and uncomplicated site creation and deployment.

    This is particularly useful for managing the core code since each upgrade only needs to be done once. While each site will have its own database and configuration settings to manage their own content, the sites would be sharing one code base and web document root.

    The multisite feature can be used for sites with the same features and functionalities. But if you have different functionalities it is better to test each site independently.

Drupal For Every Enterprise

Realizing the needs of every industry is different, Drupal has something for everyone.

Media and entertainment

Editing and Scalability

Media and entertainment websites worldwide use Drupal for their online platforms for seamless editing and scalability. The list of over one million organizations includes The Economist, ET Online, MTV(UK), The Grammy, The Emmy, The Weather.com, The Beatles, and Warner Bros Music.

Scalability is all about quantity - how many requests and amount of information you can handle at any given time without breaking or bending. Supporting some of the world’s most visited sites, Drupal is the other name of scalability.

Allowing easy content editing and management, which media and entertainment websites look for, it provides it all with WYSIWYG and CKEditor without another weighty feature.

SaaS

Community solutions:

SaaS enterprises are using Drupal to build the platform for their product as well as a community to engage with the clients and followers. It is easy to develop the platforms and then keep on adding the features in the later phase.

Given that community platforms are one of the key needs of SaaS organizations which allow the domain for the prospects and help the product and community to grow alike, distributions like OpenSocial offer great help.

Zoho is one of the SaaS products using Drupal for its community platforms.

E-commerce

E-commerce functionalities

Providing easy payment gateway to conduct online transactions, Drupal ensures the customer information passes seamlessly and remains safe.

Its core commerce payment module and distributions (Drupal commerce and Commerce KickStart) support the payment API, for a smooth payment collection procedure, through the check out form.

Supporting Paypal Express Checkout and Paypal Credit along with Amazon Pay, it lets you reach a wider audience by letting your shoppers complete the payment and shipping information stored on their Amazon accounts.

Lush is a Drupal patron. 

Tour and travel

For a potential traveler, your site shouldn’t look like just-another-information-brochure on the web. The need for an end-to-end solution to integrate all the minute details (from hotel booking to landing back) has never been greater.  

Booking Engine:

Providing two of the best booking solutions for your website:

  • EasyBooking - Distribution
  • BAT - Module

A complete solution for your vacation portal, BAT allows you to build an exclusive booking engine for a better customer relationship management. And EasyBooking gives a set of options to your visitors to make room reservations, contact hotel administration, or just sign-up for the hotel’s newsletter to be aware of the special offers and discounts.

FMCG

Theming

A design which resonates with your brand, interests and engages with your visitors is what you should indulge your resources in developing.

It’s the psychological effect which drives the visitor to make a transaction or to explore provided possibilities throughout the interface. Every landing page matters.

Regardless of your showcased products, Drupal themes provide sound navigation throughout the categories and sections with in-built hero banners’ section and pop-ups which are definitely customizable.

Additional modules can be further used to build an industry-specific theme. In order to cope up with varied demands, it provides more than two thousand easy and free to use themes on the go.

WholeFoods is built on Drupal.

Government and Non-Government

Cost and Security:

In 2012 when the Georgian government shifted to Drupal, the first reason to dump its previous CMS (Vignette) was its rising maintenance costs. 

Running a total of 65 state websites on two different versions of this proprietary system proved to be costly in the long run

Another decisive factor for government websites, uncompromised security is why government organizations are opting for Drupal. Around 150 governments are already powered by it. Just like the Georgian government, costs have been a significant factor affecting the choice of government and non-government agencies.  

Higher Education

Distributions:

To quickly build your higher education website, distributions provide an easy opportunity to build the website halving the development time and providing quick features. Opigno and OpenEDU are two of the distributions used widely by the higher-ed websites.

Drupal is most widely used CMS in the education sector no wonder why top international universities like the Harvard, Brown, Yale, Pennsylvania, and Columbia rely on it.

Harvard and Oxford are built on Drupal. 

HealthCare and Life Sciences

Content and User access control:

It can conform to any workflow that can be programmed with just a few configurations available. You can identify different types of content such as text, images, comments, file attachments, and any other information on your website for easy content integration and management.

Pfizer, a leading pharma organization is built on Drupal. 

Drupal As an Enterprise Management System

The need for an intranet system cannot be emphasized enough. For your business to grow by leaps and bounds, it is necessary to establish clear communication within your organization.

As your business expands, the need for an intranet system which can help in storage and sharing of data increases. ECMS is different from the web content management system in the way that the former is specifically designed for enterprise websites and is more dynamic.

Drupal allows building ECMS in two ways, either by using its modules and features or with the third party configuration. Its integration capabilities help the website to serve as a central content management system integrated with other necessary advancements.

Drupal Is Easier To Manage

Drupal isn’t hard to use, but it can be hard to learn how to use. Even though it requires more technical experience it is capable of producing exceptionally advanced sites. There is a WYSIWYG editor and drag-and-drop functionality to ease out the process and help you start straight away.

The release of version 8 has made the platform easier to use even for non-developers(and it includes content authors). Managing your website is easy as the community platform provides you with necessary documentation and answers in case you get stuck.

Summary

Being one of the leading technologies in the market, Drupal gives your enterprise the features and flexibility to innovate as per your visitor behavior and preferences.

We’d love to hear your thoughts. To get in touch, drop a mail at hello@opensenselabs.com and let us know how we can enhance your statistics with Drupal.

blog banner blog image Drupal and enterprise Drupal Drupal 8 Drupal module Drupal for Enterprise Digital Marketing Blog Type Articles Is it a good read ? On
Categories:

OPTASY: How to Scale a Web Application in Drupal: Latest Techniques to Easily Scale Your Web App with Drupal 8

Mon, 2018/12/10 - 12:47pm
How to Scale a Web Application in Drupal: Latest Techniques to Easily Scale Your Web App with Drupal 8 radu.simileanu Mon, 12/10/2018 - 11:47

It's a fact: “the next generation” of web apps aren't just extremely fast, they're highly scalable, as well. Which brings us to the next question: “How do you scale a web application in Drupal?”

What tools, best practices, and latest techniques do you use for leveraging Drupal 8's scalability capabilities?

For ensuring that your custom web app will keep on scaling to:
 

  • handle sudden spikes in traffic
  • avoid downtime 
  • withstand “surprise” content overloads
     

Well, here they come:
 

1. But Is Drupal Scalable? How Scalable? 

Let's just say that:

Drupal's built with scalability in mind and that Drupal 8 is... extremely scalable.

Categories:

DrupalEasy: Automatic removal of .git directories from Composer dependencies

Sun, 2018/12/09 - 9:11pm

If you've adopted a Composer-based Drupal 8 workflow (hopefully using the Drupal Composer/Drupal Project template) where you're keeping dependencies in your project's repository, then you've no-doubt experienced the annoyance of a rouge .git directory ending up in one of your project's dependencies. This will always happen when you're using the -dev version of a Drupal module. 

For example, as of the authoring of this Quicktip, the Field Redirection module does not yet have a stable release for Drupal 8. When added to a project using Composer, the results look like this:

Michaels-MacBook-Pro:dcoweek5 michael$ ddev composer require drupal/field_redirection
Executing [composer require drupal/field_redirection] at the project root (/var/www/html in the container, /Users/michael/sites/dcoweek5 on the host)
Using version 2.x-dev for drupal/field_redirection
./composer.json has been updated > DrupalProject\composer\ScriptHandler::checkComposerVersion
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
  - Installing drupal/field_redirection (dev-2.x e1c30f2): Cloning e1c30f24f9 from cache
Writing lock file

Notice on the "Installing drupal/field_redirection..." line, it indicates that the project is cloned, not downloaded. This means that a .git directory has been created in the Field Redirection directory.

Note that I'm calling Composer as "ddev composer ..." - this is because I use DDEV as my local development environment and am utilizing its built-in Composer command.

If this goes unnoticed, and you attempt to do a normal "git add/commit" workflow for the new module, you'll end up with a somewhat-friendly Git message indicating that you now have a Git submodule.

Unfortunately, Git submodules aren't normally necessary nor wanted when you are committing dependencies to the project repository. So, the typical solution is to delete the .git directory of the dependency prior to performing the "git add/commit".

Luckily, there's an easier way! Travis Neilans recently pointed me in the direction of the Composer Cleanup VCS Directories project. By adding this as a dependency of your project, any .git directories that result from adding project dependencies will be automatically removed! First, install the Composer Cleanup VCS Directories project using:

composer require topfloor/composer-cleanup-vcs-dirs

Then, anytime you use "composer require" to install a project dependency, if there's a .git directory, you'll see a message indicating that it has been automatically removed.

Deleting .git directory from /var/www/html/web/modules/contrib/field_redirection/.git

Categories:

OpenSense Labs: Headless Drupal Commerce: The Future of Commerce

Sun, 2018/12/09 - 4:05pm
Headless Drupal Commerce: The Future of Commerce Shankar Sun, 12/09/2018 - 20:35

Customer experience was elevated to a new high when storefronts and shopping carts first burst onto the scene. Then, e-commerce created a different dimension in the world of shopping. In this age of shoppable everything, brands and retailers need to seize the moment of truth as consumers look for shiny objects of inspiration. Today, headless commerce is destined to take shopping experiences to a whole new level where the experience itself can be merchandised.


Headless commerce is here to get the consumer’s attention and get the deal done. Drupal Commerce allows you to implement headless commerce and helps in monetising the moment of heightened emotion as most of the time, the inspiration, which is potent at the moment, diminishes to a fleeting whim.

Headless Commerce: Explained

When the frontend of your shopping experience is decoupled from the backend, that is, the presentation is segregated from the commerce stack, it is referred to as headless commerce architecture.

In headless commerce, the frontend of your shopping experience is decoupled from the backend.

Such an architecture supports an e-commerce platform without ‘head’ - front-end presentation layer - permitting additional flexibility, customisation, enhanced shopping experiences and creative freedom.

In a headless commerce, you do not have to worry about interfering with the back-end commerce setup. Marketers and merchants can experiment and make alterations to the front-end with agility.

Source: SnipcartHeadless commerce vs Traditional commerce

Following are the two key differences:


Presentation layer

In a traditional commerce, design constraints are observed as alterations would require you to invest an awful lot of time in editing the database, code, and the frontend platform.

In contrast, frontend developers do not have to be concerned about modifying databases in the backend and can create a unique user experience that adheres to their business requirements with just a simple API call. With no presentation layer, everything from product pages to the landing pages has to be built from the scratch in headless commerce.

More room for customisation

In traditional commerce, developers have to edit several layers of coding even for a single customisation starting from front-end to the database layer that is dwelling in the back-end.

Headless commerce offers more room for customisation and personalisation.

Headless commerce offers more room for customisation and personalisation. It gives you complete authority over the look and feel of your digital commerce platform.

Benefits of headless commerce

Following are some of the major benefits from different perspectives:

Magnificent shopping experience

It gives a magnificent shopping experience to developers, merchants, and consumers. For instance, adding a new field to a customer account, implementing a custom checkout flow, adding ratings and reviews to the shopping experience and many others can be performed without redeploying the digital commerce platform.

With less duplication of functionality, it offers a better experience to the merchants while administering the shop. At the same time, end-users or consumers get content-rich experiences.

Leveraging portable backends

There is no dependency on large, restricting infrastructures which lets you stay competitive with your front-end without getting bogged down by coupled solutions.

Choosing best front-end tools

Whether it is a web application, mobile application or Internet of Things, headless commerce lets you select the best front-end tools for every platform or device.

Utilising JAMstack

Headless commerce allows you to build using JAMstack which faster, safer and cost-effective thereby providing a creative and strategic development experience

Headless commerce with Drupal

Drupal Community, with its commitment towards making Drupal more better, is continuously working on decoupling Drupal Commerce and the result is incredible.

Drupal Camp Ashville 2018

A session held at Drupal Camp Ashville 2018 delineated the development of the Commerce Demo project. It talked about the out-of-the-box capabilities of the demo store and an ecosystem update constituting the roadmap for decoupled Drupal Commerce. The demo store is available online


The Commerce Demo project was built to create a product catalogue that can be easily removed without hampering the configuration of the site. The design involved modern shopping cart interaction paradigms. It required simple Views and Form API based solutions.

As a result, the design resulted in building a standalone Commerce Cart API module. This can be leveraged by anyone to develop a custom shopping cart widget and Commerce Cart Flyout which is the reference implementation for demonstrating how decoupling Drupal Commerce would look like. 

The design resulted in the development of a standalone Commerce Cart API module that anyone can use to develop a custom shopping cart widget and Commerce Cart Flyout. It showed a reference implementation that demonstrates what decoupling Drupal Commerce can look like.

Drupal Europe 2018

Another session held at Drupal Europe 2018 showed a Cart API for progressively decoupled cart experiences. It talked about how to decouple Drupal Commerce to enhance scalability and flexibility for the organisations. It demonstrated the works that were done for developing a standard Cart API to support progressively decoupled shopping carts in Drupal Commerce for Drupal 8. It was not without hurdles as the core RESTful Web Services were reviewed and involved contributions in JSON API projects.


The new Commerce Cart API project and the reference implementation in Commerce Cart Flyout demonstrated the end result showing a potential of creating a unique user experience. With this, Drupal Commerce can offer great shopping experiences that are on par with leading e-commerce software platforms. This would, in turn, make it simpler for Drupal agencies to sell Drupal Commerce to the customers.

Conclusion

Enterprises encounter increasing pressure to offer innovative customer experiences, An API-based headless architecture provides increased flexibility with its decoupled user interface (UI) approach. Technical professionals responsible for digital commerce can utilise Drupal Commerce for delivering fantastic shopping experiences.

We have been committed to providing a great digital experience with our expertise in Drupal Development.

Contact us at hello@opensenselabs.com to implement headless commerce for your enterprise.

blog banner blog image headless commerce headless drupal commerce Blog Type Articles Is it a good read ? On
Categories:

OpenSense Labs: Picturing yourself winning: How Drupal Powers Sports Brand?

Sun, 2018/12/09 - 3:59pm
Picturing yourself winning: How Drupal Powers Sports Brand? Shankar Sun, 12/09/2018 - 20:29

As Leicester City fans continued to rejoice at their team’s unlikely triumph in the 2016 edition of English Premier League to become the champions for the very first time, some people were contemplating how the underdogs managed to beat such high odds. The way a team envisages itself performing is just as important as the physical strength of the players. And in this age of digitisation, imagining themselves performing well in the digital space is immensely significant. This is where Drupal comes in.


Be it a football club, a tennis open or a cricket world cup, any popular sports team and the tournament would want to be an instant hit among the sports lovers around the globe and build on it to create a unique brand identity. As one of the leading content management systems, Drupal can help a sports brand establish themselves as an important entity in the digital arena with a unique and powerful website.

Benefits of Drupal

Drupal powers websites of biggest of the sports brands like National Basketball Association, PGA Tour, Major League Soccer, Sevilla Fútbol Club, Kentucky Derby, New England Patriots among others.

Drupal powers websites of biggest of the sports brands

Why do such great names choose Drupal? You have the reasons stated below:

Phenomenal Features

Drupal offers a large number of open source modules, themes and distributions to help build a sports-centric website with robust features.

For instance, Sports League module helps govern content that is typically used for a sports club. It can help manage multi-competition editions and their standings. It can handle rosters, automatic statistics on players and teams and the match moments.

If you need a lightweight Drupal theme for a sports-related website, Drupal 8 Premier League Theme is a great fit. It has features like slider functionality, colour switcher functionality, social media integration among others.

For a complete starter pack, there is a Drupal distribution Sportsleague comes with superb features to help build a sports-related website with its robust features for managing content, user accounts, image uploading, and search.

Security

Among the leading open source CMSs, Drupal has made great inroads for being one of the most secure frameworks and has reported least vulnerabilities among the leading players in the industry. Drupal Security Team actively validates and responds to security issues to it the best security-focussed CMS.

Scalability

Drupal can scale with your needs and help you handle busiest of the days by effectively coping with an enormous amount of traffic.

Drupal can scale with your needs Multilingual

Drupal 8 has in-built support for language handling in the form of core modules and lets you deliver localised digital experiences.

Mobile-responsive

In this age of mobile devices, Drupal enables the development of responsive sites and web applications that would let you interact with your consumers on-the-go.

Speed

Drupal’s flexible platform ensure the continuous delivery of the web development project and run an agile team. Moreover, Drupal is awesome for implementing performance optimisation techniques and build a high performing website.

Third-party integration

To get the best out of the tools that are outside the periphery of Drupal, you can integrate a variety of marketing technologies and business applications.

Content Workflow

Drupal has terrific tools for making it a loveable CMS for the content authors while creating and publishing content on the site. Its preview feature delineates how your content will look across various devices. Also, the authentication and permissions bring in improvement in the editorial workflow.


 
Content architecture

You can create the right content architecture and exhibit appropriate content for each context with the help of stupendous display mode tools, Views and a wide range of media types.

Content-as-a-service

Drupal’s content as a service approach allows the front-end developers to build engaging customer experiences with Drupal’s presentation neutral content and RESTful API by utilising tools like Angular, Ember, Backbone and so on.

Multisite

It helps you in governing multisite setup across your enterprise brands, geographies and promotional campaigns on a centralised platform.

Drupal helps you build a solution that adheres to your business requirements Business-driven

Drupal helps you build a solution that adheres to your business requirements. It does things as your business demands.

Perfect tech stack

Drupal dwells on a modern LAMP technology stack that constitutes Linux, Apache, MySQL, and PHP. This allows Drupal to fulfill the needs of fast-moving, flexible and agile organisations who are in pursuit of creating ambitious digital experiences and help them build next-generation digital platforms.

Large community

One of the most beautiful things about Drupal is its huge community presence as thousands of organisations create solutions with Drupal and in the process build Drupal itself.

Case studies

Travelling along the process of building an actual sports website with Drupal would throw the light on how it powers a sports brand. To do so, let us look at the development of two of the massive names in the sports viz. Major League Soccer and Sevilla FC.

Development of Major League Soccer


Major League Soccer (MLS) is a professional soccer league that primarily represents top-notch talent from both United States and Canada. It took help from a digital agency to migrate each team’s site to the Drupal platform.

Drupal proved a remarkable solution to improve the fan experience which was the top-of-the-line requirement. While the site maintainers of the each of the sites could easily configure their team’s instance, custom, rich multimedia platform allowed viewers to enjoy games in real-time from any device. Moreover, switching to a multisite setup cut their deployed footprint.

The Drupal platform integrated with the majority of MLS properties comprising of the league’s videos and stats. Furthermore, the integration of Doubleclick for Publishers Drupal module optimised the placement of ads and attract visitors with vibrant advertising media. Also, Drupal allowed faster editorial capabilities and strong customisations.

Thus, Drupal helped build a stable infrastructure for MLS and reduced severity of alerts.

Development of Sevilla FC


Sevilla FC was established in 1890 and is one of the oldest football teams in the history of Spain’s football history. A digital agency used Drupal 8 to help them improve their online brand spectacularly.

Drupal 8 helped in incorporating multisite architecture to build the main website and several satellite sites. The Club was also able to edit and publish most of the app content from a sole entry point.

Most importantly, the multilingual capability was enabled easily with Drupal 8. Drupal’s open source security was also an important reason for considering Drupal for the redressal of the website. Drupal has also resulted in a better website performance, enriching user experience, lower maintenance costs, and improved hardware consumption.

Hence, Drupal helped in increasing monthly user acquisition and the global audience in addition to stability and high availability of the website.

Conclusion

The mantra of Go Play And Get Fit is something we hear from our peers all our life. And we also hear that mental strength and physical strength go hand-in-hand. That is absolutely true. It also applies to a sports-based website albeit in a different manner so that it can be ‘fit’ enough to provide great digital experiences and grow as a brand. Drupal powers innovation and can be a marvellous CMS for building a sports-related website.

We can assist you in growing as a sports brand with our suite of services.

Contact us at hello@opensenselabs.com to power your sports brand with Drupal.

blog banner blog image Drupal 8 Sports website Drupal and sports Blog Type Articles Is it a good read ? On
Categories:

LakeDrops Drupal Consulting, Development and Hosting: Webmentions for Drupal in pretty good shape

Sun, 2018/12/09 - 12:13pm
Webmentions for Drupal in pretty good shape Jürgen Haas Sun, 12/09/2018 - 12:13

Thanks to a tutorial from @swentel my attention got back to webmentions again and I gave the first release candidate for Drupal another try. What's still confusing to me that I have to enter a link-class and a publishing target manually. The former might be a task for a link widget and the latter may be some lack of understanding the API so far.

Categories:

Ashday's Digital Ecosystem and Development Tips: End of the line for Drupal 7

Fri, 2018/12/07 - 9:00pm
   

In case you missed the news from September, Dries Buytaert announced the end of life dates for both Drupal 7 & 8. The date for both Drupal 7 & 8 is slated for November of 2021, and that may seem strange, but it really makes sense given the differences in 7 & 8 and the widespread usage of 7. Drupal 8 is ending alongside Symfony 3 which powers a lot of the underlying framework of Drupal 8, so that makes perfect sense.

Categories: