Have you just launched your website and it got hit by an unexpected... “tsunami wave of traffic? Or maybe it's that crappy web host that couldn't back it up? Or is your WordPress website a few years old already? And has it grown by now into this heavy block of content and ecosystem of plugins dragging it down? Or you're considering switching your website to WordPress and you're concerned about the fluctuations in the page loading speed? No matter which one of these scenarios fits your own, now you must be wondering: “What are the best WordPress cache plugins for 2019?”
For, there sure are many, both paid and free. And almost every one of them has its own “fan club” of developers and WordPress website owners.
But does “the most popular” also mean the most effective for your own theme and setup?
Now, to free you of the burden of evaluating dozens of highly-recommended caching plugins for WordPress, we've done it for you.
The result? A shortlist of 5 WP cache plugins with the highest scores at successive speed tests.
But First: What Is a Caching Plugin? And Why Do You Need It?
Here's a “non-WP cache plugin for WordPress” scenario:
A user accesses a page on your WordPress website. Then a whole “madness” of PHP code executions and database queries for retrieving data goes on “behind the curtains”. And this process — to generate web page content dynamically — is being performed at the cost of page loading speed.
Now, if the same user accesses your website after you've integrated it with one of the best WordPress cache plugins for 2019, here's what happens:
The caching plugin will have turned that page from a dynamic into a static HTML page. Its content (written text, plus other page elements that don't need to be re-loaded every single time) is already saved and copied on the server, in a cache folder. And so, it gets served in an instant.
No more time-consuming database queries to retrieve the required data. No more code executions in the background for displaying that page.
A bit more clear now why you need a WordPress caching plugin? Why it becomes both the handiest and the most critical tool in your “performance tuning” emergency kit?
Summing up: It's enough for a page on your website to be accessed just once. Then, your cache plugin will instantly create a static version for it. From then on, each time a visitor accesses that web page, he/she will be served its static version. It will no longer be dynamically generated.
With a huge impact on your web page's loading time.
1. W3 Total Cache
A plugin that starts caching right out of the box.
Just install it and... that's it. No need to work your way through pages of settings to turn on its core functionality.
It comes full-featured by default:
minification and GZIP compression support
object/browser/page cache (and so on)
AMP and SSL support
CDN support
support for importing attachments straight into the media library
Still, to be 100% sure that it works at full capacity right from the start:
access the General page
turn on the “Toggle all caching types” option
Does it help to know that high performing websites like Web Designer Depot, Mashable and Smashing Magazine have this caching tool plugged in?
Or that it boasts over 1 million active installs?
Main drawbacks
Things get a bit... overwhelming (especially for newbies) when it comes to custom-tuning its functionality to suit specific caching needs. Let's say that you want to update the default life of the cached data.
And I'm taking here about no less than 16 settings pages, with tons of customization options for you to scan through. There's one for every type of caching (page, database, browser etc.)
2. Comet Cache, One of the Best WordPress Cache Plugins for 2019
Another one of those “install and run” type of caching plugins. Simple set up and ease of use.
Some of its specific features, compared to other plugins, are:
the use of snapshots for speeding up the reading
serving cached content only to non-logged in visitors and to those who haven't submitted a comment recently
accompanying each one of its configuration settings by detailed explanations
Note: do keep in mind that its free version will provide you with basic features only; for more advanced ones you'll need to upgrade to the premium version.
Main drawbacks
Having to pay for its pro features and its whole “network” of configuration options might discourage some of the users.
3. WP Super Cache
Free, “notorious”, highly vetted, with a simple set up, and overloaded with customization options.
This is the recipe behind the best WordPress cache plugins for 2019 and WP Super Cache is one holding all the “ingredients”.
And when I say “simple set up”, I think of its Options page with no more than 7 tabs.
Being basically pre-configured already, you'll only need to:
go to "Easy" tab and enable caching
keep monitoring your cached pages in the “Contents” tab
It's built a reputation of serving static content to 99% of your site's visitors. And it relies on PHP and mod_rewrite for that.
“What does WP super cache do?”
Its built-in features range from:
cache pre-loading
to content delivery networks support
REST API endpoints enabling you to access the settings
GZIP compression
dynamic caching
caching for mobile users
to scheduler for clearing the cached pages
In case you want to tune its performance, you can always go to “Advanced Settings” and enable more caching features like:
compressing files
“Don't cache pages for known users”
Main drawbacks
The fact that it doesn't deliver static files to logged in users and that it's not fully compatible with some WP themes might restrain some from using it.
4. WP Rocket
Not just one of the best WordPress cache plugins for 2019, but one of the most beginner-friendly, as well.
And one of the plugins that come with a price tag on...
All it takes for you is to activate it and... you're all set. Its crawler will instantly start fetching your web pages to set up the cached files.
It will also turn on all the default caching features such as:
page cache
cache-preloading
GZIP compression
No need for you to manually enable them.
As for its optional features, I would mention:
lazy loading images
DNS pre-fetching
minification
CDN support
As already mentioned, the plugin triggers lazy images loading, meaning that images on your WordPress website get downloaded as they're being scrolled down. Not in advance.
And this particular feature alone is already powerful enough to speed up your page loading times dramatically. Especially if you have lots of images on your web pages.
Its Settings tab is a 7-section area that's not even close as intimidating as W3 Total Cache's one.
In fact, there's only one reason for using the Advanced Options tab:
To select the files and the pages that the plugin shouldn't minify and cache.
Main Drawbacks
The obvious one: it doesn't have a free version.
5. WP Fastest Cache
If you're looking for a... minimalist, yet efficient caching plugins, this might just be the one.
Fewer customization options might translate as fewer risks to get tangled up in configuration settings. You get to grips with it within minutes.
To give you an idea:
There's only one settings page, divided into 3 tabs: display settings, delete cache and minified files and set up the rate for deleting the cached files.
“And how does it work?”
It uses mod_rewrite to set up static files on your WordPress website.
Now, don't think that less tweaking options means less critical core features.
On the contrary. Out of the box, the plugin provides you with:
compression
browser caching
minification
options for pairing CSS with JavaScript files
SSL and CDN support
cache timeout for certain pages
Simplicity and efficiency at its best! Just click the corresponding checkbox and enable the feature you need.
Main drawbacks
It doesn't support WordPress Multisite.
The END!
These are, according to the speed tests performed on them and the no. of active installs, the best WordPress cache plugins for 2019.
Is the one you've been using on this list?
RADU SIMILEANU / Feb 08'2019
API first, responsive Bartik, headless and decoupled Drupal, Layout Builder, React admin UI... Drupal's evolved tremendously over these 18 years! Yet: the emails that we send out via its otherwise robust email sending system aren't different from those we used to send a... decade ago. And customers expect rich experiences outside your Drupal website or app. While website administrators expect to be enabled to easily manage, via the admin UI, their email content templates. So: how do you send HTML emails in Drupal 8?
Without relying on external services, of course...
And who could blame customers for expecting 2019-specific user experiences? Experiences that HTML-enabled emails deliver through their great features.
Features that support Drupal editors' marketing efforts, as well:
traffic-driving hyperlinks; you get to link to your landing page right from the email
visually attractive custom design; emails that look just like some... microsites
all sorts of design details that reinforce your brand: buttons over cryptic links, responsive design, templated footers and headers
web fonts
QR codes
hierarchical display of content, that enhances readability and draws attention to key pieces of content and links in your email
images and attachments
tracking for monitoring opens
And speaking of admin and/or editors, the questions they ask themselves are:
“How can I easily theme the emails to be sent out?”
“How can I change their content templates right from the admin UI?”
And these are the questions that I'll be answering to in this post.
Here are your current options at hand — 3 useful Drupal 8 modules — for easily crafting and sending out HTML emails that appeal and engage.
1. The HTML Mail Module
It does exactly what you'd expect:
It enables you to configure HTML emails from Drupal 8.
It's the Drupal 7 go-to option whenever you want to go from plain text emails to HTML-formatted ones. A module available for Drupal 8 in alpha version.
Furthermore, it integrates superbly with the Echo and the Mail MIME modules.
2. The Swift Mailer Module, The Best Way to Send HTML Emails in Drupal 8
Swift Mailer is the highly recommended method for configuring Drupal 8 to send out visually-arresting, HTML emails.
Since you can't (yet) send them right out of the box with Drupal...
The module stands out as the best option at hand with some heavy-weighing features:
it supports file attachments
it supports inline images, as well
it enables admins to send HTML (MIME) emails
… to send them out via an SMTP server, the PHP-provided mail sending functionality or via a locally installed MTA agent
Note: you even get to use this module in tandem with Commerce to send out your HTML-enabled emails. There's even an initiative underway for replacing Drupal's deprecated core mail system with the Swift Mailer library.
And now, here are the major configuration steps to take to... unleash and explore this module's capabilities:
first, set up the Swift Mailer message (/admin/config/swiftmailer/messages) settings to use HTML
next, configure the Swift Mailer transport settings (/admin/config/swiftmailer/transport) to your transport method of choice
and finally, configure the core mail system settings to use this module for the formatter and the sender plugins
And if you're not yet 100% convinced that the Swift Mailer module is significantly superior to Drupal's default mail system, here are some more arguments:
it enables you to send... mixed emails: both plain text and HTML-enabled
it provides HTML content types
it supports various transport methods: Sendmail, PHP, SMTP (the current mail system supports but one method)
it enables you to integrate key services with Drupal — like Mandrill, SendGrid — right out of the box
it incorporates a pluggable system, allowing you to further extend its functionality
How about now? Are these strong enough arguments that Swit Mailer's the way to send HTML emails in Drupal 8?
3. The PHPMailer Module
Another option for configuring Drupal 8 to send out HTML emails is the PHPMailer module.
How does it perform compared to Swift Mailer?
It's not pluggable
it's not as easily customizable as Swift Mailer
it's already embedded in the SMTP module (in fact, in Drupal 8 the default mail interface class is named “PHPMail” instead of DefaultMailSystem)
What features does it share with Swift Mailer?
it enables you to send out HTML-enabled emails with Drupal
it enables you to add attachments to your emails
it, too, enables you to send out mixed emails
it, too, supports external SMTP servers
Moreover, you can extend its core functionality by integrating it with the Mime Mail component module (currently in alpha 2 version for Drupal 8).
4. The Mime Mail Component Module
Briefly, just a few words about Mime Mail:
as already mentioned, it's a “component module”, that can be used for boosting other modules' functionality
it enables you to send out HTML emails with Drupal: your mail would then incorporate a mime-encoded HTML message body
it enables you to set up custom email templates: just go to your mimemail/theme directory, copy the mimemail-message.tpl.php file and paste it into your default theme's folder; this way, your email will take over your website's design style
any embedded graphics gets Mime-encoded, as well, and added as an attachment to your HTML email
do some of your recipients prefer plain text over richly formatted HTML emails? Mime Mail enables you to switch your email content over to plain text to meet their specific preferences
The END!
Now that you know your options, it's time to step out from the (too) long era of rudimentary, plain emails sent out with Drupal.
... and into the era of richly formatted HTML emails, that will:
enrich your customers' experiences
enhance Drupal 8 site admins' experience
Adriana Cacoveanu / Feb 06'2019
Just imagine it: Drupal 8's robust features as a CMS, the flexible e-commerce functionality of the Drupal Commerce ecosystem and a JavaScript framework for the front-end! All in the same native mobile app! You can easily achieve this “combo” — a reliable content repository & a JS-based front-end providing a fantastic shopping cart experience — if you just... decouple Drupal Commerce.
For why should you trade Drupal's battle-tested content authoring and administration tools for a more interactive user experience?
And why should you give up on your goal to deliver richer cart experiences just because Drupal 8 can't rival the JavaScript in terms of advanced native mobile app functionality?
push notifications
complex shopping options
enabling users to manage their own delivery times and places
... to configure various aspects of their orders and so on
Just leverage a decoupled Drupal Commerce strategy in your shopping app project and you can have both:
Drupal as your secure content service
the front-end framework of your choice “in charge” with the user experience
In this respect, these are the most useful Drupal tools at hand for implementing an API-based headless architecture:
1. Headless Commerce Comes Down to...
… separating your commerce stack (back-end content handling area, data store etc.) from the user interface.
Or the “head”, if you wish.
The presentation layer would “retrieve” content from the back-end content storage area and is the one fully “responsible” with delivering fantastic user experience.
This way, you're free to choose your own front-end tools.
Now, why would you consider choosing a decoupled architecture for your e-commerce solution? The benefits are quite obvious and not at all negligible:
higher flexibility and scalability (that JS frameworks are “famous” for)
freedom to customize your app to your liking (for every platform or/and device)
richer, more interactive shopping experiences
2. Decoupled Drupal Commerce... Out of the Box? The Commerce Demo
Narrowing our focus down to... Drupal, to Drupal Commerce, more specifically, the question's still there:
“How do I decouple Drupal Commerce?”
Considering that:
there are specific challenges that such a decoupled front-end architecture poses
Drupal solutions like Forms API and Views won't fit your specific (probably quite complex) design implementation requirements
Luckily, the Commerce Guys team has already faced and solved these challenges.
First of all, they've put together the Commerce Demo project, a store providing default content to be “injected” into Drupal.
Secondly, their attempt at integrating a design meant to support advanced functionality, for richer shopping cart experiences, resulted in 2 new modules:
Commerce Cart API
Commerce Cart Flyout
More about them, here below...
3. Useful Modules to Decouple Drupal Commerce
Here's a collection of the most... relevant modules that you could use in your headless Drupal Commerce project:
3.1. The Commerce Cart API Module
It's no less than a handy Drupal tool that enables you to custom build your shopping cart widget.
3.2. The Cart Flayout Module
The go-to module when you need to ajaxify the “Add to cart” form in your shopping app.
Basically, what it does is:
Provide a sidebar that “flies out” once the user clicks the “Add to cart” button or the cart block.
If I were to dive into details a bit, I'd add that the flyout enables users to:
view the products in their shopping carts
remove all the items there
update the quantity of a specific item
Should I add also that Cart Layout comes with no less than 9 different Twig templates, for various parts of the module? By leveraging Drupal's library management feature you can easily override these JS segments of the module.
And not only that you get to customize it to suit your needs entirely, but:
it comes with a well structured JS logic
it's built on top of Backbone
… which translates into an efficient models-views separation.
3.3. Commerce 2
Use Drupal Commerce 2 as the core structure of your e-commerce project.
Being an ecosystem of Drupal 8 modules and “spoiling” you with unmatched extensibility via its APIs, Drupal Commerce empowers you to implement all kinds of headless commerce scenarios.
It enables you to use Drupal as your content/data (user and order-related info) repository and to easily serve this content to your mobile app. To your end-users.
3.4. The Commerce Recurring Framework Module
Some of its handy charging & billing features include:
configurable billing cycles
configurable retries in case of payment declines
both prepaid and postpaid billing systems
3.5 The JSON API & JSON API Extras Modules
Need to decouple Drupal Commerce, to enable a full REST API in JSON format?
It's as easy as... enabling a module (or 2 at most): the JSON API module.
What it does is:
Expose the API so you can vizualize the data in JSON format.
And Drupal's built and perfectly adapted to support JSON API, which turns it into the go-to option when you need a back-end content repository for your headless shopping app.
In addition to this module, feel free to enable JSON API Extras, as well. It comes particularly handy if you need to customize the generated API.
It allows you to:
override the name of your resources
change their path...
You'll then have a specific place in your app's user interface where you can visualize your content paths.
Once you have your data in JSON format, safely stored in your back-end content creation & moderation Drupal area, you're free to... serve it to your mobile shopping app!
The END!
And these are some of the already tested tools and techniques to decouple Drupal Commerce so that you can deliver richer, more interactive cart experiences.
Have you tried other modules/methods? Writing custom JavaScript code... maybe?
RADU SIMILEANU / Feb 01'2019
The future is now... That predicted future where Node.js dominates the landscape of the application and web development technologies. And so, the “tormenting” question that you're dealing with right now must be: “But what are the best Node.js frameworks in 2019?”
Followed closely by:
“And which one of them should I use? Which one of these web server frameworks best fits my own project requirements?”
And, as a Quora user pointed out:
“This is just like asking what clothes to wear out. It depends on where you're going right?”
To give you a hand, we've weighed the pros and cons, both the developers' and the end-users' reviews. We've compared their “stocks” of GitHub stars, and shortlisted the Node.js frameworks to... 5 frameworks holding a higher scope than the rest:
But First, What Is a Node.js Framework More Precisely?
First of all, yet without getting knee deep into technical jargon, let's briefly pass in review the main reasons why Node.js — a tool for developing server-side web apps quick and easy — has got so influential:
It enables developers to build fast and scalable server-side apps.
And it all comes down to these 2 key benefits.
All that talk about:
its innovative event-based I/O model
about it being conveniently lightweight
about single-threaded asynchronous programming
… can be reduced to these 2 “irresistible” advantages.
And by “fast” I don't refer to page loading times only, but to the fact that it speeds up the development process itself, as well:
With Node.js implementing the server side, developers don't need to “joggle with” 2 languages anymore. One for the back-end/server-side and one for the front-end/client-side.
Now, back to the initial question:
“What is a Node.js framework?”
Take it as some sort of Node.js-based abstract design or “skeleton” that you can build your own custom code on.
An... empowering “skeleton” that comes packed with:
a set of tools
guidelines and best practices
… that help you/your development team quickly prototype and develop your project.
And, since its out-of-the-box features help you keep code consistency throughout the team, a Node.js framework will implicitly:
boost your productivity
enhance your app project's scalability
Does that answer your question?
1. Express.js
It stands out as “the minimalist” framework in our list here:
A Node.js-based technology that takes on the role of a middleware between our servers and routes.
And its robust APIs is one of the main “culprits” for its increasing popularity — one of the best Node.js frameworks in 2019.
It practically enables app developers to set up routes to send/receive requests between the database (MongoDB) and the front-end (Angular).
Another one of its “selling points” is given by the heavy load of packages that you can just “inject” into the Express.js framework to extend its functionality.
Benefits:
low learning curve
short app development cycle time
ideally customizable
mostly browser-focused, meaning that templating and rendering comes as a default feature
great 3rd party integration (Pug, EJS, Mustache and other template engines and modules available on NPM)
Drawbacks:
its code organization
event-driven callbacks (a type of architecture that “tempts” you with unmatched flexibility at the price of... unwanted complexity as your app scales up)
2. Meteor JS
The key advantage that propelled Meteor in the 5 best Node.js frameworks in 2019? Real-time updating.
And there's more! It's built to power really large projects (e.g. Reaction Commerce) and, if documentation is a particularly heavy-weighing criterion for you, this framework's backed by a large community.
One that has already put together rich and clear documentation to help you get your web app up and running in no time.
Benefits:
real-time testing tool and debugging
a wide range of libraries and packages to boost its core functionality with
seamless client-server communication
Drawbacks:
there's no native widget library
no MongoDB support
… PWA support
… or rendering on the server side, either
3. Sails.js, One of the Best Node.js Frameworks in 2019
The most... compatible Node.js framework in our list, we could say.
For Sails.js “gets along well” with:
almost all databases
most of the front-end technologies, as well (Angular, Android/Java, Backbone, React, iOS/Objective C)
the great majority of adapters: Mongo, MYSQL, Local Disk, Redis, PostgreSQL
And it's not at all “picky” when it comes to the types of controllers, models, views, adapters, and configuration files that the applications that it powers might include.
In short: it's a highly compatible framework with data-based APIs and service-oriented, scalable architecture. One that gives you a more... robust “skeleton” to start with, we might say.
Benefits:
it separates business logic from presentation logic
it can store data anywhere
it speeds up the Rest API building process
no additional routing
generates free JSON API
good Socket.io support
Drawbacks:
it's one of the... slow Node.js frameworks
time-consuming project development process
poor asset management
4. Koa.js
Developed by the same team that designed Express.js, Koa sets itself apart from the rest of the Node.js frameworks in our top here with some unique features:
it uses next-generation methods of ES6 that enables you to work without callbacks
… and grants you more control when it comes to error handling
there's no middleware, which means that the lines of code are more granular, the middlewares are more... component-based, more cascaded
… thus granting you with increased control over your configuration
Why has the Express.js team decided to build a new Node.js framework? What have been their major goals:
to build a smaller sized framework compared to Express.js
…. a more expressive one
to provide developers with a more robust “scaffolding” for building their web apps and APIs on
Benefits:
easier to control error handling
it's significantly lighter than other frameworks
modular structure
it gave up on callbacks and thus removed all the well-known asynchronous issues
support for Sync/await keywords
cascading middlewares
Drawbacks:
it's not compatible with express-style middleware, with Node.js middleware
there isn't a large community to rely on for support
5. LoopBack.js
One of the best Node.js frameworks in 2019 that “spoils” you with:
a dynamic API web browser
easy-to-use CLI
What makes it unique in our list here? The fact that it empowers developers to build their own models based on their own dynamic models or schemas.
To come up with their own server API, that would be further assigned to a new server. Pretty much like building an API that's proxy for... another API.
In addition to that, it supports a whole range of databases: PostgreSQL, MySQL, Oracle, MongoDB and REST services.
Benefits:
fast development cycle
modular and structured code
available add-on components for Oauth2, 3rd-party login, file management
support for browser and native mobile SDKs: iOS, Android/Java, JavaScript browser
you can rapidly create dynamic end-to-end REST APIs
Drawbacks:
monolithic, opinionated architecture
steep learning curve
Final Word
As already mentioned, at the beginning of this post: a mere inventory of the best Node.js frameworks in 2019 is not the answer.
It's the best web server framework for your own project's requirements that you need.
What are your priorities when it comes to the benefits that you “reap” from using one Node.js framework over the other? Is it:
top speed?
fast development
high maintainability
rich documentation and a thriving community backing it up?
Friendly advice: don't invest all your resources in learning one such Node.js framework since new, more tempting and feature-rich ones will emerge. Instead, learn the business in the front-end/back-end or the language itself (JavaScript) to future-proof your... investment.
RADU SIMILEANU / Jan 31'2019
Build, configure and deploy all necessary resources with just a few commands... The serverless framework empowers you to streamline your entire development workflow. But what if you need to tackle some project-specific issues? Then you extend its core functionality to suit your needs by implementing the best serverless plugins available.
For you might need to:
bundle a Lamba function with Webpack
empty your buckets before removing them
copy data from production to development table
So, what are your options?
to scan through the pile of already developed serverless plugins, looking for the one that addresses that specific issue
to write your own custom serverless plugin
This post here focuses on the first option. I'll reveal to you the 6 most useful community-driven plugins for the serverless framework.
1. But First: What's the Core Functionality of the Serverless Framework?
In other words:
What do you get out-of-the-box?
Here's a short list of tasks that go from being manually carried out to... automated when you go serverless:
creating, configuring, and deploying the needed resources (API Gateway and Lambda functions)
storing your code (and configuration) into a repository for later use
setting up database tables for your functions
configuring serverless templates for your subnets and VPC's
In other words: using a serverless framework streamlines all those tedious tasks of writing code on the console, configuring your resources, managing your team's workflow...
2. 6 Best Serverless Plugins to Consider for Your Next Project
And the serverless framework itself is an “ecosystem” of plugins.
Nevertheless, there are cases when its core functionality doesn't meet all your project's requirements and you need to... extend it.
Before you rush to write your own plugin, you might want to have a look at what's already been built. In this respect, here's a list of the most widely used ones:
2.1. Serverless Webpack
In a situation where you need to bundle your lambda functions with Webpack?
Let this serverless plugin here handle the job for you.
2.2. Serverless Dotenv
Here's a common scenario:
You need to load your variables, currently stored in an env file, into your serverless yaml config.
Then, this is the serverless framework plugin that comes to your rescue. It enables you to dynamically preload env files into serverless.
2.3. Serverless Offline
Need to run everything on your local machine before you deploy it?
Integrate this plugin here into your framework and it will emulate AWS Lambda and API Gateway on your PC, streamlining your whole development process.
2.4. Serverless Mocha Plugin
One of the best serverless plugins, a mocha-based one, that provides you support for your test-driven development flow.
2.5. Aliyun Function Compute
Is “injecting” Alibaba Cloud Function Compute support into your serverless app one of your project-specific needs?
Well, then this is the plugin you need! It's been built to enable support for this event-driven compute service into the serverless framework.
2.6. Serverless S3 Remover
What do you do with all those buckets that you will have been “joggling” with once you decide to delete your stack? The one you will have “overly exploited” by then, during your tests?
Well... you remove them. Along with the content that they store.
How? You let this plugin here handle the “decluttering task” for you.
The END!
These are the 6 best serverless plugins already available that you can implement into your projects.
Which one's the perfect fit for your current project-specific needs?
Photo from Unsplash
RADU SIMILEANU / Jan 19'2019
Accidentally creating duplicate content in Drupal is like... a cold:
Catching it is as easy as falling off a log.
All it takes is to:
further submit your valuable content on other websites, as well, and thus challenging Google with 2 or more identical pieces of content
move your website from HTTP to HTTPs, but skip some key steps in the process, so that the HTTP version of your Drupal is still there, “lurking in the dark”
have printer-friendly versions of your Drupal site and thus dare Google to face another duplicate content “dilemma”
So, what are the “lifebelts” or prevention tools that Drupal “arms” you with for handling this thorny issue?
Here are the 4 modules to use for boosting your site's immunity system against duplicate content.
And for getting it fixed, once the harm has already been made:
1. But How Does It Crawl into Your Website? Main Sources of Duplicate Content
Let's get down to the nitty-gritty of how Drupal 8 duplicate content “infiltrates” into your website.
But first, here are the 2 major categories that these sources fall into:
malicious
non-malicious
The first ones include all those scenarios where spammers post content from your website without your consent.
The non-malicious duplicate content can come from:
discussion forums that create both standard and stripped-down pages (for mobile devices)
printer-only web page versions, as already mentioned
items displayed on multiple pages of the same e-commerce site
Also, duplicate content in Drupal can be either:
identical
or similar
And since it comes in “many stripes and colors”, here are the 7 most common types of duplicate content:
1.1. Scraped Content
Has someone copied content from your website and further published it? Do not expect Google to distinguish the copy from its source.
That said, it's your job and yours only to stay diligent and protect the content on your Drupal site from scrapers.
1.2. WWW and non-WWW Versions of Your Website
Are there 2 identical version of your Drupal website available? A www and a non-www one?
Now, that's enough to ring Google's “duplicate content in Drupal” alarm.
1.3. Widely Syndicated Content
So, you've painstakingly put together a list of article submission sites to give your valuable content (blog post, video, article etc.) more exposure.
And now what? Should you just cancel promoting it?
Not at all! Widely syndicated content risks to get on Google's “Drupal 8 duplicate content” radar only if you set no guidelines for those third-party websites.
That is when these publishers don't place any canonical tags in your submitted content pointing out to its original source.
What happens when you overlook such a content syndication agreement? You leave it entirely to Google to track down the source. To scan through all those websites and blogs that your piece of content gets republished on.
And often times it fails to tell the original from its copy.
1.4. Printed-Friendly Versions
This is probably one of the sources of duplicate content in Drupal that seems most... harmless to you, right?
And yet, for search engines multiple printer-friendly versions of the same content translates as: duplicate pages.
1.5. HTTP and HTTPs Pages
Have you made the switch from HTTP to HTTPs?
Entirely?
Or are there:
backlinks from other websites still leading to the HTTP version of your website?
internal links on your current HTTPs website still carrying the old protocol?
Make sure you detect all these less obvious sources of identical URLs on your Drupal website.
1.6. Appreciably Similar Content
Your site's vulnerable to this type of duplicate content “threat” particularly if it's an e-commerce one.
Just think of all those too common scenarios where you display highly similar product descriptions on several different pages on your eStore.
1.7. User Session IDs
Users themselves can non-deliberately generate duplicate content on your Drupal site.
How? They might have different session IDs that generate new and new URLs.
2. 4 Modules at Hand to Identify and Fix Duplicate Content in Drupal
What are the tools that Drupal puts at your disposal to detect and eliminate all duplicate content?
2.1. Redirect Module
Imagine all the functionality of the former Global Redirect module (Drupal 7) “injected” into this Drupal 8 module!
In fact, you can still define your Global Redirect features by just:
accessing the Redirect module's configuration page
clicking on “URL redirects”
Image Source: WEBWASH.net
What this SEO-friendly module does is provide you with a user-friendly interface for managing your URL path redirects:
create new redirects
identify broken URL paths (you'll need to enable the “Redirect 4040” sub-module for that)
set up domain level redirects (use the “Redirect Domain” sub-module)
import redirects
Summing up: when it comes to handling duplicate content in Drupal, this module helps you redirect all your URLs to the new paths that you will have set up.
This way, you avoid the risk of having the very same content displayed on multiple URL paths.
2.2. Taxonomy Unique Module
How about “fighting” duplicate content on your website at a vocabulary level?
In this respect, this Drupal 8 module:
prevents you from saving a taxonomy term that already exists in that vocabulary
is configurable for every vocabulary on your Drupal site
allows you to set custom error messages that would pop up whenever a duplicate taxonomy term is detected in the same vocabulary
2.3. PathAuto Module
Just admit it now:
How much do you hate the /node125 type of URL path aliases?
They're anything but user-friendly.
And this is precisely the role that Pathauto's been invested with:
To automatically generate content friendly path aliases (e.g. /blog/my-node-title) for a whole variety of content.
Let's say that you want to modify the current “path scheme” on your website with no impact on the URLs (you don't want the change to affect user's bookmarks or to “intrigue” the search engines).
The Pathauto module will automatically redirect those URLs to the new paths using any HTTP redirect status.
2.4. Intelligent Content Tools
Personalization is key when you strive to prevent duplicate content in Drupal, right?
And this is precisely what this module here does: it helps you personalize content on your website.
How? Through its 3 main functionalities delivered to you as sub-modules:
auto tagging
text summarizing
detecting plagiarized content
Leveraging Natural Language Processing, this last sub-module scans content on your website and alerts you of any signs of duplicity detected.
Word of caution: keep in mind that the module is not yet covered by Drupal's security advisory policy!
3. To Sum Up
Setting a goal to ensure 100% unique content on your website is as realistic as... learning a new language in a week.
Instead, you should consider setting up a solid strategy ”fueled” by (at least) these 4 modules “exposed” here. One that would help you avoid specific scenarios where entire pages or clusters of pages get duplicated.
Now, that's a far less utopian goal to set, don't you think?
Adriana Cacoveanu / Jan 16'2019
And I'm back, as promised, with a handful of reasons — ranging from “the usual suspects” to more nuanced ones — why AI projects fail.
From:
getting too absorbed in keeping your technological assets up to date to the point of skipping to put together a solid business strategy for your AI implementation
to getting overly excited about AI and trying to “force integrate” it into... everything
to skipping to further maintain it, once launched
… there are quite a few mistakes that you can easily avoid and thus foolproof your AI project.
So, let me expose these hidden “traps” to you:
Mistake #6: You Put Technology Before a Solid Business Strategy
AI-powered or not, it's still a... business that you're running, right?
So, getting focused on technology only, turning it into the unique driver of “business” value is simply... non-realistic.
First, you need to build your solid business strategy. One to include:
thorough research of your target markets
all the technological assets needed to reach your AI project's goal
... along with all the resources to be invested, of course
Technology, no matter how advanced, never comes before business strategy.
That, of course, if it's business value that you try to achieve and not just... building AI for AI's sake.
Mistake #7: You Cut Down on Testing Time
Probably one of the most common reasons why AI projects fail:
You get all too eager (and over-confident) to release your AI-powered software out into the wild and you deliberately skip some major debugging phases.
To avoid this trap, make sure to include, while setting up your business strategy, the due resources for properly testing your AI project before “setting it free”.
For, placing it into the spotlight prematurely, faulted and vulnerable to future bugs, will “doom” your AI solution to years of... public distrust.
Mistake #8: You Get Stuck in a Never-Ending Development Cycle
Now, mind you don't avoid a pitfall only to... fall into the next one:
A never-ending design-develop-design-develop... process.
For, yes, one of the worst AI mistakes is to release a buggy, poorly tested AI-enabled software product.
But it's equally risky to keep postponing its launch and get tangled up in this loop of continuously polishing it and testing it.
You just risk having your competition leverage all the AI opportunities out there while you're constantly updating your software.
Instead, consider launching the best possible version of your AI software. Then, collect the relevant data and the message coming from your target market to iterate and release an updated version.
Mistake #9: Baking AI into Everything- Why AI Projects Fail
Trying to turn AI into an “all-purpose” tool is yet another frequent mistake behind many AI fails.
I know you must be infatuated with AI (we, too, are infinitely excited with the still unexplored opportunities of artificial intelligence). Yet, do keep in mind that the right sequence is the following:
You first identify the specific need/problem in the market and then come up with the suitable AI solution for it!
You don't just jump on the latest AI technology and... force-fit it into any software product.
For, let's face it:
There are tasks where AI rocks and tasks where human staff's emotional intelligence is needed (take certain customer service scenarios, for instance).
So, don't try to bake AI into... everything or your project will only swell the ranks of failed AI projects.
Mistake #10: You Skip Further Maintaining Your AI Solution
A “launch and run” strategy won't propel your AI project too far ahead...
That is:
Just like any other product, an AI-powered software product needs periodical maintenance. Regular “infusions” of new methods, new models and training data.
The more complex it gets, the more crucial a solid maintenance strategy becomes.
So, mind you do not underrate this phase. It's another too common reason why AI projects fail.
The END!
These are the 10 most “popular” AI project mistakes. Which one(s) had you been more “vulnerable” to before seeing them all exposed in this post here?
Photo by Rock'n Roll Monkey on Unsplash.
Adriana Cacoveanu / Jan 14'2019
Running an AI startup? Or just planning to implement AI technology into your next software product? Then you sure don't run short on AI advice, right? Everyone's telling you why you should adopt AI, how to successfully incorporate AI into your business processes... But no one tells you why AI projects fail.
What mistakes you should avoid to foolproof your AI implementation.
What are those gotchas — going from obvious pitfalls to more subtle traps — that can easily change your AI project's results from success to major failure?
It might not be as resounding as Amazon Echo's nasty blunder:
The Alexa-powered device decided to throw a “surprise party”, with loud music and all that jazz, once it got a house in Berlin all for itself...
Yet it would still mean flushing all your high hopes for AI and the invested resources down the drain...
Now, back to the most common reasons why so many fail with AI. Or, better said:
The 10 AI project mistakes to avoid.
Mistake #1: You Start Big and Spread Yourself Too Thin
In other words:
Don't bite off more than you can chew!
I know you might be overexcited about the incredible AI potential right now. But jumping on a too complex AI project, with long time horizons, is the perfect “recipe” for failure.
For, let's face it:
Expecting AI to instantly transform all your business processes, to go from no value to 100% value for your AI project is as realistic as... checking off all your New Year's resolutions on the 1st of January.
Instead, start small and grow big.
Take your time to learn more about the technology you're implementing. To gradually gain all the needed expertise, to fail fast and organically grow your AI project.
Rather than artificially pumping it up.
Mistake #2: You Keep Your R&D Expenses to a Minimum
Failing to see research & development spending as an investment is one of the most common AI project mistakes.
In short, getting stingy when it comes to investing in:
training programs for your employees
research on advanced algorithms
heavy experimentation with those cutting-edge AI technologies that you expect your team to develop
computing infrastructure
… is not a way to save money. It's the shortest path to AI project failure, actually.
Mistake #3: Vague Goals, The Key Reason Why AI Projects Fail
What's your vision?
What short-term goals have you set for your specific application of AI, in your... specific industry (be it health care or finance or...)?
Make sure you articulate those goals crystal clear and share them with your team.
Oh, you don't have a vision? Not just yet? Only high hopes and expectations about how AI will completely transform your business?
Or is it just a few ambiguous, fragmented goals and vague objectives that you have at hand?
Then I'm sorry to break it to you: no clear vision means no great value that you could “reap” from your AI project.
Mistake #4: Your AI-Powered Software Doesn't Meet Any Real Need
Your new AI technology needs to be usable.
And that says it all:
Building AI for AI's sake is as profitable as... designing bathing suits for Eskimos.
Above all things, your AI project has to meet real business needs.
Therefore, make sure you don't fall into the “technology bubble” trap. Do your research, identify the current needs in the finance, health care, disease research or any other field that you target and adapt your new tech accordingly.
The main reason why AI projects fail? They're built to awe, not to serve.
They put outstanding, revolutionary technology before real people's needs. Instead of aligning it to them.
Mistake #5: You Rely on AI Newbies Only
If you ran a 5 star Michelin restaurant would you ask your cashier to cook that exquisite dish recently added to your menu?
See my point? One of the most common reasons why AI projects fail is because startups hand their projects to AI enthusiasts with great potential and zero work experience.
Be better than that!
Aim for AI expertise when you're recruiting for the team that will be working on your new AI project. Don't just expect AI newbies to... turn into AI experts overnight or your internal staff to jump on a totally new technology and turn your project into the... next new AI companion robot!
Enthusiasm won't compensate for all those imminent mistakes and fails to execute your AI strategy.
And these are just 5 of the most common reasons behind AI fails. Stay tuned, for we have 5 more to expose to you in all their “glory” in our next post...
Photo by Rock'n Roll Monkey on Unsplash.
Adriana Cacoveanu / Jan 11'2019
Say you've invested so much time and effort to come up with this valuable content for your website. And now you don't want to be all altruistic and share it with everybody. Instead, you plan to grant access to it to logged in members (or paying subscribers) only. So, you start looking for a plugin for access control. But what is the best membership plugin for WordPress?
The most suitable one for your specific feature needs as a membership website owner...
For your own scenario, which might require that:
members be enabled to administer their profiles straight from your website's front-end page
admins be allowed to easily track down members using specific meta information (e.g. “category”)
your plugin support multilevel membership functionality (logged-in member, paying logging-in user, admin, editor etc.)
your WordPress plugin support dripping so that your content gets “served” according to a strict time schedule
you don't need to get tangled up in code writing and customization work
members be enabled to CRUD their custom post type content (galleries, events, posts, reviews)
Oh, and yes:
You might also expect this WordPress membership plugin to accommodate a decent number of members (approx. 800-100?), be easy to set up and to get updates, too.
Now, here are the 5 most powerful free WordPress membership plugins and WordPress paid membership plugins that you should weigh first:
1. MemberPress
It's the equivalent of “vanilla ice cream” among membership plugins for WordPress.
I mean, it easily checks all the checkboxes on your “must-have features” list:
easy to set up
easy to use
feature-packed
rich documentation and stellar support
And speaking of its load of features, let me outline some of the most powerful ones:
Easy setup
From setting up pricing and login to adding membership plans and putting together “Thank you” pages for your members, setting everything up gets ridiculously easy with this plugin.
Subscription management
The plugin empowers your members to create and update their own membership subscriptions.
Content dripping
It enables you to “disclose” content to your members according to your time schedule.
This feature is particularly valuable if it's learning material or online courses that you provide on your WordPress website.
Content Access Control
And restricting access to certain content on your website is the essential feature of any WordPress paid membership plugin, right? In this respect, MemberPress provides you with flexible access control:
You get to limit (or “condition”, if you prefer) access to specific tags, blog posts, files, pages, categories on your website.
Payment Gateways
The plugin comes equipped with built-in support for Stripe and Paypal payment gateways.
Need Authorize.net integration, as well? Then you'll need to first upgrade to Developer edition.
Integrations
Here are some of the third-party services that it easily connects with:
Amazon Web Services
MailChimp
Aweber
BluBurry
GetResponse
2. Restrict Content Pro
Why does this plugin stand high chances to be the best membership plugin for WordPress?
We can cut down all the reasons down to... 2 heavy-weighting ones:
it's conveniently simple: easy to set up and easy to use
it's ideally flexible: it comes with built-in interrogations, add-ons and pro add-ons; you're free to add exclusively those features that you need
And now, let's detail some of its key features:
Easy to use
I'll only say one thing:
It seamlessly integrates with WordPress UI...
Built-in integrations
Some of the most tempting ones are:
PayPal
MailChimp
Stripe
CSV export
email manager
MailPoet
… that other plugins would provide you with as paid add-ons.
Add-ons
You get to extend its functionality, free of charge, with specific extra features that you might need.
And I'm referring here to:
force strong passwords
download monitor
multiple email marketing integrations
Pro add-ons
If your feature needs are higher, you can always go for the professional or ultimate plan and “indulge” in some pro add-ons.
Here's just a sneak peek into the “pro add-ons menu”:
WooCommerce member discounts
restrict past content
drip content
restriction timeouts
Payment gateways
Is it Braintree, Stripe or maybe Paypal that you need to integrate with your website?
Stay assured: they all come as free add-ons...
Should I also add that Restrict Content Pro has won the reputation of a developer-friendly WordPress plugin for membership websites?
3. Ultimate Member, The Best Membership Plugin for WordPress Community-Like Websites
Disclosure:
Ultimate Member is the perfect fit for community-like websites, where you'd focus more on the social aspect of membership rather than on selling paid memberships.
For instance: it doesn't come with a built-in paid membership functionality that you could leverage.
It's perfectly true that you could go for an add-on to hook it up with WooCommerce (e.g. Um-Switcher). But wouldn't it be more straightforward to opt for another WordPress paid membership plugin then? One geared specifically at selling paid memberships?
So, back to the major strengths of this free WordPress membership plugin:
Is is a social community that you plan to build? One depending on multi-tiered membership functionality? Where each member would administer its own account?
Then Ultimate Member will make your perfect ally.
Here are some of the features that makes it perfectly suitable for “social community building” scenarios:
Content restriction
From:
enabling you to restrict the entire WordPress site
to limiting access to specific blog posts, pages or categories,
to controlling which menus to be served to each user roles
... this plugin “spoils” you with unmatched flexibility.
Still, do keep in mind that large scale content restriction, although powerful, is not its defining feature. Building communities is...
4. Paid Memberships Pro
Looking for the best membership plugin for WordPress focused on the subscription selling aspect?
Here's your winner!
Unlike Ultimate Member, Paid Membership Pro is designed to power subscription-based websites. It makes your conveniently powerful tool for... collecting payments from your members.
And, branching out from this particularity, the are features such as:
accommodating thousands of members
enabling you to put together a whole “ecosystem” of membership levels (weekly, monthly... payments)
granting access to discounts, e-learning materials, private communities on your websites to members only
supporting updates
Content restriction
Is it particular pages or posts that you want to limit access to? It's as easy as checking... the due checkboxes.
Is it entire content categories that you want to restrict? Paid Membership Pro has got you covered.
If, let's say, you need to restrict a certain widget or an individual video on a web page, feel free to use shortcode or PHP functions to narrow down your focus.
Payment gateways
Authorize.net, Paypal, CyberSource, Stripe, 2Checkout, CyberSource... What payment option do you need to integrate into your website?
Note: you can always process the membership checkout through WooCommerce instead.
Third-party Tools integration
From AffilliateWP to MailChimp, to Kissmetricts... you have a whole list of third-party services to choose from and integrate with your membership website.
Content dripping
Not in your interest to serve all your restricted content all at once to your subscribers?
Then... don't!
This plugin enables you to “drip” your valuable content based on a time schedule.
You could set up a “Series” gradually unlocking content depending on the number of days passed since a member registered on your website.
Paid Add-Ons
A bit more... needy when it comes to the specific functionality that you'd want to “inject” into your membership website?
Then, go for the paid version and unlock the 60+ add-ons available. Let me point out just a few of:
Zapier integration for automation
different email marketing services integrations
Slack notifications
email notifications
selling access to particular pages/posts as an add-on package
affiliate program integrations
5. WooCommerce Memberships
How many of the here-below checkboxes would you check?
you already have an e-commerce website
it's a feature-rich plugin that you're looking for
… one to reward your subscribers with various discounts
you're looking for a plugin that easily and seamlessly integrates with WooCommerce
If you've ticked them all, then you might want to weigh the standout features of this WordPress membership plugin for WooCommerce:
Unique options
Unlocking special discounts, granting content access upon a product purchase, limiting product viewing to members only... This plugin comes with quite a few “surprise” features that you won't find in any other of its “rivals” on this list here.
Different membership levels
You get “spoiled” with lots and lots of membership options that keep on... further multiplying if you decide to integrate with WooCommerce Subscriptions, too.
This way, you'd gain even more control over free trials, drip content, recurring payments, for instance.
Access Control
You're free to limit access to specific blog posts, pages and other content types on your website.
The END!
By now you must have realized that:
It's not “the best membership plugin for WordPress” that you need, but the most relevant one for your own membership website. For your specific requirements and feature needs.
Adriana Cacoveanu / Jan 08'2019