How do you take advantage of AI and get the most of Drupal's content management system? Are there any Drupal 8 AI modules and tools that you could incorporate into your website and... get the most of both worlds?
The best of Drupal as a reliable content repository and of a:
chatbot
virtual assistant or another type of conversational interface
Or maybe you want to implement AI to boost the various content workflows happening on your website:
content that needs to be served to various markets (and thus translated into... various languages)
user-generated content that needs to follow a certain editorial guideline (e.g. "adding alternative text to images")
content experiences that need to be tailored to each user's activity on your site
Nothing easier.
There are at least 7 different modules in Drupal to help you inject AI capabilities into your website:
1. What Are the Biggest Advantages of Artificial Intelligence in Drupal?
How does building AI integrations on top of your Drupal website translate into benefits? Strong, clear benefits...
Well, it all bubbles up to the user experience and to your team's efficiency:
you create and deliver more personalized experiences for your website visitors
you streamline and automate your team's content and marketing workflows
you get to boost your targeted marketing efforts
you provide more engaging user experience, as well, incorporating smarter features into your Drupal site
2. Build a Drupal Chatbot Fast with 2 Drupal 8 AI Modules
Thinking about delivering a more user-centric experience on your website? Then you must be wondering how you can implement an AI-powered conversational interface in Drupal, right?
You'd then be using Drupal for front UI, content management, user admin...
Source: Drupal Camp Pune
It's simple:
There are 2 dedicated AI modules in Drupal that help you create a chatbot in no time:
2.1. Chatbot API
Let take this scenario:
You want your "Drupal headless" setup to share content across an entire ecosystem of services: Facebook bot, Dialogueflow, Amazon Echo... Yet, you dread the idea of writing custom code for every single chatbot/personal assistant in this ecosystem.
How do you streamline your content serving efforts? How can you write your code once and... have your content shared with all your target chatbots and?
You install Chatbot API.
It will intermediate the integration of all those services into your Drupal website. And it will ensure that data gets served across the whole network of chatbots.
2.2. Drupal Chatbot
Another useful module to use if you consider creating a chatbot on Drupal data.
Here's how it works:
It enables you to set up a voice and text-based bot to interact with your website visitors. One that acts as a layer between Drupal and the NLP agent.
You get to choose the block where you want it enabled and to add various functionalities, as well: Latest Article Search, Latest Pages, Top Rated Pages...
3. Implement a Virtual Assistant with Decoupled Drupal Commerce
What if you want to take the eCommerce experience on your online store to a new level? To turn it into a... conversational eCommerce experience?
How? By integrating a Drupal virtual assistant into your website.
Nothing easier:
You connect a bot to decoupled Drupal Commerce.
Bot Frameworks + Decoupled Drupal Commerce APIs + NLU = A Conversational Interface for your eCommerce website.
Since Drupal:
puts a whole collection of APIs at your free disposal (being API-first)
provides you with the Commerce Cart API module to leverage
... storing content (and product details) and interacting with shopping carts in Drupal Commerce becomes particularly easy.
And here's how your Drupal Commerce-powered bot would work:
it will trigger "review cart" and "add to cart functionality" via message-based interactions
it will unblock search and "explore the products" functionality by connecting itself to the Drupal Commerce APIs
4. Create Personalized Experiences with Drupal Machine Learning
Personalization is the norm these days.
To serve content tailored to your customers' past activity (what they shared, what content they searched for...) and their profiles.
And for doing it right, you need to incorporate machine learning techniques into your Drupal website.
"Is it possible to do that?"
Of course. And here are just 2 Drupal 8 AI modules that you can tap into for personalizing the web content experience that you provide your site visitors with:
4.1. Acquia Lift Connector
Take it as a convenient 2-in-1 tool at hand: customer data & content.
This way, you get to streamline your content personalization efforts. To scale and share user-tailored experiences across an entire infrastructure of channels and devices.
It'll "equip" your marketing campaign with all the powerful features you need: behavioral targeting, real-time audience segmentation, A/B testing...
In a nutshell, what this module does is connect your Drupal site with the Acquia Lift personalization tool...
4.2. Azure Cognitive Services API
The go-to module if you consider "injecting" intelligent features — speech, facial and vision recognition, speech and language understanding — into your Drupal website or app.
Your development team can just tap into the machine learning APIs exposed and... turn them into machine learning functionalities to be incorporated into your Drupal application.
Source: Drupal.org
It's a package of 4 different AI modules, in fact:
Face API Module
Emotion Recognition API Module
Computer Vision API Module
Azure Text Analytics API Module
The last one, for instance, triggers advanced natural language processing on raw text.
This translates into 3 key features: key phrase extraction, sentiment analysis, and language detection.
5. Streamline Your Workflows with 2 Drupal Intelligent Content Tools
One of the biggest advantages of artificial intelligence is that of streamlining (and automating) your in-house workflows.
Your content and marketing ones...
So, how do you inject "efficiency" into your Drupal content and marketing teams' various workflows? You integrate these 2 Drupal 8 AI modules into their work.
5.1. Automatic Alternative Text
What if you could implement AI capabilities into the process where users upload their own content?
Just ponder on this scenario for a while:
You can include "Add alternative text images" into your set of editorial guidelines, but you can't expect users to follow them, as well, when they upload content, right?
And that's what you have the Automatic Alternative Text module for.
Source: Drupal.org
It describes the image that the user uploads. In one sentence.
It generates more than one description for the same image, actually...
Furthermore, it ships with features like:
detecting mature content
identifying faces in a given image
determining the prevailing colors
5.2. Cloudwords for Multilingual Drupal
Another one of those Drupal intelligent content tools that you should turbocharge your team's workflow with.
Just put yourself into one of your marketers' shoes:
He/she has to deliver content (lots of it) to an entire ecosystem of markets, in various languages.
And delivering localized, consistent content experiences at a global scale does take plenty of resources...
What this module does is automate the entire content delivery and management process:
Just select the piece(s) of content that you'll need to localize and let Cloudwords serve it at high speed, to all your target markets.
The END!
And these are but 7 of the Drupal 8 AI modules at your disposal for injecting artificial intelligence capabilities into your website/app.
Have you implemented any AI integrations in Drupal 8 so far? Any chatbots or maybe AI-powered tools for personalizing the content experience on your website?
What other types of AI modules would you like to find in Drupal?
Photo by Franck V. on Unsplash
Adriana Cacoveanu / Jan 24'2020
So you're evaluating and comparing all the available solutions for centralizing and standardizing your APIs. And you can't help wondering: "When is it recommended that I use Apigee Edge Microgateway?"
Why would you use it in the first place, over other platforms for managing internal APIs? Over... the Apigee Edge gateway, for instance?
What "irresistible" capabilities does it provide?
And when precisely should you use it? What are its typical use cases?
Let's get you some answers:
1. What Is Apigee Edge Microgateway? How Does It Work?
If I was to compress its definition in a short line, it would go something like this:
Apigee Edge Microgateway is a hybrid cloud solution for managing your APIs.
Whereas if I was to opt for a detailed one:
It's an HTTP-based message processor for APIs, built on Nodejs, that enables you to centralize and manage all your APIs in a hybrid cloud deployment setup.
From traffic management to enterprise-grade security, to analytics, spike arrest, and quota (and the list goes on), it provides you with most of the standard Apigee Edge capabilities.
Moreover, you get to install it either on the same machine or in the same data center.
Source: docs.apigee.com
"And how exactly does it work?" you'll then ask yourself.
It processes the messages — requests, and responses — going to and from your backend services. Meaning that it'll asynchronously push API execution data to Apigee Edge once consumed by the Edge Analytics.
"What about the Edge Microgateway deployment scenarios? What are my options?"
Well, there are quite a few, since you get to deploy it:
in PaaS platforms (e.g. Cloud Foundry)
Azure App Services
as a service instead of sidecar
integrated with Kubernetes
as a Docker container
in cloud-native PaaS platforms (e.g Google App Engine)
in virtual machines as standalone processes
2. Why Precisely This API Management Solution? 5 Big Benefits
Why would you go with Apigee Edge Microgateway over another setup for centralizing and administering your APIs?
Here are some of the strongest API management capabilities that it provides you with:
enterprise-grade security: it authenticates requests based on an API key or signed access token that each client app gets via Apigee Edge
analytics: it publishes all the data analytics to Apigee Edge so that everyone gets traffic stats in real-time
configuration: no special coding is needed to set up Apigee Edge Microgtateway
rapid deployment: you get to deploy an instance in no time
reduced latency: it collects and sends API data to Apigee Edge asynchronously, therefore with minimal delay
3. When Would You Use It? What Are Its Typical Use Cases?
When is it best to go with a hybrid deployment model for managing your APIs?
Source: LinkedIn
Here are some of the most common use cases of Apigee Edge Microgateway:
for an application running on a microservices architecture
to keep API traffic within specific limits set for compliance and security reasons
to provide Apigee API management for services running in Kubernetes
for behavioral testing (of the scaling, of the infrastructure...)
for disaster recovery
to speed up API traffic for services running in close proximity
when legal and geographical boundaries are involved; for instance, when some of your global products need to run in regional data centers due to issues regarding personal data
to keep processing messages even when there's no internet connection
for cost management and market segregation
4. And What's the Difference Between Apigee Edge and Microgateway?
Apigee Edge vs Microgateway... why should you consider the later?
How are they different more exactly?
Especially since it gets even more confusing when considering that you even get Apigee Edge Microgateway plugins, which are so similar to Apigee Edge's policies...
What capabilities, that you can benefit from using Apigee Edge, does Microgateway lack, for instance?
Now, in terms of differences, here's a general "rule of thumb":
Apigee Edge Microgateway does not come to replace the Edge gateway.
It has its own specific "lighter" use cases, like various mediations, key verification, quota that you can do with your backend services in close proximity, all while tapping into its robust above-mentioned capabilities.
The END!
Are you using Apigee Edge Microgateway? If so, what's your specific use case?
And why have you decided to go with Microgateway instead of Edge Gateway?
Image by Lynn Neo from Pixabay
Adriana Cacoveanu / Jan 17'2020
Powerful, full-featured media handling in Drupal. This has been your, our, and all the content authors and Drupal site builders' wish for a decade now. And it has just become reality: Drupal 8 Media Library is now a stable core module shipping with... WYSIWYG embedding support.
You just click that shiny and new button added to your CKEditor and add your media. As simple as that!
And there's more:
You can embed media assets in your content in a... finger snap. No mouse needed.
A bit overwhelmed?
Now, let's see how we got this far. How was the life of an editor before Media in Drupal 8 core and how it came to improve?
And, of course, how these 2 major media improvements in Drupal 8.8 impact your content creation experience.
1. Drupal 8 Media Library: Why Was It Necessary in the First Place?
Since we already had the Drupal 8 Media module in core, right?
Yes, but it lacked an UI...
So, any time an editor needed to add/reuse media file to a... blog post, let's say, he/she had to type in that file's name in the entity referenced field, triggering its auto-complete functionality. He could not visualize those media items before selecting them. There were just plain-boring forms, a table for all the media files and administrative views...
Therefore, the team behind the Media Module in Drupal 8 created Media Library, which was meant to provide precisely that visual experience that was missing.
In short: Drupal 8 Media Library was meant to add a nice UI to Media.
Editors could browse though all their media assets, then quickly select and upload, right from their media libraries, the ones they wanted to reuse across their websites.
It would open up a visual grid display of all their media items, with built-in filters to narrow down their options.
The result? A far better editorial experience.
2. Media Management in Drupal 8: From None to... a Full-Featured System
How did we get this far? From almost no media support to a modern ecosystem of powerful media handling features?
It all started in 2007, when Dries first outlined the need for “Drupal’s core features for file management and media handling... generic media management module with pluggable media types” in his “State of Drupal” talk.
Since then, decent media handling support in Drupal has been one of the most requested features:
Source: Drupal.org
Now, putting the whole “Media in Core Drupal 8” process on high-speed we get to:
the release of Drupal 8.4, when the Media module was first added to core
Drupal 8.5 with Media working right out of the box
Drupal 8.6, when the Drupal 8 Media Library module “stepped into the spotlight” as an experimental module
Drupal 8.7 with significant improvements to the Media Library visual interface (e.g. bulk uploads)
Drupal 8.8 with WYSIWYG embedding support
Now, can you imagine the life of a Drupal site builder/content author, back in those days? The “before Media” days?
Whenever he needed to reuse an image media, previously uploaded on the website, but on a different page, he had to... re-upload it.
There was no way of reusing and embedding it into the text, quick and easy. And no way of using remote media, either (Instagram, Youtube...)
Now, back to the present, when we (finally) have Media and Media Library in Drupal Core:
You get to add different types of media items — audio files, remote video, images, documents — store them in your library and reuse them in your content whenever you need.
Furthermore, you get to bulk upload media files, filter them by specific criteria, display them in a table or a grid view, you name it.
Managing and reusing your media resources in Drupal has never been easier.
3. Media Library in Drupal 8.8: The New “Add Media” Button
Drupal 8.8 came to “seal” a whole decade of efforts put into building and implementing a robust media handling system in Drupal.
And the last improvements that it brings to the entire core media in Drupal 8 ecosystem are just... mind-blowing:
Media Library is officially a stable module in core
it comes with an “Add Media” button added to the CKEditor panel
keyboard accessibility: entity embed is possible without using a mouse
Source: The Drop is Always Moving
And there you have it! The last “roadblock” on Drupal 8 Media Library's roadmap to the status of a stable core module has been overcome:
You have WYSIWYG integration in Drupal 8.
Meaning that now you can embed media in your content types by simply clicking on a button, right in your editor. And all that with a... finger snap. No mouse needed.
Source: Drupal.org
In other words, Drupal 8 Media Library means, since Drupal 8.8's got released:
A quicker, simpler way for everyone to add media from the media library directly to the text editor.
The END!
We're a bit curious:
With powerful media handling now in Drupal core, what's the next “nice to have” improvement on your wishlist?
What other critical feature, that Drupal currently lacks, would significantly improve your developer/site builder/admin/editor experience?
Image by Pettycon from Pixabay
Adriana Cacoveanu / Jan 15'2020
The line between useful and... useless (or pushy or simply annoying) is thinner than you think. That's why creating a mind map that aligns your site's content structure with the user intent is... critical.
"Whether you’re a product owner or designer, you don’t want your website to be a maze with nothing but frustrating blind alleys.” (source: altexsoft.com)
And there's no guessing work or discouragingly complex process in identifying the current user flow on each web page on your website:
Just take a look at the behavior flow report in your Google Analytics. No rocket science here...
Take it from there and:
identify the roadblocks
restructure content on each page so that it matches user intent and is fluid and easy to read
But let us give you a hand with that. With mind mapping your current customer journey and planning its improved version:
In this respect, in today's post we'll:
give you the “anatomy” of a user-friendly website: what elements make a website, well, user-friendly?
define mind mapping with respect to designing the user experience on a website
teach you how to create a mind map: an easy step-by-step guide
show you how to use a mind map to make UX improvements on your website
1. The Anatomy of a User-Friendly Website: 4 Essential Features
“A vague objective leads to poor results.”
There's no point in creating a mind map that would hopefully make your website more user-friendly if... you're not quite sure what key elements make a website user-friendly.
So, here's the list of must-haves for any website aspiring to deliver a great user experience:
1.1. High Speed
It's no news to anyone: the page loading time has a huge impact on the user experience.
Unnecessary interactive elements, that don't match users' needs and don't play any role in the conversion process either, will only get you a clunky and... well... slow website.
1.2. Useful Features
And “intuitive” I must add.
Again, we go back to the “elements justified by the user's needs” principle:
Is that slider useful and relevant for the user behavior on your website? It it too bulky, loaded with endless options that just ... discourage the visitor?
You might want to re-evaluate all the features on your website: are they relevant and intuitive enough?
1.3. A Well-Structured Information Architecture
Information that's:
easy to access
easy to interpret
… is key for a wannabe user-friendly website.
1.4. Content that Matches User Intent
If users are looking for online cooking classes, let's say — and that's precisely what you promise to deliver them — and you're only trying to sell them kitchen gadgets on your website, the only result that you'll get is them bouncing off in seconds.
2. What Is Mind Mapping with Respect to Designing the User Experience?
An overly simplified definition would be:
A way to brainstorm and present the generated information in a visual way.
Now, since I've promised you a definition “with respect to” creating the user experience, here's a more... context-specific definition:
Mind mapping is a vesatile technique where you put together a visual hierarchy of your site's present or future content. It lists out the key pages on your website (homepage, service pages, blog page, etc.), the various relations between different web pages, the links and CTAs on each page...
Source: altexosft.com
In short: mind mapping reveals how data is structured on your website.
Of course, you'll then consider creating a mind map of the target version of your current website. The more user-friendly one...
3. Main Benefits of Using Mind Mapping: From Great Ideas to... Actionable Steps
Finding new ideas is exciting.
But jumping on every new great idea that someone in your team has, without first checking whether it aligns with the user intent, is just like... making shapes out of soap foam.
Not only that they're not future-proofed, but that clutter of ideas might not work together either.
By using one of the best mapping tools available online for structuring those ideas as they... pop out, you turn them into actionable steps in your strategy for improving the UX on your website.
And the clear benefits to mind mapping are:
you define your ideas' roles: what role do they play in your UX strategy (if you can't assign them a role, they're just “Wow” ideas with no solid justification)
you assess their value: how does implementing this new idea bubble up to the user experience?
you identify the various relations between them: you might want to avoid “island-ideas”, with no connections to other ideas listed out in your mind map
4. Creating a Mind Map: 5 Simple Steps
Now that you know what a mind map is and why on earth you'd bother making one, let's see how you can actually put one together:
4.1. Create a Mind-Map Template
Just so you can have a basic idea of the current information architecture on your website.
List out how data's being structured on your website now and how you plan to structure it for its more user-friendly future version...
4.2. Map Out Your Ideal User Flow
How would you like your website visitors to engage with your content? What actions would you like them to perform?
Source: mindmeister.com
Once you've outlined the key pages on your website (homepage, services, features), start planning out the user flow.
4.3. Compare it to the Current Behavior Flow Available on Your Google Analytics
Before you can properly map out the user flow, you need to know what's the standard customer journey on your website now.
For that, just delve into your Google Analytics data and look for the user behavior report. It'll show you all you need to know about:
how users are engaging with your website's content
what paths they usually take when navigating through your current information architecture
4.4. Identify the Roadblocks
The user behavior data might reveal to you some unwanted realities regarding the user experience on your website:
poorly structured content
a bulky and tiresome collection of interactive elements
irrelevant features (embedded videos, interactive elements, social sharing functionalities)
too many tools that don't respond to users' needs
4.5. Make the Appropriate UX Decisions to Influence the User Behavior
Now that you've identified the main roadblocks in delivering the best user experience, it's time to... remove them, one by one:
turn chaos into a logical content hierarchy
trim irrelevant page elements, with zero value in the conversion process
adapt web pages' content structure to the needs of specific audience segments (make sure to include relevant information for those customer personas, redesign your CTAs if needed...)
5. How to Use a Mind Map to Make Powerful UX Improvements
Creating a mind map is but the first step:
Turning it into powerful UX decisions should be your main objective.
So, the answer to the question “Are mind maps effective/useful?” is:
They are if and only if you make them useful and... usable.
You can turn your mind map into:
an effective sitemap
a customer journey map
But let us take a real-life scenario and point out specific UX decisions that you could make with your mind map at hand.
It's an example that I've run into reading Mindmaster team's great blog post: A Simple Way to Design UX, UI and CX Using Mind Maps:
Say you're targeting 3 different customer personas on your website. You then need to plan 3 different user flows.
You start by grouping the web pages on your site into 3 categories, each of them corresponding to one audience segment.
Then, you start doing some user behavior mapping: how do you want each customer persona to navigate to the corresponding web page so that he/she clicks the CTA placed there?
Now, it's time to make some critical UX decisions:
what relations to set up between various pages on your website? You might have a user on a service page and you need him/her to visit your “get a quote” page, as well
what's the best CTA design for each one of your 3 types of pages?
what key information should you include on a page, depending on the customer persona accessing it?
See? Not only that creating a mind map helps you put together an effective information architecture, but it's also a great technique for generating content ideas that match the user intent.
6. Final Word
In the end, it all comes down to goal setting.
Creating a mind map is a great way to:
understand your website goals: what type of conversion actions do you want users to perform?
achieve those website goals by delivering a user-friendly experience: content that's useful, accessible, easy to read and to interpret
The END!
Do you usually create mind maps when building new websites, to ensure they'll deliver the best user experience?
Or for existing ones, to improve their UX?
Do you consider them critical or optional in designing the user experience?
Image by Biljana Jovanovic from Pixabay
Adriana Cacoveanu / Dec 14'2019
Say you need to build a company website that's bilingual from the ground up, accessible, responsive, user-friendly for the team administrating it, easily maintainable and innovative. Oh, yes: and you need it built fast. What do you do then? You "unpack" the web experience toolkit Drupal 8 distribution, trigger its out of the box features and... adjust them to your organization's specific requirements.
But what exactly is the Wetkit Drupal distribution? Who's it for?
What powerful features/modules/reusable components/content management tools does it provide you with out of the box?
And how can you customize it so that everything, from content types to... the publishing workflow, should fit your needs perfectly?
Let's get you some answers, now:
1. What Is the Web Experience Toolkit Drupal 8 Distribution?
It's a version of Drupal, designed specifically for the Canadian Government, that streamlines the building and maintenance of bilingual, responsive and highly accessible websites.
Since it's open-source, it is free to use by all public organizations.
Take it as a powerful... bundle of carefully curated Drupal modules, a built-in responsive theme, and out-of-the-box tools for content authoring and publishing, that helps you set up a website that:
has built-in bilingual support
leverages Accessible Rich Internet Applications (WAI-ARIA) and complies with the Web Content Accessibility Guidelines (WCAG 2.0) by default
taps into a robust content management system
ships with the same theme used on the Government of Canada's official website
... in no time.
It comes as a 2-part tool, made of:
Wetkit (or WxT or WET): a set of files that define the front-end components of your future website (JS, CSS) and markup; a bundle of tools and best practices for reaching certain standards of bilingualism, accessibility, and responsiveness on your website
Drupal core: a robust and flexible content (and users) management system
Note: it's also a highly flexible "toolkit", that you can adjust to your specific requirements of accessibility, usability, and interoperability.
You might need specific content types, a specific custom-tailored publishing workflow, a particular page layout, etc. Luckily for you, Drupal-WxT is conveniently adjustable:
it grants you easy set up (and maintenance) of your bilingual and accessible Drupal website
it also grants the freedom you need for customizing it to your organization's particular needs
2. What Is a Drupal Distribution? Why Would You Want to Use One?
Now you know what the Web Experience Toolkit Drupal 8 distribution is:
"But what exactly is... a Drupal distribution?" you might ask yourself.
Let me try a short, yet comprehensive definition:
It's a package of components, modules and tools that you can trigger to build your Drupal website.
Or:
It's a version of Drupal that provides you with the extra configuration and carefully curated modules to set up a website that meets your specific requirements.
In this context here you need your website to be:
accessible
bilingual
responsive
interoperable
3. 10 Powerful Features that You Get Right Out of the Box with Drupal-WxT
Till here, I've kept telling you about all the built-in functionality and robust content management tools that you get, out of the box, once you install the Web Experience Toolkit Drupal 8 distribution:
"But which are they?" you'll legitimately ask yourself.
Here are the 10 most powerful features that WxT-Drupal provides you with right from its... unboxing:
3.1. A Responsive Theme
It allows you to implement the same look and feel as the one on the Government of Canada's website.
3.2. Search API
3.3. Workbench for Drafting Your Content
3.4. A Menu System
3.5. A WYSIWYG Editor
A CKEditor, to be more specific.
One that you can customize to fit your editorial team's specific needs and preferences, which they can use to add a markup to the content about to be published.
3.6. Bilingual Support
One of the most powerful components of the web experience toolkit Drupal 8 distribution.
Basically, you get bilingual support at every level of configuration:
multilingual UI and content (French version already installed): from menu items to taxonomy terms, to form elements, translating each element of your content is fairly easy with Drupal Wetkit
bilingual back-end (for those admins in your team who use either English or French)
3.7. Version Management
Your editorial team can "juggle with" several different versions of the same content to be reviewed before being published.
3.8. A Complex System for Managing Content Types
By default, it's 2 content types that you get: pages and documentation.
3.9. Panels & Panoply for Creating Landing Pages
Your content team can easily edit both the content and the layout of this page and turn it into your Drupal site's homepage or... a list-of-events page.
3.10. A Built-In Moderation Workflow
The entire process of creating a web page for your Drupal site might call for a specific ecosystem of:
authors, translators, editors
different content statuses
different content transitions
Luckily, the web experience toolkit Drupal 8 distribution provides you with a robust and flexible workflow that you can customize to your needs.
Feel free to add specific types of users, particular content transitions to suit your own content lifecycle, overall: to adjust the built-in workflow to your unique requirements.
4. Is the Drupal Web Experience Toolkit the Right Fit for Your Organization?
It is, if:
it's a bilingual and fully accessible website that you need to build
you need it built fast: the curated selection of modules and the built-in content management tools will help you save valuable time (and money)
it's low maintenance set up that you're looking for
Now, it goes without saying that customizing this Drupal distribution to fit your organization's specific workflow, team hierarchy and in-house operations does call for some configuration work from your side.
The END!
These are the what and the why of the Drupal WxT or Wetkit, if you wish.
Have you already had the chance to trigger the potential of a Drupal distribution? What do you think of the "load" of pre-built features that this particular package ships with? Are they tempting enough for you?
Is there any other type of functionality that you wish it would have provided you with out of the box?
Image by PublicDomainPictures from Pixabay
Adriana Cacoveanu / Dec 10'2019
PDFs, infographics, icons, logos, fonts, videos... How complex is your "ecosystem" of creative digital assets? And how easy is it for your team(s) to manage it efficiently? If it goes from challenging to... cumbersome, then you might consider switching to Acquia DAM.
"But would it pay off to make the move to a cloud-based digital asset management software?"
To answer your own question, ask yourself further:
"What if all designers, content creators and marketers in my company were always on the same page? On a shared platform?"
"What if no one in my team(s) saved brand assets locally, but on the cloud instead? On a centralized cloud-based location?"
"What if managing my heavy load of digital assets could get as efficient as... having one single repository for all my assets? One that all my teams can access anytime and (from) anywhere?"
Now, what if Acquia DAM was the answer to all these... daring "fantasies" of yours?
Here's:
what this tool is
how it can streamline your content pipeline
what are its most powerful features
how you can get the most of it (since any software can only be as good as its users, right?)
1. What Is Acquia DAM?
It's a digital asset management system that acts as a central storage location for all your assets, allowing everyone in your company to:
access them, irrespective of their locations
keep track of them
organize them
update them
share them
... with great ease.
Here's a short demo of Acquia DAM "in action", streamlining the most common asset management tasks that your creative teams usually perform.
In short: imagine your current infrastructure of various platforms, personal computers, various channels, multiple stakeholders involved in the content process, devices, and repositories reduced to one single place on the cloud.
A cloud-based repository where all your different teams — marketing, design, content — can store and update all your creative assets.
The 2 most obvious benefits that you'll "reap":
you'll deliver a consistent brand experience
you'll speed up the content production process
2. What Are Its Most Powerful Features?
For, OK, it boosts your content pipeline:
But what about those robust features and functions that it ships with? The key ones to look look for and to trigger, to be sure that your teams use this DAM solution to its full potential?
2.1. Centralized Digital Asset Library
Instead of an intricate network of repositories — Dropbox, Google Drive, email, local or network hard drives — you'll have one single storage place on the cloud.
One repository for all your creative assets, that everyone in your organization can:
access and use to create unified digital experiences: no need to waste precious time looking for a specific branded image created... years ago
update, making sure that there are no out of date licensed assets left lingering in there
All your assets in one place, syncronized, current, approved and... easily accessible.
2.2. Workflow Management
The more the... merrier?
Not in the context of a high volume of assets and lots of people, from multiple teams, engaged in the content production process.
Luckily, using Acquia DAM's workflow management your design and marketing teams can keep a close track of everyone's step in the process.
From asset creation, to update, to review and final approval, an ideally formalized workflow will speed up your entire asset management process.
2.3. Portal for Publishing Approved Assets
That's right: Drupal Acquia DAM enables you to set up your own portal site for sharing brand guidelines and approved assets.
With approved rules and presets for image processing at hand, your non-designers gain a higher level of independence.
Which can only translate into a streamlined content pipeline.
2.4. Dynamic Templates
A feature aimed at the same goal:
Empowering your non-designers to update graphical design elements on their own.
Swapping images, editing text field, all while preserving the approved branded design elements — logo, font, colors — gets so much easier for them when using these dynamic templates.
Now, some other equally powerful features to incorporate into your asset management process are:
Scheduled Publishing
Enhanced search
Custom Metadata Fields
Audit Report Logs
Custom Form Fields
Metadata Group Permissions
Version controls
3. Why Use It? What Content Production Challenges Does It Solve?
In other words:
Would switching to Aquia DAM pay off?
Now, here's a scenario that might be (too) familiar to you:
You're dealing with... loads of assets in your organization. They get shared in Google Drive or Dropbox, updates get approved on various chat channels, specifications added to Google Docs... It's a chaos of technologies and tools that you're storing, organizing, tracking and repurposing your assets in.
Have I "guessed" right?
Then this is why you should consider implementing a digital asset management software like Acquia DAM.
To cut off all the inefficiencies that derive from such a cumbersome patchwork of disconnected tools and processes:
the time your teams would waste looking for a specific asset that seems to be lost in this "black hole"
the money you'd lose whenever someone in your team decides to... recreate an asset that's... "gone missing"
the risks you expose your brand to by using images with expired licenses
the bad reputation that you gain by... accidentally sending older versions of your assets to your clients
Source: Acquia.com
Now, let's sum up the main benefits that you'd reap from taking the leap to Acquia DAM:
highly accessible assets: for everyone in your team, anytime, from anywhere on the globe
increased system performance
significant marketing and IT resource savings
increased governance and control of your entire ecosystem of digital assets
synchronous brand message: your design and marketing people will better coordinate their efforts
4. How Can You Sync Your Assets with Your Drupal Site? Acquia DAM Drupal Integration
It's simple:
You use the Acquia DAM Connector for Drupal.
This way, you can use the assets stored and updated on your Acquia DAM instance across all your Drupal websites.
Just visit Acquia'as dedicated page for info on the right version to download, depending on the version of Drupal running on your website(s).
5. How Can You Import Your Assets to Drupal? The Media: Acquia DAM Module
Say you're storing your creative assets to Acquia DAM:
How do you move them to your Drupal website?
For, it's there that you'll be... putting them to use, after all.
You install and enable the Media: Acquia DAM Drupal module.
What it does is:
provide you with tools for scanning your DAM system for specific assets and pair them with their corresponding Media entities; with their corresponding entities on your Drupal website...
ensure that your selected assets, along with their metadata, get instantly synch whenever you're making changes in the DAM
6. How Can You Build Apps Using the Drupal Acquia DAM? Acquia DAM API
Say you need your developers to safely read and write from your DAM so that your users can easily push and pull their files and metadata.
You need unrestricted access to some of Acquia DAM's most robust features: upload, file sharing, search.
In this case, Acquia DAM API provides you with the underlying interface for building the apps that'll tap into your DAM tool's power.
7. How Do You Integrate It with Your Other Services? Acquia DAM Integrations
For there must be all kinds of services and platforms that your teams are currently using, for storing your assets and authentication.
You just browse through the list of popular services that Acquia DAM provides integrations for and pick the right ones.
The END!
How does your digital asset management system look like? Have you considered switching to a DAM solution?
Do you find Drupal Acquia DAM's features and benefits powerful and relevant enough for your specific content pipeline?
Image by PublicDomainPictures from Pixabay
Adriana Cacoveanu / Dec 06'2019
The waiting is over. We'll have automatic updates in Drupal sooner than we even dared to hope.
Source: Drupal.org
* Since that announcement was made, both an alpha and beta1 version of the Automatic Updates module have been released.
The auto-updater, which has been, in turn, or simultaneously:
an ever requested feature in the Drupal community
a highly anticipated functionality for the Drupal end users
an evergreen matter of debate ("I really need this feature in my life" vs "We prefer to keep the Drupal website up-to-date ourselves".)
a... "mission impossible" type of challenge
a Drupal initiative that seemed doomed to never grow into an actual feature
... is now a work-in-progress Drupal module. Can you believe this?
Now, we can just hear those questions running through your head:
"How/when did this never-ending talk about auto updates for Drupal turned into a module?"
"What are its features/components?"
"Who is it aimed at?"
"How would it benefit me more precisely?"
Let's get you some clear answers:
1. Automatic Updates in Drupal: A Highly Requested and... Ever Postponed Feature
An auto update system has been one of the top requests in the Drupal community since... forever.
"Does Drupal have an auto update?" "Why Doesn't Drupal offer an Auto Update feature like WordPress?"
Simultaneously, many other members of the community adopted:
the "I didn't need it anyway" approach
the "I don't need Drupal to automatically update itself. What if something breaks?" approach
or the "Auto updates would not fit our development workflow" approach
Overall: the need was there, it was growing and the various "no need" reactions to the possibility of implementing such a feature were just:
legitimate paranoia lest those automatic updates should be superficially tested before release
the frustration that the answer to this request was invariably the same: "Not possible in a Drupal context."
Speaking of this standard answer that we've been getting, constantly, over the last years, it looks like automatic updates in Drupal have gone from:
myth: Drupal websites are far too complex to come up with an all-size-fits-all set of updating standards for them all
mission impossible: it's not possible to architect such a solution for Drupal
work-in-progress module aimed at simplifying the whole task of keeping one's Drupal site safely up to date
In short: the automatic updates functionality has gone from "mission impossible" to... "anything is possible with Drupal".
2. Auto Updates: From a Drupal Core Strategic Initiative to a Drupal Module
The community demanded and... demanded (Dries himself drew attention to this need), till their request of an automatic updater turned into one of the 8 Drupal core strategic initiatives.
One funded by the European Commission itself...
Source: Drupal.org
And this switch from request to... well-structured roadmap was only too predictable:
proprietary and commercial software companies were already implementing an auto update system
open source projects (see WordPress) were already offering this critical feature: the site owner just clicks a button and the system handles the whole updating process
What was the main goal that drove the Auto Update initiative forward?
To architect a system that would apply Drupal updates automatically.
This way, maintenance costs, particularly for small and medium-sized Drupal projects, would lower and the Drupal adoption rate would rise.
Not to mention that we would be having far more 100% secure Drupal websites out there.
3. The Automatic Updates Module: Its 3 Main Components
For this long-awaited solution for automatic updates in Drupal relies on a 3-component structure:
the PSAS (public safety alerts)
the readiness checks
the actual in-place updates
Now, let's get into the nuts and bolts of each component:
3.1. Public Safety Messaging
What this feature does is pull alerts on critical and highly critical updates from Drupal.org right into your admin UI.
This way, you can easily check your site's readiness for the update about to be released by the Drupal security team.
3.2. Readiness Checks (or Preflight Checks)
It's a plugin-based feature that triggers warnings and errors on detected issues blocking your website from getting updated automatically.
Let me give you some examples:
"Your website's running on a read-only hard drive!"
" Cron isn’t running frequently enough!"
"The "X" files included in the update process have been modified!"
"You need to run database updates!"
3.3. In-Place Updates
Once your website's level of... readiness has been checked and approved of, it's time to run the Drupal update itself.
Here's how it works:
the update package of files gets downloaded from Drupal.org
the Automatic Updates module (now in its beta 1 version) checks it and creates backups of the files on your website included in the update process
the module performs the update
if something goes bad, it restores your backup files
Note: you're free to set up your own custom workflow for the auto-update process; you can stag the updates for review and approval first, get them through your own CI/CD system or... you can set them to go live, automatically.
4. And How Does It Work? The Automatic Updates Module "In Action"
Let's imagine this scenario:
You already have this automatic functionality implemented into your website. How would it work in case of an "upcoming critical security update" situation?
it pops up the message alert in your admin interface
next, you run several checks on your website to... check whether there are any issues that you'll need to address before updating it
then you trigger the in-place update
That's it.
5. Who's It For? Is It Aimed at...You, Too?
It is if:
you're a small or medium-sized business owner
you don't have a custom development workflow and pipeline set in place (with Git, Drush, and other tools included)
people in your team with no development background are responsible for maintaining your Drupal site up to date
you don't have a solid routine of checking and running Drupal updates as soon as they get released
Source: Drupal.org
In other words: automatic updates in Drupal aren't aimed at enterprise-level websites.
The module targets small Drupal projects, where:
running security updates on a regular basis
staying vigilant, lest you should miss them once released, is THE main cause of stress for site owners
The END!
This is the new auto updates feature in Drupal, along with the answers to some of your valid questions regarding this module.
How do you find the project's progress so far?
What other features would you like this module to include? And what are your concerns about integrating such functionality into your own build workflow?
Image by krzysztof-m from Pixabay
Adriana Cacoveanu / Nov 29'2019
How do you know which API management solution best suits your needs? What fundamental differences would a Google Apigee vs MuleSoft comparison reveal?
What different features and different use cases would it expose, pointing out to you the right platform for your application?
Well, we've compared the 2 API managers for you, so get ready to find your answer to:
What is Apigee? What are its main features?
What is an API management platform?
What is MuleSoft?
What's the difference between Mule ESB and Apigee?
What is Apigee used for? And what about Mule ESB?
1. What Is Apigee?
It's a cross-cloud API management platform offered by Google.
Source: Google Cloud
But that's just a "teaser" answer to your question, so if you crave for more details:
Apigee is an API gateway tool that provides a secure environment for multiple cloud services and applications to exchange data in.
In short: Google Apigee is that platform that helps you manage all your APIs in one place. A platform that brings together all your digital experiences.
2. What Is an API Management Platform, More Precisely?
Maybe you feel a bit confused. Left in the dark about what API management platforms are.
Therefore, allow me to delve into (even) more details, so there's no confusion left when I start to actually compare these 2 API managers: Google Apigee vs MuleSoft.
So, an API management platform is:
The process where you manage all your APIs in a secure and scalable environment.
A process that enables you to use an API for overseeing the interface's lifecycle. This way, you make sure that all the apps and developers using that API have their needs met.
Now, there are 3 key functions that an API management platform should support:
security
monitoring
version control
... and some basic features that would allow you to accelerate innovation in your organization and adapt easily to customer expectations of flexible and scalable technology:
API key and authorization management
analytics
live updated documentation
developer community management
developer portal to simplify the acquisition and distribution of certain APIs needed for building apps
3. Google Apigee: Key Features
Now, that looks tempting enough, doesn't it? To be able to manage all your APIs from one central place...
But what features, designed to streamline the whole API management process, does Apigee provide you with?
How precisely does it help you be effective when managing your APIs?
it provides constant version updates
it provides troubleshooting options
it taps into machine learning and analytics to generate actionable insights
it scales to your needs
it supports multi-cloud and hybrid cloud
it automates the process of generating API documentation and software development kits
it speeds up the implementation of API proxies with integrated metrics and dashboards
it provides a modern UI for your legacy data stores
it provides monitoring tools for security, API troubleshooting, and optimization
4. What Is MuleSoft?
Since we're about to make a MuleSoft API management vs Apigee comparison, your question is more than legitimate:
Source: MuleSoft.com
MuleSoft is a software company that provides an integration platform — Mule ESB — for centralizing all the apps, data, and devices across the on-premise and cloud environments in an organization.
5. Google Apigee vs MuleSoft: What's the Difference?
And we're back to the initial question:
What's the difference between MuleSoft and Apigee, after all?
For they're both API management platforms, they both seem to be serving the same API centralization and management needs and they're equally popular.
Here's a first differentiator:
In Google Apigee APIs are consumption-centric, whereas in Mule ESB they're exposure-focused (or reuse-focused).
Now, let's dig out some more ways in which they differ:
5.1. Mule ESB
higher ongoing operational costs compared to Apigee
ships with a wide array of connectors, for all major platforms —Twitter, Facebook, SAP, Salesforce — and business process management software; this makes it easier to be integrated to other systems and services
it provides some of the most robust features in API management: oAuth, throttling, access levels...
it makes implementing a CI/CD environment conveniently easy
it supports a whole variety of interaction patterns since it ships with lots of adapters and robust message-oriented middleware
5.2. Apigee
it grants you close control of user access; you can even grant users granular control based on their particular needs and adjust the services' requests based on users' specific requirements
it allows branding
it provides support for JMS and SMTP functionality
it integrates seamlessly with other platforms
6. When Do You Use One API Manager over the Other? Specific Use Cases
In other words: which one to use?
Say you need to expose some services in your app: should you go with Google Apigee or Mule ESB?
To make an informed decision, here are some of the typical uses cases of each API manager:
6.1. Mule ESB
more appropriate for REST API development
best suited for system-to-system integration
covers a bigger scope, compared to Google Apigee
6.2. Apigee
best suited for connected apps scenarios
the best option if you're planning to update your legacy apps and to enable data exchange across your ecosystem of apps and services
when you just need full API lifecycle management: a platform that exposes your services in a secure way and ships with powerful API governance and management features like caching, analytics, etc.
The END!
Have I answered your "Google Apigee vs MuleSoft" question(s)?
If so:
Which API management solution do you think that best suits your needs?
Image by Juraj Lenhard from Pixabay
Adriana Cacoveanu / Nov 15'2019
Let's say that you have a cleaning business. Once a user types “office cleaning” on your website, the search results that show up first are some blog posts on this topic instead of the page that you're actually targeting: the “Office & Workplace Cleaning” service page. So, you wonder: “How to configure custom search in Drupal 8?”
What are your options if you want to go beyond the default Drupal search?
How can you influence that search results ordering so that you:
improve the overall site search experience for your visitors?
push forward into the spotlight particular pages on your site, based on specific keywords?
We've done our homework, collected and then selected 9 different ways that you can upgrade the default search experience in Drupal so that it should fit your needs perfectly. From:
additional Drupal modules that you can enable
to effective search plugins that you can install
to brilliant configurations that you can set up
… you'll find a whole collection of options at hand for fine-tuning the search functionality on your Drupal website.
1. Enable the Drupal Search API Module
If you find the default Drupal search module a bit too... restrictive, consider Search API.
It takes but 3 simple steps before you can leverage its flexibility to the fullest:
just install it and enable it, along with the Search API database module
add an index and an API server, as well
2. Integrate Your Drupal 8 Website with Apache Solr Search
The Java-based search platform is powerful enough to supercharge your website with tons of search capabilities:
Source: Drupal.org
search for all attributes of Drupal nodes
ouline the search queries in the results
perform language stemming to return related results
search across multiple websites
index from... millions of nodes
overlook users' typos and provide proper suggestions
provide location-based search results
display the most relevant results on top of the list
In short: you're better off with a Solr back-end; it will always overstep a Drupal database search setup when it comes to returning relevant and intuitive results. Even in “keyword phrase search” scenarios.
3. How to Configure Custom Search in Drupal 8: Use ExpertRec
This search-as-a-service solution ships with a heavy load of useful features, such as:
manageable search ranking
typo tolerance
easy UI control
results as you type
custom facets
So, you might want to consider it for evaluation. Just put its robust set of features against your site search needs.
4. Use the Cludo Site Search Solution
What if you could turn the site search on your Drupal website into a powerful “insights generator”?
Source: Drupal.org
One that would provide you with valuable and, most of all, actionable insights on your users' search behavior. Just imagine turning all that powerful data into highly relevant site search experiences for your visitors.
Cludo's that fully customizable on-site search tool, that “spoils” you with unique features like:
semantic search
customizable index
machine learning-driven autocomplete
Find out more about this tool and what it can offer you from our post on Cludo as an alternative to Google Site Search.
5. Boost the “Title” Field to Improve Search Relevancy
Say you have a “How to speed clean a kitchen” page on your website (we're assuming that you run a professional cleaning business, remember?).
Now, if a website visitor types “how to clean my kitchen quick” you most certainly want that specific page to show up first, right?
Well, to make that happen you simply boost the title field. Here's how:
go to /admin/config/search/search-api
click “Edit”, next to the index that you're targeting
click “Add Fields”
look for “Title”, under the “Content” heading
hit “Done”
look for your title field scrolling down your list of fields and replace its “Type” from “Strong” to "Fulltext"
configure the “Boost” dropdown that pops up: set the title, fill in the special keywords field...
click the “Save Changes” button
6. Configure the Search View to Your Needs
“How to configure custom search in Drupal 8?” You tweak the default search view...
The good news is that Search API connects with Views, “spoiling” you with loads of flexibility when setting the way your search results get displayed.
But the great news is that you can go even further:
Define a field-based view, add the title and excerpts fields so that your website returns a Google-like title and snippet to its users.
7. Enable the Indexer to “See” the Whole Node
Let me guess: you, too, are using Paragraphs on your Drupal site.
Who doesn't, right? All that flexibility that you get when putting together your web pages is just... irresistible.
Then, you must have already bumped into one “minor” issue:
Your search indexer can't “see” the entire content on a page, since the Paragraphs module breaks it into multiple little pieces.
Luckily, Search API comes to the rescue!
Just add the “Rendered HTML Output” field to your index and you'll enable the indexer to “see” the whole content on a page. Just like your website visitors see it: with references, paragraph entities and all that...
And here's how you incorporate this field:
go to /admin/config/search/search-api
click “Edit”
click “Fields” on top of the page
click “Add Fields”
look for “Rendered HTML Output (rendered_item)” under “General”
click “Add”
Word of caution: you'll then need to select a view mode for all the content types that your search index can access. Make sure you go with the “default” mode (unless you've set up a custom mode of your own) and not the “search results highlight input”.
8. Add a Custom “search_keywords” Field to the Targeted Content Types
Remember the example at the beginning of this post (the one with the “office cleaning” search phrase)?
Now, it's about time we found an answer to this question:
How can you give your content team more control over the returned search results? Over the results ordering...
You set up a new field called “search_keywords” and integrate it with every content-type/bundle that you're targeting:
go to /admin/config/search/search-api
click “Edit”
click “Fields”
click “Add Fields”
look for your newly created “Search Keywords”, under “Content”
click “Add”
look for your new field in the fields list
change its type from “String” to “Fulltext”
configure the “Boost” dropdown showing up (consider setting it to 21...)
click “Save Changes”
The END!
Here are no less than 9 different solutions to your “How to configure a custom search in Drupal 8?” type of dilemma.
Which one would you go with? And why?
Give us a clue in the comments here below.
Image by Republica from Pixabay
Adriana Cacoveanu / Nov 08'2019