LATEST FROM OUR BLOG

Take your daily dose of (only) relevant news, useful tips and tricks and valuable how to's on using the latest web technologies shaping the digital landscape. We're here to do all the necessary information sifting for you, so you don't have to, to provide you with content that will help you anticipate the emerging trends about to influence the web.

Reservoir or Decoupling Drupal Made Easy for Anyone: Non-Drupal Developers and Editors
Here's how the ideal decoupling Drupal scenario looks like: Stripping Drupal to its essential role, that of a robust and flexible content repository, no Drupal expertise needed. Then using it to back your front-end with; one that you'd be free to build by leveraging any modern (JavaScript) technology of your choice. … a Drupal back-end content store that would still preserve all its content editing and managing functionalities, needless to add. Luckily, this is no longer “daydreaming”. Not since Reservoir, the headless Drupal distribution, has been available.  Here are some of its “promises” or well-known challenges, if you prefer, that this distribution's geared at solving:   to make Drupal far more accessible (cutting the intimidating Drupal setting up and configuration out of the equation) to developers of all stripes   to empower developers with all the best practices for building their Drupal-backed front-ends quick and easy   to provide an opinionated starting point enabling any developer to build a Drupal content repository backing his non-Drupal application with... no Drupal knowledge needed, actually   Your Current Situation: Why Would You (Even) Consider “Headless” Drupal? Here you are now, dealing with the pressure of:   having to deliver content agnostically across any given channel and device: single-page JS apps, mobile apps, digital signage, AR and VR-driven content, IoT apps etc...   … all while storing it (content) in one single place    providing your editorial team with a... way to edit, manage and overall administrate content conveniently easy, via an editor-friendly UI   … independently of the development team, of course   finding a way to enable your developers to easily send content across this entire “ecosystem” of channels, devices and platforms   In other words: you're grappling with the challenge of making Drupal ideally accessible to your (non-Drupal) developers; so they can easily build their Drupal-based content store enabling them to deliver content to any given device. … to serve it to any given app/site. And this definitely calls for a decoupling Drupal approach.   Decoupling Drupal: The Most Discouraging Challenges You Must Be Facing  Let's assume that you're already considering headless Drupal as a solution for your current challenge, that of delivering content to multiple channels, devices, platforms. Whether you're planning to decouple Drupal for:   building a Drupal-backed front-end, leveraging one of your modern JavaScript frameworks of choice or using it as a content store for your non-Drupal app   Then, it's these specific challenges that you must be facing right now:   your non-Drupal developers are having trouble maneuvering Drupal content; they're not familiar with all the dials and knobs needed for making the most of Drupal's REST API  Drupal's serialization format is... alien to them  there's no starting point or well-defined best practices for non-Drupalists, that would ease their way to turning Drupal into a content repository … one that they could back their front-ends with   True story! And still, there is hope...   5 Reasons For Being “Skeptical” About Distributions You must be legitimately cautious right now when it comes to using an API-first distribution for Drupal. And that's due to some bad experiences with... distributions. Now let me try and guess some of your “fears” regarding Reservoir:   that it might turn out to be overly complex  that you risk getting “stuck with” architectural debt that its maintainers might someday lose interest in it that it's built primarily for other use cases, for scenarios different from your own decoupled Drupal implementation project that you risk “inheriting” bugs in features that you haven't even used    And the list of reasons why you're not yet jumping on this decoupling Drupal trend could go on...   Introducing Reservoir: The Headless Drupal 8 Distribution! How Is It Different? Before putting it into the spotlight and giving it a “full scan”, let me try to read your mind and identify the questions that you must be asking yourself right now:   “How precisely do I use Reservoir as a content store backing my front-end website or app?”   “Which are the bare essential Drupal modules and core functionality that this distribution comes packed with?”   “How can I leverage these ready-to-use components for decoupling Drupal?”   And now that we've put your valid queries into words, let me try and define Reservoir for you:   1st definition: a distribution for decoupling Drupal   2nd definition: an ideally flexible and minimalist tool empowering developers of all backgrounds to build content repositories for their apps to “consume”   3rd definition: the headless Drupal 8 distribution “specialized” in manipulating content and interacting with it via HTTP APIs   4th definition: a Drupal-based content store with all the web service APIs backed into, so that any developer can jump straight to building his front-end app   5th definition: simply a... content repository; one that just happens to be Drupal-based, as the Reservoir project's maintainers admitted.   Now the 4 key goals behind this distribution for decoupling Drupal —  besides that of providing a simple way of building a content repository enabling you to use any technology for your front-end —  are:   on-boarding developers or all stripes, making Drupal ideally accessible to... anyone providing a much-needed opinionated starting point for any type of decoupled Drupal implementation; no Drupal knowledge required  keeping itself away from the scope creep that end-user facing products risk falling into serving a specific decoupled use case   Decoupling Drupal Made Easy & Accessible: Key Reservoir Features  “But how does Reservoir make building Drupal-based content repositories so much easier than other... distributions?”  “How precisely does it make Drupal accessible to non-Drupal developers, as well?” You're more than entitled to ask yourself that... Therefore, let me outline here the out-of-the-box Reservoir features geared at speeding up any decoupled Drupal implementation. Regardless of the developer's background:   an opinionated selection of API-first/ web services modules — Reservoir offers each developer a much-needed starting point/”push” so that he can ramp up and have his content stores built in no time: Simple OAuth modules here included   quick and easy access to the content back-end via JSON API    auto-generated documentation (API documentation), that gets automatically updated, as well, as you're browsing it, as your content model changes   OpenAPI format export, that supports hundreds of tools integrating with the OpenAPI specification    easy-boarding/tailored UI —  expect a “welcoming tour” once you've installed Reservoir, one focused on getting you familiar with modeling and managing content, web service APIs, mapping out new content models etc.   a permission system and content editing UI empowering your editorial team to easily manage content    SDKs, libraries and references —  included in the Waterwheel ecosystem —  so that your development team can skip the time-consuming API learning phase and jump straight to “attaching” Drupal back-end content to their front-end apps   Note: Reservoir, the distribution for decoupling Drupal, deliberately shakes off some of Drupal's functionality that's irrelevant for content repositories (modules such as Breakpoint, Views, Content, the user-facing front-end etc.) For we couldn't even talk about speeding up your decoupled Drupal project when there's an unnecessarily heavy weight of Drupal modules and features “dragging down” the whole implementation process, right?   Wrapping Up: What Reservoir Aims At Is... ... enabling your developers to jumpstart building self-hosted content repositories capable to serve any given front-ends. Front-ends that they get to build independently, tapping into the technologies they prefer, on a project-by-project basis. Pretty convenient, don't you agree?  ... Read more
Adrian Ababei / May 09'2018
How to Migrate Content to Drupal 8 Using the Migrate Module: No Line of PHP Needed!
Whether you're "constrained" to migrate content to Drupal 8 or you're just eager to jump on the Drupal 8 bandwagon and harness its much-talked-about advanced features, the most important “warning/advice” to keep in mind is: Don't migrate mindlessly! Meaning that before you even get to the point of:   triggering the Migrate module's capabilities and adjusting them to your migration project's needs and requirements selecting and combining all the needed contrib modules writing down your YAML files for carrying out your content migration process   You'll need to think through every little aspect involved in/impacted by this process:   your goals your growth plan your current site visitors' complaints and suggestions   That being said, here's more of a “backbone” or summary of the migration workflow, one that highlights the:   main phases to go through the right approach to the whole process Drupal-specific concepts and tools to use   Do NOT expect a very detailed, highly technical tutorial, though! As for the Drupal concepts that you'll need to be already (more than) familiarized with once you launch your migration process, maybe you want to have a look at this guide here, on Understanding Drupal And now, let's delve in:   1. The Migration Workflow: 4 Key Phases to Consider  Here's the entire process in 4 steps (so you know what to expect):   first, you'll need to migrate your data into the destination nodes, files and paragraphs on the newly built Drupal 8 site then you'll migrate data into date, image, taxonomy, address fields and file next, you'll move your precious data from JSON and CVS files and finally, you'll complete your migrations from the UI and the terminal   2. Are You Upgrading from Drupal 6 or 7 or Migrating From a Different System? And here's what to expect depending on your answer to the above question:   if you migrate content to Drupal 8 from an older version of Drupal (6 or 7), then you're quite “spoiled”: a lot of hard work has been done, by the Drupal community, for turning this migration process into the official path to Drupal 8; you could say that the solid framework has already been set up, so all there's left for you to do is to... take advantage of it! if it's from a whole different system that you're migrating your site (let's say WordPress or maybe Joomla), then... expect it to be a bit more challenging. Not impossible, yet more complex   3. Plan Everything in Detail: Think Everything Through! Now with the risk of sounding awfully annoying and repetitive, I feel like stressing this out: Don't migrate... mindlessly! Plan everything in the smallest detail. Re-evaluate the content on your current site and its “load” of features.  Take the time to define your clear goals and to put together your growth plan (if there's any). Then, do lend ear to what your current site visitors have to say, filter through all their complaints and suggestions and tailor your final decisions accordingly. It's only then that you can go ahead and set up your content architecture.   4. Start With the Structure: Build Your Drupal 8 Site First “But I haven't picked a theme yet!” you might be thinking. No need to! Not at this stage of the migration process. You can still build your Drupal 8, from the ground up, even without a theme ready to be used. You can add it later on, once you have the final version of your content! But the site itself, its solid structure, this is a “must do”. It's the very foundation of all your next operations included in your migration workflow!   5. Deep Clean & Declutter! Take Time to Audit Your Content Don't underrate this very step! For moving over all that clutter, that heavy load of unused, outdated features and all those chaotic, crummy pages will only impact your Drupal 8 site's performance from the start. So, now it's the right time to do some... deep cleaning! Audit your content, your features, plugins and other functionalities included in your site's infrastructure and... trim it down by:   relevance (are you using it?) quality: keyword-stuffed, unstructured pages (a heavy pile of them) will surely not give your new Drupal 8 site any significant jumpstart in rankings!   6. About the Migration Module Included in Drupal 8 Core Using this dedicated module in Drupal core to migrate content to Drupal 8 comes down to implementing the: Extract- Transform-Load process Or simply: ETL. In Drupal — as related to the Drupal migrate module — these 3 operations come under different names:   the source plugin stands for “extract” the process plugin stands for “transform” the destination plugin stands for “load”   7. Time to... Migrate Content to Drupal 8 Now! Now it's time to put some order into that “pile” of content of yours! To neatly structure Google Sheets, XML files, CVS files etc. And here's the whole “structuring process” summed up to the 3 above-mentioned plugins: source, process and destination.   Source:  XML file SQL database Google Sheet CVS file JSON file   Process: iterator default_value migration_lookup concat get  Destination: images users paragraphs nodes files And here's a specific example of how to “glue” data for a neater and ideally structured content architecture:   Before the migration: A: First Name- Kevin B: Last Name: Thomson C: Department- Commerce   After Migration:  A: Name- Kevin Thomson B: Department- Commerce   8. 4 Contrib Modules to Incorporate Into Your Migration Workflow As already mentioned, the migrate content to Drupal 8 process also involves using a combination of contrib modules.  Speaking of which, allow me to get them listed here:   Migrate Tools           Migrate Source CVS     Migrate Spreadsheet  Migrate Plus                The END! This is the tutorial on how to migrate content to Drupal 8 trimmed down to its bare essentials. To its core phases, key steps to take, main Drupal concepts to “joggle with”, right approach/mindset to adopt and best tools/modules to leverage for a smooth process! Any questions? ... Read more
RADU SIMILEANU / Apr 24'2018
Top 10 Drupal Security Best Practices: Effective and Easy to Implement
With popularity comes trouble... In this case here meaning: security vulnerabilities and risky over-exposure to cyber threats. And this can only mean that securing your website, that's running on the currently third most popular CMS in the world, calls for a set of Drupal security best practices for you to adopt. And to stick to! There's no other way around it: a set of strategically chosen security measures, backed by a prevention-focused mindset, pave the shortest path to top security.    Stay assured: I've selected not just THE most effective best practices for you to consider adopting, but the easiest to implement ones, as well. Quick note: before I go on and knee-deep into this Drupal security checklist, I feel like highlighting that:   Drupal still has a low vulnerability percentage rate compared to its market share the majority of Drupal's vulnerabilities (46%) are generated by cross-site scripting (XSS)   And now, here are the tips, techniques, and resources for you to tap into and harden your Drupal site's security shield with.   1. The Proper Configuration Is Required to Secure Your Drupal Database  Consider enforcing some security measures at your Drupal database level, as well. It won't take you more than a few minutes and the security dangers that you'll be safeguarding it from are massive. Here are some basic, yet effective measures you could implement:   go for a different table prefix; this will only make it trickier for an intruder to track it down, thus preventing possible SQL injection attacks change its name to a less obvious, harder to guess one   Note: for changing your table prefix you can either navigate to phpMyAdmin, if you already have your Drupal site installed, or do it right on the setup screen (if it's just now that you're installing your website).   2. Always Run The Latest Version of Drupal on Your Website And this is the least you could do, with a significant negative impact on your Drupal site if you undermine its importance. If you neglect your updating routine. Do keep in mind that:   it's older versions of Drupal that hackers usually target (since they're more vulnerable) the regularly released updates are precisely those bug fixes and new security hardening features that are crucial for patching your site's vulnerabilities.   Why should you leave it recklessly exposed? Running on an outdated Drupal version, packed with untrusted Drupal modules and themes? Especially since keeping it up to date means nothing more than integrating 2 basic Drupal security best practices into your site securing “routine”:   always download your themes and modules from the Drupal repository (or well-known companies) regularly check if there are any new updates for you to install: “Reports” → “Available Updates”→“Check manually”      3. Make a Habit of Backing Up Your Website And here's another one of those underrated and too often neglected Drupal security best practices! Why should you wait for a ransomware attack and realize its true importance... “the hard way”? Instead, make a habit of regularly backing up your website since, as already mentioned: There's no such thing as perfection when it comes to securing a Drupal site, there's only a hierarchy of different “security levels” that you can activate on your site And backing up your site, constantly, sure stands for one of the most effective measures you could apply for hardening your Drupal website. Now, here's how you do it:   make use of Pantheon's “one-click backup” functionality test your updates locally using MAMP or XAMPP or another “kindred” software harness the Backup and Migrate module's power, currently available only for Drupal 7 export your MySQL database and back up your files “the old way”... manually   There, now you can stay assured that, if/when trouble strikes, you always have your backup(s) to retrieve your data from and get back “on your feet” in no time!   4. Block Those Bots That You're Unwillingly Sharing Your Bandwidth With No need to get all “altruist” when it comes to your bandwidth! And to share it with all kinds of scrappers, bad bots, crawlers. Instead, consider blocking their access to your bandwidth right from your server. Here's how: Add the following code to your .htacces file and block multiple user-agent files at once: RewriteEngine On RewriteCond %{HTTP_USER_AGENT} ^.*(agent1|Wget|Catall Spider).*$ [NC] RewriteRule .* - [F,L] Or use the BrowserMatchNoCase directive as follows: BrowserMatchNoCase “agent1” bots BrowserMatchNoCase "Wget" bots BrowserMatchNoCase "Catall Spider" bots Order Allow,Deny Allow from ALL Deny from env=bots Use the KeyCDN feature for preventing those malicious bots from stealing your bandwidth! 5. Use Strong Passwords Only: One of the Easiest to Implement Drupal Security Best Practices More often than not “easy” doesn't mean “less efficient”.  And in this particular case here, simply opting for a strong username (smarter than the standard “admin”) and password can make the difference between a vulnerable and a hard-to-hack Drupal site. For this, just: Manually change your credentials right from your admin dashboard:  “People” → “Edit”→ “Username” while relying on a strong password-generating program ( KeePassX or KeePass)    6. Use an SSL Certificate: Secure All Sensitive Data and Login Credentials Would you knowingly risk your users' sensitive data? Their card information let's say, if it's an e-commerce Drupal site that you own? And how about your login credentials? For this is what you'd be doing if — though you do recognize the importance of using an SSL certificate —  you'd still put this measure at the back of your list of Drupal security best practices. In other words, running your site on HTTPs (preferably on HTTP/2, considering all the performance benefits that it comes packaged with) you'll be:   encrypting all sensitive data that's being passed on, back and forth, between the server and the client encrypting login credentials, instead of just letting them get sent, in crystal-clear text, over the internet.   7. Use Drupal Security Modules to Harden Your Site's Shield For they sure make your most reliable allies when it comes to tracking down loopholes in your site's code or preventing brutal cyber attacks. From:   scanning vulnerabilities to monitoring DNS changes blocking malicious networks identifying the files where changes have been applied   … and so on, these Drupal modules will be “in charge” of every single aspect of your site's security strategy. And supercharging your site with some of the most powerful Drupal security modules is, again, the easiest, yet most effective measure you could possibly enforce. Now speaking of these powerful modules, here's a short selection of the “must-have” ones:   Password Policy: enables you to enforce certain rules when it comes to setting up new passwords (you even get to define the frequency of password changes) Coder : runs in-depth checks, setting your code against Drupal's best practices and coding standards Automated Logout: as an admin, you get to define the time limit for a user's session; he/she will get automatically logged out when the time expires SpamSpan Filter: enables you to obfuscate email addresses, thus preventing spambots from “stealing” them Login Security: deny access by ID address and limit the number of login attempts Content Access: grant permission to certain content types by user roles and authors Hacked!: provides an easy way for you to check whether any new changes have been applied to Drupal core/themes Security Review Module: it will check your website for those easy-to-make mistakes that could easily turn into security vulnerabilities; here's a preview of this module “at work”     8. Implement HTTP Security Headers Another one of those too-easy-to-implement, yet highly effective Drupal security best practices to add to your Drupal security checklist: Implementing (and updating) HTTP security headers “Why bother?” Cause:   first of all, their implementation requires nothing more than a configuration change at the web server level their key role is letting the browsers know just how to handle your site's content … thus reducing the risk of security vulnerabilities and brute force attacks   9. Properly Secure File Permissions Ensure that your file permissions for:   opening reading modifying them   … aren't too dangerously loose. Since such negligence could easily turn into an invitation for “evil-minded” intruders!  And it's on Drupal.org's dedicated page that you can find more valuable info on this apparently insignificant, yet extremely effective security measure    10. Restrict Access To Critical Files  Told you this was going to be a list of exclusively easy-to-implement Drupal security best practices. Blocking access to sensitive files on your website (the upgrade.php file, the install.php file, the authorize.php file etc.) won't take you more than a few minutes. But the danger you'd avoid — having a malicious intruder risking to access core files on your Drupal site — is way too significant to overlook.   END of the list! These are probably the easiest steps to take for securing your Drupal site. How does your own list of Drupal security tips, techniques, and resources to tap into look like? ... Read more
RADU SIMILEANU / Apr 06'2018
How to Set Up Google Analytics on Your Drupal Site: A Dead-Simple Step-by-Step Guide
Who are your visitors? Where do they come from? And what do they do precisely during their visits on your Drupal site? How long are their visits? What content on your site do they linger on and what content do they “stubbornly” ignore? Needless to say that for getting your answers to all these questions you need to set up Google Analytics on your website. Since: “This data--aka analytics--is the lifeblood of the digital marketer.” (Jeffrey Mcguire, Acquia, Inc. Evangelist) The good news is that integrating it is nothing but a quick and simple 3-step process. And the great news is that: Drupal's got you covered with its dedicated Google Analytics module, geared at simplifying the otherwise tedious and time-consuming process. So, shall we dive into the installation guide?   1. But First: Why Web Analytics? And Why Precisely Google Analytics? In an UX-dominated digital reality, that takes personalization to a whole new level, user behavior data turns into... superpower. And by “user behavior data”, I do mean web analytics. Therefore, injecting a web analytics service into your Drupal site is like... injecting true power into its “veins”. But why precisely Google Analytics? Why set up Google Analytics on your Drupal site instead of another web analytics tracking tool? Is its popularity a strong enough reason for you to jump on the trend? To answer your question, I do think that its own key features make the best answers:   audience demographic reporting: discover where your site visitors come from, their native languages, the devices and operating systems they use for accessing your website... goal tracking: monitor conversion rates, downloads, sales and pretty much all stats showing how close (or far) you are to reaching the goals that you've set for your website acquisition reporting: identify your site's traffic sources; where do your visitors come from exactly? on-site reporting: gain a deep insight into the way visitors engage with specific pieces of content on your website, so you know how to adjust the experience your deliver them on your site/app to their specific needs  event-tracking: tap into this feature for measuring all activities carried out on your Drupal site   And the list of features could go on and on. Providing you with a high-level dashboard and enabling you to go as deep as you need to with your “data digging”. For Google Analytics is only as powerful as you “allow” it to be. It empowers you to dig up both surface and “in-depth data”. Moreover (or better said: “thanks to...”), being such a feature-rich tracking tool, Google Analytics's highly versatile, too. From email marketing to social media marketing, to any type of marketing campaign that you plan to launch, it's built to fit in just perfectly. To power all forms of marketing strategies. And where do you add that it's been a while now since we've been having Google Analytics for mobile apps and the Google Analytics 360 suite, too! 2 more powerful GA tools to add to your web analytics “tracking arsenal”.   2. The Drupal Google Analytics Module and How It Will Make Your Life (So Much) Easier Let me try a lucky guess:  Your Drupal site has... X pages (have I guessed it?) The “standard” way to add Google Analytics to your Drupal site would involve: Copying the tracking ID that Google Analytics provides you with and pasting it on each and every page on your website. A hair-pulling monotonous and time-consuming process, don't you think? And it starts to look even more cumbersome if you think that you have the alternative to set up Google Analytics on your Drupal site using the dedicated module. But how does it streamline... everything more exactly?  You'll just need to paste that Google Analytics javascript snippet for tracking data right to this module's Configuration page and... that's it! The module will take it from there! It will distribute it itself to all the pages on your website. Less effort, less time wasted for carrying out in a tedious and repetitive activity. And more time left for customizing all those statistics features to perfectly suit your goals and your site's needs. Luckily enough, the Drupal Google Analytics module puts an admin-friendly UI at your disposal precisely for that:   use it to track down key data  use it for tailoring your web analytics-tracking activity to your needs: by user role, by pages etc.   3. Set Up Google Analytics on Your Drupal Site In Just 3 Simple Steps  As promised, here's a “dead-simple 3-step guide on how to add Google Analytics to your Drupal site (“leveraging the power of the dedicated Drupal module here included”)   Step 1 The very first thing you'll need to do is sign up for a Google Analytics account if you don't have one already. And then to add your Drupal site (obviously!). And here are the quick steps to take:   go to www.google.com/analytics hit “sign in” (you'll find it in the top right corner) and select “Google Analytics” from the unfolding drop-down menu click “Sign Up” and just follow the given steps for setting up your new account next, follow the instructions for setting up web tracking   Now you should be able to see your Drupal site displayed under your account, on your admin page in Google Analytics. And it's now that you should be able to retrieve your site's “Tracking ID”, as well. You'll find it in the “Property Setting” section.   Step 2 The next major step to take as you set up Google Analytics on your Drupal site is to actually go back to your site and... install THE module itself. Since I've already praised its “superpowers” and how they “conspire” to make your life easier, I'm not going to point them out once again. Instead, I'll go straight to the steps to take once you've enabled the module on your website:   access its configuration page (you'll find the “Configuration” tab on top of the page, “flanked by” the “Modules” and the “Reports” tabs) there, right under the “General Setting” section, just enter your “Web Property ID” … which is precisely the Google Analytics tracking code that you've just retrieved at Step 1   And this is precisely the “magic trick” that's going to add the Google Analytics tracking system site-wide. A monotonous, multiple-step process turned into a one-step operation. This thanks to the Drupal Google Analytics module!   Step 3 Here you are now, ready to save your settings and to officially harness the power of Google Analytics on your website! Normally you should be just fine with the default settings that the service provides you with, right out-of-the-box. Yet, if you need to “refine” your searches, your entire tracking activity, feel free to do that. To explore all the options stored in the “Tracking Scope” tabs for you. Speaking of which, let me give you just a few examples of how deep you could narrow down your “investigations” and customize the modules:   roles: a setting which lets you define which user roles to track (and which roles the system should ignore) domains: indicate whether it's a single or multiple domains that you need monitoring privacy: it enables you to make visitors' IP addresses anonymous pages: indicate precisely which pages on your website you need to track messages: track and monitor the messages displayed to your site visitors search and advertising: keep track of your internal site searches and AdSense advertisements; do keep in mind, though, that some additional settings might be needed!   And... more! You actually get even more power for configuring your JavaScript setting and adding custom variables. The END! This is how you set up Google Analytics on your Drupal site in 3 dead-simple steps, a streamlined process powered by the dedicated Drupal module. ... Read more
Adriana Cacoveanu / Apr 05'2018
From Drush Clear Cache to... Rebuilding Cache in Drupal 8: What's the Difference?
The Earth is round, a buttered toast will always fall butter-side down and doing clear cache is every Drupal developer's best practice, these are all globally-accepted truths! And speaking of the latter, when you discover that the familiar Drush clear cache technique is no longer universally unique you wonder: why the change? Why go from clear-cache, to... actually rebuilding cache, starting with Drupal 8? What's the catch? This new way to clear Drupal cache must be stemming from a certain limitation that earlier versions of Drupal presented: Partially completed cache-clearing operations threatening to grow into fatal errors. And now, let's dig into more details on:   clear Drupal cache: why & when the 4 methods for clearing your cache in Drupal Drush clear cache vs rebuilding cache: differences, the initiative behind this change, main benefits to expect    So, shall we proceed?   Clearing Your Drupal Cache: Why Bother? And When? First of all, here's the “motivation” that drives Drupal to create a cache in the first place: Each time a Drupal site has to render a certain web page, it is “forced” to perform specific database queries; and since all these queries have a negative impact on the overall page loading time, Drupal “decides” to store these web pages, once it will have rendered them, in a cache for later (streamlined) reference. OK, now that we've settled this whole “cause and effect” process, let's see why and when you should clear cache on your Drupal site:   when you're troubleshooting problems on your website; clear Drupal cache before you undertake any debugging, since this might just confirm to you that the “alerting issue” was nothing but a bad cache entry whenever you want Drupal to quickly record all the updates that you will have performed via the UI, all the changes you will have applied to your code when you're moving your website to a new host when you're installing a new theme or module on your Drupal site; just another scenario when Drush clear cache should be the very first step to take while you're troubleshooting   In a few words: clearing your cache might just be one of the most frequent actions you'll take while working (or simply maintaining) on a Drupal site.  And in many cases, the one that will “save the day”, without the need to apply other more complex techniques from your “arsenal”.   4 Different Methods to Clear Drupal's Cache  For there are several ways for you to clear your Drupal site's cache. Just go with the one that best suits your work style:   1. The Easy Way: Clear the Drupal Cache From the User Interface  By far the handiest (and some might say “the less-efficient”, too) method to clear Drupal cache is via the UI:   just go to Administration>Configuration>Development>Performance  and hit the “Clear all caches” button   It won't be long till Drupal displays the “Caches cleared” message for you! And that's it! 2. Drush Clear Cache (Drupal 7) or Drush Cache-Rebuild (Drupal 8) And now, the second method in your “arsenal”: the clear Drupal cache command line one! A two-way method, better said, which depends greatly on the version of Drupal on your website: 7 or 8? In this respect, here's the “magic command” to use for clearing your Drupal 7's cache: drush cache-clear all  or drush cc all Whereas in Drupal 8, this is the Drush command for tackling your cache: drush cache-rebuild or, alternatively, these 2 aliased commands: drush rebuild or drush cr And here I'm sure you can already tell which are the specific steps to take for handling your cache in Drupal 8 using Drush (still the most convenient way to do it):   first of all, you open a Terminal window and CD in your Drupal 8 website's root (a step that you can overlook if it's Drush aliases that you're using): next, your run your “magic formula”, your Drush command (“drush cache-rebuild” or “drush cr”) and wait for it to complete its task before going back to your website and finally, you just reload the page you were on, in your web browser   3. Run the /core/rebuild.php file for Clearing Your Drupal 8 Site's Cache  Among all the improvements that Drupal 8 “lures” us in with (built-in WYSIWYG, a Twig templating system and so on), there's the /core/rebuild.php file standing out! And “promising” us to streamline our frequent (and time-consuming) cache tackling tasks that we need to carry out during development: The Drupal 8 site in question doesn't even have to be working and the whole process doesn't require Drupal Console or Drush either! How about that? The one and only requirement (for there still is one) is that your site's configuration supports it.  And how can you check whether your site's config accepts this functionality? Well, there 2 methods at your disposal:   in case you're working locally, just ensure that $settings['rebuild_access'] = TRUE; in your settings.php (settings.local.php) or run this script in your command line: /core/scripts/rebuild_token_calculator.sh; then just use the results there as query parameters for /core/rebuild.php (https://goo.gl/qTrJ9d)   And voila! This “trick” will rebuild all cache without even requiring for the Drupal 8 site itself to be working during the whole process!  Which makes it the perfect “plan B”, whenever you don't have Drupal Console or Drush installed where you're working! The only condition is that your websites' configuration supports this functionality!   4. In the Database: Truncate all Tables Starting With “cache_” Spoiler alert: by “truncate” I do mean emptying, not removing! The fourth method to clear Drupal cache involves clearing all the data from the cache-related tables in your database. Meaning all the tables starting with “cache_”. For this, you just go over to your phpMyAdmin, select all the cache_* table and then click “Truncate” in the “with selected” drop-down menu placed at the bottom of the page: TRUNCATE cache_config; TRUNCATE cache_container; TRUNCATE cache_data; TRUNCATE cache_default; TRUNCATE cache_discovery; TRUNCATE cache_dynamic_page_cache; TRUNCATE cache_entity; TRUNCATE cache_menu; TRUNCATE cache_render; TRUNCATE cache_toolbar; As for the command line, feel free to scan through and then to tap into the valuable info that you'll find here: https://goo.gl/1b4otB here's another practical example: Let's say it's Sequel Pro — an SQL GUI app — that you're using. For truncating those specific tables, connect to the server, track down your site's database, have those specific “cache_” tables highlighted and just choose “Truncate tables”, from the drop-down menu! Also, in the above-mentioned “scenario” you could alternatively go to your PhPMyAdmin's SQL command field or MySQL CLI and run the above-mentioned command:   From Drush Clear Cache to Cache Rebuilding in Drupal 8: Why the Change? Here's the challenge that the conventional Drush clear cache (or “drush cc all”) used to make us deal with: Drupal's using caching intensively and therefore, it implicitely creates lots of inter-dependencies. Only partially flushing this heavy load of caches used to pose some major risks for any website. This is where the “cache-rebuild” method stepped in, starting with Drupal 8! It practically rebuilds (re-bootstraps) the whole Drupal site, after making sure that all cache is perfectly cleared. A “check and double check” technique, you may call it, which makes sure that:   your site is up and running all cache gets flawlessly flushed!   Drupal 7's so very popular Drush cache command itself gets cleared and replaced with “cache-rebuild” in Drupal 8. Which (the Drush cache-rebuild command specific to Drupal 8) carries out the following tasks:   clearing the APC cache  bootstrapping Drupal calling drupal_rebuild()  removing the Drush cache    4. Wrap-Up Summing it up now, the essential info to remember is that:   “clear cache” should be on top of your “best practices” list as a Drupal developer  you have not just 1, but 4 methods to choose from, depending on your work style and context: via the UI, clear cache using Drush, by truncating your “cache_” database tables, by running the /core/rebuild.php file Drupal 8's cache-rebuild is a step forward from the conventional cache-clear practice; it adds a new “re-bootstrapping” operation to the “cache clearing” process! ... Read more
RADU SIMILEANU / Mar 02'2018
4 Free Drupal 8 Themes for eCommerce Trending Right Now
Just imagine: all that masterfully coded back-end, all that hard work performed in the “backstage”, all those great features that you've created from scratch... turned into a worthless effort. And this because you haven't invested the same amount of time and effort in selecting your e-commerce site's theme, as well. So the question that arises now is: what are the free Drupal 8 Themes for eCommerce worth checking out? So you can pick your perfectly suitable one, that would: meet, greet and retain your online visitors and spotlight your products. Well, we've read your thoughts and done our research for you! We've dug deep into the “pile” of free Drupal 8 Themes designed specifically for online stores and put together a top 4. And now, without further ado:   1. SShop, A Bootstrap-Based, Responsive Theme Let's get straight to the features that convinced us that yes, this is a theme that deserves its place in the top 4 Drupal 8 responsive themes for e-commerce sites: it “spoils” you with out-of-the-box Drupal Commerce  it's ideally quick & easy to install  it provides you with a homepage slideshow (delivered by the Views Slideshow module, one of the many modules that the SShop theme supports) you get a multi-level responsive header menu out-of-the-box, as well it enables you to add as many fields as needed to your Default Product type  and should I also add that you get Slider content types and a Blog out-of-the-box, too? A whole “plethora” of built-in features offered to you “on a silver plate” for this theme not to get levelled up from just “another one of those free Drupal 8 eCommerce themes available on the web” to... one of those “definitely worth checking out”!   2. eStore, One of the Feature-Packed Free Drupal 8 Themes for eCommerce If it's a fully responsive, Bootstrap Drupal theme, conveniently “overloaded” with e-commerce site features, that you need, than eStore is the one! Now allow me to dig deep into this out-of-the-box “load” and take out some of the key features and cool functionalities that you'll get: a product layouts collection for you to scan through and select from the option to add your own fields to the Default Product type content types included in the configurations an out-of-the-box Blog to integrate with your e-commerce website Slider content types   And the list of features could go on. Do check it out before investing valuable time in looking through a whole load of Drupal 8 Themes based on Bootstrap available on the web!   3. Commerce Bootstrap-Based Theme: Designed to Speed Up Your Theming Process  That's right, this is one of those free Drupal 8 ecommerce themes —  a sub-theme of the Bootstrap theme — geared towards speeding up the whole theming process of your e-commerce store. And how does it do that? It just overrides the Drupal Commerce templates so that they match both Bootstrap and all the other helpers.  So, it's practically your “trump card” theme boosting the theming process by automatically handling all the matching —  Drupal Commerce vs Bootstrap —  for you. Pretty convenient and definitely worth taking it out for a “drive test”, don't you think?   4. Belgrade: Fitted With Drupal Commerce in Mind Another Drupal theme suitable for your (future) Drupal 8 e-commerce site. An out-of-the-box one, designed specifically for Drupal commerce and developed via the previously mentioned Drupal theme here: the Commerce Bootstrap base theme. Built, from the ground-up, to meet any online store's specific functionality needs. Therefore, worth taking it for a spin, don't you agree? END of the list! Can't hide that I'm more than curious how your own top free Drupal 8 ecommerce themes looks like. What other visually-appealing, feature-packed themes does it include?  ... Read more
Silviu Serdaru / Feb 08'2018
How to Document & Estimate Your Drupal 8 Content Migration Project
About to get your Drupal 8 content migration project off the ground? Still a bit hesitant? No wonder, since just the perspective of: setting up a thorough schedule, including all the major milestones and endless control points deep analyzing the entire source data “overload” setting up a detailed approach to content migrations actually building the new website but not before you've actually put together its Drupal 8 specific technical architecture (with all the Drupal 8 specific content types, modules, entities...) testing till you... drop then rolling back and testing some more ... can get quite discouraging. So, let's simplify it! The entire Drupal 8 content migration process I mean! Let's break it down into multiple phases. And in this blog post here I'll be pointing out to you, briefly, what goes into the: content audit phase (along with an audit of all the features/functionalities) documentation phase (including the project tasks assignment & checking off specific skills that your teams should have) estimation phase With a focus on security best practices to adopt throughout the process. Shall we dive in? 1. What Does “Migration” Even Mean in this Particular Context? It comes down to moving data from one supposedly outdated website to a new one. And in our particular context here “outdated vs current” translates into “an old version of Drupal vs a newer version of Drupal”. The newer one is Drupal 8. 2. (Re)Considering Your Content: 2 Predictable Decisions You'll Take I'm sure you already predicted this step of critical importance when planning your migration to Drupal 8. A content audit is, without question, a critical step to take, yet it shouldn't be a pointlessly overburdening one. By “pointless” I mean spending too much time creating the perfect migration path for... outdated content. Content that you won't be using anyway once you migrate it to your (or your client's) new Drupal site! And so, these are the 2 actions you'll most likely take after auditing your content: you'll be pinpointing outdated, no longer relevant content on the “old” Drupal site, that you don't need to transfer onto your Drupal 8 site you'll be restructuring the current information architecture and covert your content chunks into a more semantic data format (think outside the conventional HTML contexts and about using content as API on your future site) 3. Which Features Stay, Which Ones Go? Undertake a “brutally honest” audit of your current site's features and functionalities this time: Which ones of them are your site's visitors actually using? Which ones of them are they constantly... ignoring? What brand should new functionalities you should implement on your new Drupal 8 website? And speaking of this last question: you should start seeing your Drupal 8 content migration as a site rebuild, as well. You'll be actually setting up, from the ground up, the proper environment in Drupal 8 with new functionalities added to! That should “welcome” and seamlessly accommodate the transferred content. 4. Assigning Your Drupal 8 Content Migration Project to the Right Team(s) At this stage of the migration planning process — the documentation stage — 3 people, standing for 3 district roles in your team, should get co-opted: a project manager/analyst a marketing manager a developer With a focus on the first 2 of them.You'll see why in a minute. Now here are the skill sets and hands-on experience to look for when selecting these key people to work on your project: the assigned project manager (or/and the analyst) should also be a competent information architect; well familiar with the usability principles that the content to be migrated need to comply with they marketing manager (or senior content editor) should be the one deciding precisely what content gets migrated and the form it should take your assigned teams (and this calls for the Drupal developer's expertise), should be well aware of each system's capabilities — your current sites and your future Drupal 8 site's  capabilities — and thus get a straight answer to the question: “What content is, indeed, transferable and how precisely?” also, it's recommended that your team gain an in-depth understanding of your site's traffic and of its usage by the time this Drupal 8 content migration process starts and also, one of them should have the necessary know-how and configuration management experience to set up &export content types and fields As you can see, the Drupal developer's contribution to this documentation & analysis phase is minimal. And this because his technical expertise will be most needed in the next step of the process (when the data gets actually migrated). It's then that he'll be... “stealing the show”. Nevertheless, as already mentioned, his/her input should be asked for to make sure that content can be transferred to the target system. To ensure feasibility of the entire data migration process from a technical standpoint. 5. From “It Depends...” to a Rough Time Estimate  That “Well... you know... it depends...” answer causes a lot of (legitimate) frustration, doesn't it? But there must be some sort of guidelines to help you give a time estimate, right? Even if a very rough one. And there are: Node/User/Taxonomy migrations 1-5 content types 6-10 content types 11+ content types Initial analysis 16-24 hours 32-40 hours 48-56 hours Content type creation & export 16-40 hours 40-80 hours 8 hours/type Configuration Grouping 16-24 hours 24-40 hours 24-40 hours Content migrations 16-40 hours 32-56 hours 8 hours/type Testing 24-32 hours 40-56 hours 8 hours/type   Additional Migrations Files & media migration 32-56 hours Other entity types 16-40 hour per entity type Migrations from non-Drupal sources 16-40 hour per source type Once all the project management aspects of your migration are clearly defined, the process itself should go smoothly, according to the detailed schedule. Also, as you can easily see, numbers state the obvious: the heavy weight of the entire Drupal 8 content migration process gets lifted right at this planning and documenting stage. Implicitly, the developer will start reusing the same fields (or some pretty similar ones). Which leads to convenient code and configuration overlaps. 6. Make User Data Security Your Top Priority And this should be the case when undertaking any web development project after all. Looking on the bright side of a migration process: it's a one time project! Therefore, at the end, you just disable all the custom modules you will have written precisely for this data transfer and leave no traces, no security breaches behind. Yet, common sense precautions and best practices are definitely required! Especially when it's user data (along with other sensitive data) that you're handling. Here are some critical safety measures to apply: ensure that no user data (XML files, database dumps etc.) gets accidentally sent around via emails (or any other unsecured form) ensure your database and development server infrastructures are upgraded to the latest standards ensure that your git repository isn't (God forbid!) public consider clearing your development database off all the email addresses and user accounts still lingering there As you can see, these are nothing but common sense safety measures. Make sure your entire Drupal 8 content migration process complies with them and take no risks. And this is how you, plan and put together your migration strategy, select and prepare your teams and give a close-to-accurate time estimate! What do you say: what other key steps to take/best practices to apply at this stage of the process should I have mentioned here? ... Read more
Serge Karpyuk / Jan 31'2018
5 Drupal 8 Initiatives and The Pressing Issues They Address
Drupal user “complaints” turned into strategic battle-plans, resulting in groundbreaking improvements pushing Drupal forward. This is how Drupal 8 initiatives grow into stand-alone Drupal core features. They signal the “sore points” for the Drupal community of developers to focus on.  And from all the “user complaints” turned into new Drupal 8 features and functionalities so far we can't but mention:   Views, now part of Drupal core the plethora of multilingual capabilities   configuration management   OK, so these ones already developed into widely-leveraged Drupal functionalities. But which are the currently work-in-progress ones? What's going on in the backstage? What “surprises” to expect from the Drupal core maintainers? What best practices should you get a grip on so you can use capitalize on them during your next Drupal projects? Since we kind of anticipated your “curiosities”, we've selected 5 of the Drupal 8 initiatives that you should be particularity interested in. As they're aimed at easing your life both as a Drupal developer and as a Drupal site/app owner. Let's dive right in:   1. The Out-of-the-Box Experience Initiative  A much-needed “promise”, I could call this initiative. The promise of an initiation for all newcomers to Drupal who, at the moment, don't get a very warm welcoming.  They're left pretty much all alone on their discovery “adventure”, where they unveil Drupal's capabilities. Therefore, the goal that this initiative serves is that of showing off Drupal 8's true potential, all its powerful functionalities and tempting features. And all this nicely wrapped in a visually appealing theme and enriched with example content, as well. In short, this out-of-the-box experience is geared at welcoming new users into the Drupal 8 world! Take this scenario for instance: You're facing the challenge of briefly showcasing some of Drupal's functionalities (which are perfectly suited to their project's needs, needless to add) to a potential customer. With the out-of-the-box experience initiative turned into a powerful Drupal 8 core functionality at hand, you'll be able to get a demo site up and running in no time and to... “enlighten” your audience.    2. The Drupal Media Initiative: One of The Drupal 8 Initiatives Getting Loads of Attention The Drupal 8 media initiative started as a reaction to all the content editors' complaints about:   the cumbersome procedure of tracking down specific items from the media library the poorly intuitive media loading process taking place in Drupal's back-end   Moreover, this dissatisfaction risked turning into a reason for some to opt for WordPress, instead, better equipped to answer content authors' needs. And being able to reuse file content is still one of their most pressing ones.   3. The Workflow Initiative  And this is arguably the most ambitious of all the Drupal 8 initiatives in our selection here. That is because it targets a whole lot of content management goals: a whole lot of content creation shortcomings that editors have been signaling for some time now. To name a few:   the content previewing experience: in case of a content-heavy Drupal website, the preview of the site won't give you an accurate preview of how content is going to look (just an interpretation of how it would look); and with new and new devices emerging, this inconvenience might risk turning into a serious drawback for Drupal 8's adoption      multiple publishing states (instead of just the basic published/unpublished duo): specific content creation scenarios call for specific publishing states ( e.g. “draft”, “archived”) and providing content writers with such kind of granular control is one of the goals that this Drupal initiative serves   simultaneous workflow moderation/publishing of content items of the same group (nodes, menus, blocks): and this is when the concept of “workspaces” stepped into the spotlight   granting different levels of role permissions when it comes to changing a content's publishing state (from draft to published or from archived to published etc.); the content creator would be granted his/her own level of permission, the editor and the content managers their own and so on    customizable workflows: so that content managers should be able to set up and juggle with multiple workflows per content types   Summing up:   the Workflow initiative in Drupal 8 means sustained effort and a huge amount of work invested in granting editors (even) more control over the content creation process   … in enriching the editorial experience with new, much-needed content sharing, reviewing and collaboration tools   … in improving the content workflow   … in getting Drupal 8 equipped with content editing, stagging and deployment capabilities   … in making it possible for content editors to stag content in a non-production environment and have it automatically moved to a production environment and get it published   4. The Migrate Initiative  Imagine a world where:   you would no longer need to be constantly on alert, posted on all the critical patches and upgrades to quickly “grab and install” migrations from other platforms to Drupal would run smoothly, requiring much less of your time and of your other resources   … "time" that you could then invest in customization tasks, in creating and tailoring unique features for the site/app that you're working on. Well, it looks like this world is no longer just a product of your imagination, but a soon to become a real one!  The Migrate initiative is geared precisely at streamlining both the migration and the upgrading processes in Drupal 8.   5. The API-First Initiative  And this initiative comes to boost, even more, Drupal's already robust capabilities to integrate with other platforms and modules. Now since these integrations are intermediated third-party services APIs, enabling data to be transferred both ways, the need for Drupal to provide its own APIs emerged. Then, Drupal 8 would be able to make its own content easily accessible to other devices, services, and apps, as well.   End of list! I'm particularly curious now: Which of these 5 Drupal 8 initiatives do you think that will have the biggest impact on your work as a developer or on your Drupal user experience once it grows into a stand-alone core feature? ... Read more
Serge Karpyuk / Jan 11'2018
The 7 Best Drupal 8 Distributions: Why Should You Even Use One in the First Place?
What are Drupal 8 distributions anyway? Why bother using one: what would you gain by using one instead of building your Drupal 8 site from scratch? And, most importantly: which are the best Drupal 8 distributions to choose from? … the top-rated ones, both by other companies already using them and by Drupal experts, as well? There are lots of different Drupal Distributions: Commerce Kickstarter, Open Atrium, Drupal Commerce, etc. build for different versions of Drupal. Which ones are the best? Let's jump straight ahead to the answers you're looking for now, shall we? First Things First: What Is a Drupal Distribution After All? “A Drupal distribution packages a set of contributed and custom modules together with Drupal core to optimize Drupal for a specific use case or industry." (Dries Buytart, Distributions Remain a Growing Opportunity for Drupal) Take it as an all-in-one-place or a conveniently quick and easy-to-install package. One which, once “unwrapped”, delivers you all the site-specific features and business use-case/industry-specific functionality that you need:   Drupal core precisely those contributed and custom modules that you need  themes predefined configuration installation profiles libraries   Bottom line: it's Drupal + additional software components (strategically assembled and preconfigured) that you get with a Drupal distribution software. One that will turn setting up your use-specific Drupal 8 site into a breeze! “How to install a Drupal distribution?” quickly turns from a hard nut to crack into nothing but a child's play. Just imagine how much time and valuable resources you'd otherwise invest in:   scanning through the overwhelmingly rich collection of Drupal modules figuring out which are THE ones catering to your specific use case or industry installing all the needed elements (and here we're not referring to Drupal 8 modules only) one by one   And here we can talk about 2 types of Drupal distributions:   the full-featured ones  the quick-start tools   Key Advantages of Using One Over Building Your Site From The Ground Up Before we push forward, into the spotlight, the best Drupal 8 distributions to choose from, let us outline what you'll gain, precisely, from making this decision:   Using a Drupal distribution over setting up your website from scratch.   launching your website turns into a matter of a few... hours; instead of delving into a load of thousands of modules yourself, the preconfigured site that you get by choosing a software distribution delivers you everything you need in a single download: wrapped up in one installable package!    by comparison, the “traditional” way of setting up your site would grant you access to Drupal core only; any additional functionality needed calls for... additional downloads   maintaining your whole ecosystem of modules and other site components becomes less time-consuming: one single update is enough for all Drupal modules and features (vs “hundreds” of them in a conventional Drupal site build scenario)   And now since selecting the proper Drupal distribution, the one that best suits your specific type of site, your business use case, and industry, is key, let us reveal to you the top-rated ones to consider choosing from:   And Here Are The 7 Best Drupal 8 Distributions 1. Lightning Empower your editorial team and you'll get (even) better content on your Drupal 8 site! With the Lightning Drupal distribution for enterprise, you get to turn crafting, adding, editing, and publishing content into a rich authoring experience! How does it work you say? Practically Lightning's built to "fuel" the editorial experience with these 4 modules' powers combined: Workflow, Media, Layout, and Preview. Hence, content editors get all their feature/functionality needs satisfied for creating great content (and handling content editing operations) with great ease.   2. Varbase The "nitty-gritty" of any Drupal web project! This is what you'll get once you "unwrap" your package with the "Varbase" name tag on! Basically, the essential modules, configurations, features, and functionalities that any Drupal 8 site needs are all bundled up in this starter kit, at a click's distance! Get all these necessities downloaded and installed and give your site's development a major speed boost.   3. Contenta Planning to jump on the decoupled Drupal bandwagon? To progressively decouple your Drupal 8 site maybe? Then Contenta, the API distribution for Drupal 8, makes your best "ally" in turning your decoupling Drupal project into a success story! What it does, precisely, is it eases the overhead of making a decoupled architecture work (or simply “trying it on”, to see first whether it fits you or not):   it provides you with an API-ready platform (admin configuration here included) ... demo content ... and even example front-end applications   4. Reservoir Here's another API-first Drupal distribution, (still) an experimental one, that you can rely on for supporting your Drupal decoupling initiative.  ... if you were looking precisely for a flexible and easy to use tool for building a Drupal content repository that your front-end app could easily access via HTTP APIs. But what makes Reservoir one of the best Drupal 8 distributions?   it takes the burden of modeling and managing content off your shoulders  it enables your team of developers to set up a basic, yet functional content back-end, all while preserving the rich content editing experience (with all the functionality and features that editors get "spoiled" with) that Drupal 8's well famous for    Note: surprised that Contenta and Reservoir have made it to our "best Drupal 8 distributions" list? Don't be! The 2 API-first distributions might still be community-driven experiments. Yet, all the potential they "promise" to unlock in a digital landscape where the channel/device/design-agnostic trend and the API-first approach rule is not to be underestimated.   5. Thunder Out-of-the-box publishing technologies (Riddle Interactive Content, Facebook Instant Articles) and modules from industry partners (Valiton, Nexxt.tv, Acquia) is what you'll get along with your Thunder "package". In short: all you need in an all-in-one the bare necessities and more addressing all your professional publishing needs!   6. LISSA Kickstart A Drupal distribution built to help you streamline your events and client notifications management and publishing process.  What you'll get specifically is a Drupal-based technology stack for real-time messaging in second screen apps. One which, as a media company, you get to leverage for:   pushing notifications to your clients publishing video stream (live or on-demand) ... with convenient ease   7. Open Social By far one of the most popular Drupal distributions, Open Social couldn't have possibly missed from our top including the best Drupal 8 distributions. Go for it if it's a:   social community platform intranet solution portal or any other Drupal-powered social project that you're planning to build   It will dramatically speed up the development process as it provides you, right out-of-the-box, with all the elements that your social community site could need:   Notifications Timeline Events Follow Groups   And this it IT! Our own selection of the very best Drupal 8 distributions to consider as "candidates" for your own specific Drupal project. Select the one that best fits your project's specific use case, then weigh its advantages and... decide how you'll invest the time that you will have saved using it (instead of building your site from scratch). ... Read more
Adrian Ababei / Nov 23'2017