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.

Why Would You Build Your Own Cloud-Native Drupal Platform? The Main Benefits and Challenges to Consider
  Why or rather "when" should you consider building your own cloud-native Drupal platform?  Is a cloud platform the right answer to your Drupal app development challenges? Is a container-based infrastructure a viable solution for you? For your business needs and for building digital experiences that meet the needs of your audience?   How do you know if your specific use case calls for a cloud-native Drupal app development environment? And, assuming that you've run your own evaluation and that your use case does demand a switch from your current VM to a... multi-cloud Drupal hosting architecture: How do you make Drupal... cloud-native friendly?  So that you can build, deploy, scale and manage fast and resilient Drupal apps in the cloud? In this post, we commit to answering all your key cloud-native and Drupal-related questions:   "What does cloud-native mean exactly?" "What is cloud-native with respect to Drupal?" "Why do I need a cloud-native Drupal platform anyway?" "What are the biggest advantages and their... flip sides?" 1. What Does Cloud-Native Mean Exactly? What is a cloud-native application? It's a holistic approach to designing, building, and running applications that make the most of cloud-native concepts. Or, if you wish: Cloud-native application development is a methodology — covering all stages of an app's lifecycle: design, deployment... operations — for developing apps that run in the cloud.  Applications that use the cloud computing model to its full potential. DevOps, agile, microservices, and other modern software architectures all fall under the umbrella of a cloud-native methodology. Therefore, it's fast, resilient, highly scalable and easily maintainable applications that you get to run in a cloud-native infrastructure.   2. And What Is Cloud Native with Respect to Drupal?    In other words: where does Drupal fit in this revolution in how we develop and deploy our applications on a cloud platform? Overall, taking full advantage of a cloud-native Drupal app development environment means: Finding the best solution for handling decentralized storage, auto-scaling, auto-provisioning and multi-region fault tolerance. Getting the most of cloud-native and Drupal comes down to:   minimizing the use of long-running servers relying more on purpose-built services and elastic computing setting up a development environment where you can easily test your new themes and modules, fix bugs, build, and deploy resilient enterprise Drupal apps   3. Why Build Your Own Cloud Native Drupal Platform? And When? For there are cases (is this your case, too?) when such a powerful, yet... challenging architecture is not justified by the company's business needs. So, let's answer your "when" question first. You're better off with a cloud-native infrastructure, where you deploy Kubernetes and containers, if:   you're dealing with high traffic, high volume applications and polyglot architecture you already have an Ops team you've already made at least some sort of investments in the private or public cloud your current requirements in terms of costs and control justify setting up a multi-cloud architecture you're running and maintaining an entire ecosystem of Drupal sites   "OK, so it looks like I "qualify" for it. But still: what would be the biggest advantages of building my own cloud-native platform compared to opting for a cloud vendor's services?" Here are the 2 most obvious advantages:   you'd avoid getting locked in to a cloud provider you'd avoid growing dependant on your PaaS provider for hosting, scaling, and managing your own Drupal apps   4. Why Would You Want to Containerize Your Drupal Apps in the First Place? What would be your major wins if you ran Drupal in containers? Here are the 3 most significant ones:   repeatability and consistency: you get the same predictable and specific result with each container that you run less maintenance work an easier way to run PHP upgrades compared to a conventional VM stack where you depend on your host for that and where there's a whole cluster of sites that needs to get PHP upgraded simultaneously   5. 3 Pillars of a Container-Based Infrastructure: Drupal, Kubernetes, Docker What goes into a cloud-native Drupal platform? There are 3 key players involved:   5.1. Drupal The robust, open-source software and content management system which, beginning with its 8th major version, grew into a Symfony-based content management framework. Backed by a huge (100K+) and active community of contributors and a rich plugin ecosystem, Drupal powers a wide variety of web applications: media and entertainment apps, non-profit, gov, education... The Acquia Cloud Platform is the only web hosting solution designed to meet the wide range of demands of enterprise-level businesses in Drupal.    5.2. Kubernetes It's the standard container orchestration technology.  In the context of your future cloud-native infrastructure, you'll be using it to manage:   your containers' lifecycle command and control distribution scheduling   5.3. Docker It's the standard... tool that you will be using for creating your containers. 6. 4 Cloud-Native Platform Features to Put on Your Wishlist What feature requirements should you have with respect to your Drupal app development environment? Here's how a... decent wishlist should look like:   it should provide a layer of abstraction over IaaS it should handle cross-cutting concerns it should be easily scalable and secure it should provide an efficient developer experience (and agile operator experience, as well)   7. Deploying Your Drupal Apps on the Cloud: Requests & Constraints What's the proper setup for a container-based Drupal architecture? "What are the key requirements that my future cloud-native Drupal platform should meet?" you might legitimately ask yourself.   your Drupal application should be turned into a containerized stack minimal Ops (or not Ops at all) it should run properly on any cloud your public/private file should be externalized it should scale up, out, and down it should make the most of PaaS services: for gateways, databases, load balances, cache stores, queues it should tap into an operational model: new app provisioning-routing-monitoring... your development team should be able to get high fidelity local environments up and running in no time   "And what challenges should I expect?" you'll further wonder:   your developers are faced with a steep learning curve: they should have some sort of understanding of what's happening under the hood when deploying Kubernetes CI & Delivery Pipeline  logical architecture monitoring and management Dev & Build Tools  local development    The END! What do you think about Drupal Cloud? Is a cloud native Drupal development environment a viable solution for you?  Are the advantages highlighted here relevant enough for your use case and business needs? Or are the outlined challenges too discouraging for you? Feel free to share with us any thoughts and concerns that you might have regarding the idea of building your own cloud native Drupal platform and see how Drupal Cloud can help you deliver outstanding digital experiences.  Photo by C Dustin on Unsplash  ... Read more
Silviu Serdaru / Dec 12'2019
The Web Experience Toolkit Drupal 8 Distribution: Why Use a Drupal Distribution and Why Precisely... Drupal WxT?
Say you need to build a company website that's bilingual from the ground up, accessible, responsive, user-friendly for the team administrating it, easily maintainable and innovative. Oh, yes: and you need it built fast. What do you do then? You "unpack" the web experience toolkit Drupal 8 distribution, trigger its out of the box features and... adjust them to your organization's specific requirements.   But what exactly is the Wetkit Drupal distribution? Who's it for? What powerful features/modules/reusable components/content management tools does it provide you with out of the box? And how can you customize it so that everything, from content types to... the publishing workflow, should fit your needs perfectly?   Let's get you some answers, now:   1. What Is the Web Experience Toolkit Drupal 8 Distribution? It's a version of Drupal, designed specifically for the Canadian Government, that streamlines the building and maintenance of bilingual, responsive and highly accessible websites. Since it's open-source, it is free to use by all public organizations. Take it as a powerful... bundle of carefully curated Drupal modules, a built-in responsive theme, and out-of-the-box tools for content authoring and publishing, that helps you set up a website that:   has built-in bilingual support leverages Accessible Rich Internet Applications (WAI-ARIA) and complies with the Web Content Accessibility Guidelines (WCAG 2.0) by default taps into a robust content management system ships with the same theme used on the Government of Canada's official website   ... in no time. It comes as a 2-part tool, made of:   Wetkit (or WxT or WET): a set of files that define the front-end components of your future website (JS, CSS) and markup; a bundle of tools and best practices for reaching certain standards of bilingualism, accessibility, and responsiveness on your website Drupal core: a robust and flexible content (and users) management system   Note: it's also a highly flexible "toolkit", that you can adjust to your specific requirements of accessibility, usability, and interoperability. You might need specific content types, a specific custom-tailored publishing workflow, a particular page layout, etc. Luckily for you, Drupal-WxT is conveniently adjustable:   it grants you easy set up (and maintenance) of your bilingual and accessible Drupal website it also grants the freedom you need for customizing it to your organization's particular needs   2. What Is a Drupal Distribution? Why Would You Want to Use One? Now you know what the Web Experience Toolkit Drupal 8 distribution is: "But what exactly is... a Drupal distribution?" you might ask yourself. Let me try a short, yet comprehensive definition: It's a package of components, modules and tools that you can trigger to build your Drupal website. Or: It's a version of Drupal that provides you with the extra configuration and carefully curated modules to set up a website that meets your specific requirements.  In this context here you need your website to be:   accessible bilingual responsive interoperable   3. 10 Powerful Features that You Get Right Out of the Box with Drupal-WxT Till here, I've kept telling you about all the built-in functionality and robust content management tools that you get, out of the box, once you install the Web Experience Toolkit Drupal 8 distribution: "But which are they?" you'll legitimately ask yourself. Here are the 10 most powerful features that WxT-Drupal provides you with right from its... unboxing:   3.1. A Responsive Theme It allows you to implement the same look and feel as the one on the Government of Canada's website.   3.2. Search API   3.3. Workbench for Drafting Your Content   3.4. A Menu System   3.5. A  WYSIWYG Editor A CKEditor, to be more specific. One that you can customize to fit your editorial team's specific needs and preferences, which they can use to add a markup to the content about to be published.   3.6. Bilingual Support One of the most powerful components of the web experience toolkit Drupal 8 distribution. Basically, you get bilingual support at every level of configuration:   multilingual UI and content (French version already installed): from menu items to taxonomy terms, to form elements, translating each element of your content is fairly easy with Drupal Wetkit bilingual back-end (for those admins in your team who use either English or French)   3.7. Version Management Your editorial team can "juggle with" several different versions of the same content to be reviewed before being published.   3.8. A Complex System for Managing Content Types By default, it's 2 content types that you get: pages and documentation.   3.9. Panels & Panoply for Creating Landing Pages Your content team can easily edit both the content and the layout of this page and turn it into your Drupal site's homepage or... a list-of-events page.   3.10. A Built-In Moderation Workflow The entire process of creating a web page for your Drupal site might call for a specific ecosystem of:   authors, translators, editors different content statuses different content transitions    Luckily, the web experience toolkit Drupal 8 distribution provides you with a robust and flexible workflow that you can customize to your needs.  Feel free to add specific types of users, particular content transitions to suit your own content lifecycle, overall: to adjust the built-in workflow to your unique requirements.   4. Is the Drupal Web Experience Toolkit the Right Fit for Your Organization? It is, if:   it's a bilingual and fully accessible website that you need to build you need it built fast: the curated selection of modules and the built-in content management tools will help you save valuable time (and money) it's low maintenance set up that you're looking for   Now, it goes without saying that customizing this Drupal distribution to fit your organization's specific workflow, team hierarchy and in-house operations does call for some configuration work from your side. The END! These are the what and the why of the Drupal WxT or Wetkit, if you wish. Have you already had the chance to trigger the potential of a Drupal distribution? What do you think of the "load" of pre-built features that this particular package ships with? Are they tempting enough for you? Is there any other type of functionality that you wish it would have provided you with out of the box? Image by PublicDomainPictures from Pixabay  ... Read more
Adriana Cacoveanu / Dec 10'2019
Acquia DAM: What Is It? And How Precisely Does It Streamline Your Content Production Process?
PDFs, infographics, icons, logos, fonts, videos... How complex is your "ecosystem" of creative digital assets? And how easy is it for your team(s) to manage it efficiently? If it goes from challenging to... cumbersome, then you might consider switching to Acquia DAM. "But would it pay off to make the move to a cloud-based digital asset management software?" To answer your own question, ask yourself further:   "What if all designers, content creators and marketers in my company were always on the same page? On a shared platform?"   "What if no one in my team(s) saved brand assets locally, but on the cloud instead? On a centralized cloud-based location?"   "What if managing my heavy load of digital assets could get as efficient as... having one single repository for all my assets? One that all my teams can access anytime and (from) anywhere?"   Now, what if Acquia DAM was the answer to all these... daring "fantasies" of yours? Here's:   what this tool is how it can streamline your content pipeline what are its most powerful features how you can get the most of it (since any software can only be as good as its users, right?)   1. What Is Acquia DAM? It's a digital asset management system that acts as a central storage location for all your assets, allowing everyone in your company to:   access them, irrespective of their locations keep track of them organize them update them share them   ... with great ease. Here's a short demo of Acquia DAM "in action", streamlining the most common asset management tasks that your creative teams usually perform. In short: imagine your current infrastructure of various platforms, personal computers, various channels, multiple stakeholders involved in the content process, devices, and repositories reduced to one single place on the cloud. A cloud-based repository where all your different teams — marketing, design, content — can store and update all your creative assets. The 2 most obvious benefits that you'll "reap":   you'll deliver a consistent brand experience you'll speed up the content production process   2. What Are Its Most Powerful Features? For, OK, it boosts your content pipeline: But what about those robust features and functions that it ships with? The key ones to look look for and to trigger, to be sure that your teams use this DAM solution to its full potential?   2.1. Centralized Digital Asset Library Instead of an intricate network of repositories — Dropbox, Google Drive, email, local or network hard drives — you'll have one single storage place on the cloud. One repository for all your creative assets, that everyone in your organization can:   access and use to create unified digital experiences: no need to waste precious time looking for a specific branded image created... years ago update, making sure that there are no out of date licensed assets left lingering in there   All your assets in one place, syncronized, current, approved and... easily accessible.   2.2. Workflow Management The more the... merrier? Not in the context of a high volume of assets and lots of people, from multiple teams, engaged in the content production process. Luckily, using Acquia DAM's workflow management your design and marketing teams can keep a close track of everyone's step in the process. From asset creation, to update, to review and final approval, an ideally formalized workflow will speed up your entire asset management process.   2.3. Portal for Publishing Approved Assets That's right: Drupal Acquia DAM enables you to set up your own portal site for sharing brand guidelines and approved assets. With approved rules and presets for image processing at hand, your non-designers gain a higher level of independence. Which can only translate into a streamlined content pipeline.   2.4. Dynamic Templates A feature aimed at the same goal: Empowering your non-designers to update graphical design elements on their own. Swapping images, editing text field, all while preserving the approved branded design elements — logo, font, colors — gets so much easier for them when using these dynamic templates. Now, some other equally powerful features to incorporate into your asset management process are:   Scheduled Publishing Enhanced search Custom Metadata Fields Audit Report Logs Custom Form Fields Metadata Group Permissions Version controls   3. Why Use It? What Content Production Challenges Does It Solve? In other words: Would switching to Aquia DAM pay off? Now, here's a scenario that might be (too) familiar to you: You're dealing with... loads of assets in your organization. They get shared in Google Drive or Dropbox, updates get approved on various chat channels, specifications added to Google Docs... It's a chaos of technologies and tools that you're storing, organizing, tracking and repurposing your assets in. Have I "guessed" right? Then this is why you should consider implementing a digital asset management software like Acquia DAM. To cut off all the inefficiencies that derive from such a cumbersome patchwork of disconnected tools and processes:   the time your teams would waste looking for a specific asset that seems to be lost in this "black hole" the money you'd lose whenever someone in your team decides to... recreate an asset that's... "gone missing" the risks you expose your brand to by using images with expired licenses the bad reputation that you gain by... accidentally sending older versions of your assets to your clients    Source: Acquia.com Now, let's sum up the main benefits that you'd reap from taking the leap to Acquia DAM:   highly accessible assets: for everyone in your team, anytime, from anywhere on the globe increased system performance significant marketing and IT resource savings increased governance and control of your entire ecosystem of digital assets synchronous brand message: your design and marketing people will better coordinate their efforts   4. How Can You Sync Your Assets with Your Drupal Site? Acquia DAM Drupal Integration It's simple: You use the Acquia DAM Connector for Drupal. This way, you can use the assets stored and updated on your Acquia DAM instance across all your Drupal websites. Just visit Acquia'as dedicated page for info on the right version to download, depending on the version of Drupal running on your website(s).   5. How Can You Import Your Assets to Drupal? The Media: Acquia DAM Module Say you're storing your creative assets to Acquia DAM: How do you move them to your Drupal website? For, it's there that you'll be... putting them to use, after all. You install and enable the Media: Acquia DAM Drupal module. What it does is:   provide you with tools for scanning your DAM system for specific assets and pair them with their corresponding Media entities; with their corresponding entities on your Drupal website... ensure that your selected assets, along with their metadata, get instantly synch whenever you're making changes in the DAM   6. How Can You Build Apps Using the Drupal Acquia DAM? Acquia DAM API Say you need your developers to safely read and write from your DAM so that your users can easily push and pull their files and metadata. You need unrestricted access to some of Acquia DAM's most robust features: upload, file sharing, search. In this case, Acquia DAM API provides you with the underlying interface for building the apps that'll tap into your DAM tool's power.   7. How Do You Integrate It with Your Other Services? Acquia DAM Integrations For there must be all kinds of services and platforms that your teams are currently using, for storing your assets and authentication. You just browse through the list of popular services that Acquia DAM provides integrations for and pick the right ones.   The END! How does your digital asset management system look like? Have you considered switching to a DAM solution? Do you find Drupal Acquia DAM's features and benefits powerful and relevant enough for your specific content pipeline? Image by PublicDomainPictures from Pixabay   ... Read more
Adriana Cacoveanu / Dec 06'2019
Automatic Updates in Drupal: From Mission Impossible to... Drupal’s New Auto Update Feature. How Does It Work?
The waiting is over. We'll have automatic updates in Drupal sooner than we even dared to hope.   Source: Drupal.org * Since that announcement was made, both an alpha and beta1 version of the Automatic Updates module have been released. The auto-updater, which has been, in turn, or simultaneously:   an ever requested feature in the Drupal community a highly anticipated functionality for the Drupal end users an evergreen matter of debate ("I really need this feature in my life" vs "We prefer to keep the Drupal website up-to-date ourselves".) a... "mission impossible" type of challenge  a Drupal initiative that seemed doomed to never grow into an actual feature   ... is now a work-in-progress Drupal module. Can you believe this? Now, we can just hear those questions running through your head:   "How/when did this never-ending talk about auto updates for Drupal turned into a module?" "What are its features/components?" "Who is it aimed at?" "How would it benefit me more precisely?"   Let's get you some clear answers:   1. Automatic Updates in Drupal: A Highly Requested and... Ever Postponed Feature An auto update system has been one of the top requests in the Drupal community since... forever. "Does Drupal have an auto update?" "Why Doesn't Drupal offer an Auto Update feature like WordPress?"  Simultaneously, many other members of the community adopted:   the "I didn't need it anyway" approach the "I don't need Drupal to automatically update itself. What if something breaks?" approach or the "Auto updates would not fit our development workflow" approach   Overall: the need was there, it was growing and the various "no need" reactions to the possibility of implementing such a feature were just:   legitimate paranoia lest those automatic updates should be superficially tested before release the frustration that the answer to this request was invariably the same: "Not possible in a Drupal context."   Speaking of this standard answer that we've been getting, constantly, over the last years, it looks like automatic updates in Drupal have gone from:   myth: Drupal websites are far too complex to come up with an all-size-fits-all set of updating standards for them all mission impossible: it's not possible to architect such a solution for Drupal work-in-progress module aimed at simplifying the whole task of keeping one's Drupal site safely up to date   In short: the automatic updates functionality has gone from "mission impossible" to... "anything is possible with Drupal". 2. Auto Updates: From a Drupal Core Strategic Initiative to a Drupal Module The community demanded and... demanded (Dries himself drew attention to this need), till their request of an automatic updater turned into one of the 8 Drupal core strategic initiatives. One funded by the European Commission itself... Source: Drupal.org And this switch from request to... well-structured roadmap was only too predictable:   proprietary and commercial software companies were already implementing an auto update system open source projects (see WordPress) were already offering this critical feature: the site owner just clicks a button and the system handles the whole updating process    What was the main goal that drove the Auto Update initiative forward? To architect a system that would apply Drupal updates automatically. This way, maintenance costs, particularly for small and medium-sized Drupal projects, would lower and the Drupal adoption rate would rise. Not to mention that we would be having far more 100% secure Drupal websites out there.   3. The Automatic Updates Module: Its 3 Main Components For this long-awaited solution for automatic updates in Drupal relies on a 3-component structure:   the PSAS (public safety alerts) the readiness checks the actual in-place updates   Now, let's get into the nuts and bolts of each component:   3.1. Public Safety Messaging What this feature does is pull alerts on critical and highly critical updates from Drupal.org right into your admin UI. This way, you can easily check your site's readiness for the update about to be released by the Drupal security team.   3.2. Readiness Checks (or Preflight Checks) It's a plugin-based feature that triggers warnings and errors on detected issues blocking your website from getting updated automatically. Let me give you some examples:   "Your website's running on a read-only hard drive!" " Cron isn’t running frequently enough!" "The "X" files included in the update process have been modified!" "You need to run database updates!"   3.3. In-Place Updates Once your website's level of... readiness has been checked and approved of, it's time to run the Drupal update itself. Here's how it works:   the update package of files gets downloaded from Drupal.org the Automatic Updates module (now in its beta 1 version) checks it and creates backups of the files on your website included in the update process the module performs the update if something goes bad, it restores your backup files   Note: you're free to set up your own custom workflow for the auto-update process; you can stag the updates for review and approval first, get them through your own CI/CD system or... you can set them to go live, automatically.   4. And How Does It Work? The Automatic Updates Module "In Action" Let's imagine this scenario: You already have this automatic functionality implemented into your website. How would it work in case of an "upcoming critical security update" situation? it pops up the message alert in your admin interface next, you run several checks on your website to... check whether there are any issues that you'll need to address before updating it then you trigger the in-place update   That's it.   5. Who's It For? Is It Aimed at...You, Too? It is if:   you're a small or medium-sized business owner  you don't have a custom development workflow and pipeline set in place (with Git, Drush, and other tools included) people in your team with no development background are responsible for maintaining your Drupal site up to date you don't have a solid routine of checking and running Drupal updates as soon as they get released   Source: Drupal.org In other words: automatic updates in Drupal aren't aimed at enterprise-level websites. The module targets small Drupal projects, where:   running security updates on a regular basis staying vigilant, lest you should miss them once released, is THE main cause of stress for site owners   The END! This is the new auto updates feature in Drupal, along with the answers to some of your valid questions regarding this module.  How do you find the project's progress so far? What other features would you like this module to include? And what are your concerns about integrating such functionality into your own build workflow? Image by krzysztof-m from Pixabay   ... Read more
Adriana Cacoveanu / Nov 29'2019
How Do You Prepare for Drupal 9? 5 Tools to Detect Any Uses of Deprecated Code on Your Drupal Website
How should you prepare for Drupal 9? You deep clean up your codebase of all deprecations and errors and wait patiently for the big upgrade to... happen. “But how do I know whether my Drupal website's using any code deprecations?” you'll legitimately ask yourself. How do you identify and make an inventory of all the code errors on your site, so you can remove them and start... waiting, patiently, for that big upgrade to Drupal 9? Well, you “stuff” your toolbox with all the essential tools that'll help you track down deprecations (still) lurking in your codebase. Here are the 5 most effective ones:   1. Drupal Check  You can't claim that you're getting ready for Drupal 9... the proper way if you're not already using Drupal Check to scan your codebase for deprecations. “But what is Drupal check?” It's a command-line tool — a custom runner for PHPStan — that enables you to run PHPStan against your Drupal website to look for any deprecations and code errors. In short: instead of running PHPStan, you run Drupal Check, which comes as a package storing PHPStan, PHPStan Drupal, PHPStan's Deprecation Rules, plus configurations for them all, as well. Source: glamanate.com Just incorporate it into your build processes and continuous integration systems and run audits on:   your custom and contributed modules, checking their compatibility with Drupal 9 your D7 to D8 migration code   Use it on your existing Drupal 8 website. Or use it on the one that you're developing, when you're nearly done, to check whether any deprecations have made their way to your codebase... Word of caution: expect Drupal Check to provide you with an accurate report of the deprecated code used on your site, but don't expect it to fix them for you, as well.   2. Upgrade Status Module   Here's another “tool” that you shouldn't miss from your toolbox. That if you do want your website's upgrade to Drupal 9 to be... buttery smooth. Source: Drupal.org What the Upgrade Status module does is:   inspect your code — your custom and contributed projects — for deprecations make an inventory of all the identified issues    Moreover, its Drupal 8 version harnesses the power of PHPStan and comes as a complete solution that you can use for running full-site checks. Let it work its “magic” on your Drupal site and find out where it stands in terms of compatibility with Drupal 9.   3. PHPStan & PHPStan-Drupal         PHPStan's the very foundation of the toolkit to rely on when you prepare for Drupal 9.  Source: Matt Glaman's Twitter page Not only that you save valuable time using it, time that you'd otherwise invest in pinpointing every error spotted during your code reviews:   classes called incorrectly nonexistent classes PHP projects that you forgot to run once you compiled them   …  but you get to write your own custom rules. You get to indicate specific “red alarm” situations that you'd want PHPStan to... investigate for you. Now, it may be the key tool to keep at hand when you evaluate your site's compatibility with Drupal 9, but nevertheless... it does have its own limitations: It won't load any files on its own if you run it against a Drupal module out of the box. It depends on Composer to load all that information... Luckily, Matt Glaman's developed an extension to address precisely this... limitation of PHPStan: phpstan-drupal.  An extension that'll help you make the most of PHPStan when using it to scan Drupal code: from your various dependencies to... Drupal core.    4. Use Project Deprecation Status to Prepare for Drupal 9  And what this tool does is answer one key question: “What's the current status of the Drupal modules in terms of compatibility with Drupal 9?” Which Drupal projects are already compatible and which of them need more fixing before the big upgrade? Project deprecation status is the right tool to... gain an accurate picture of where each Drupal project stands in relation to upcoming Drupal 9.   5. Rector        So far I've pointed out the 4 key tools for deep-scanning your Drupal website to detect any uses of deprecated code as you prepare for Drupal 9. But what if you want to get rid of that pile of deprecations that you will have collected by the end of the scanning process? How do you fix/remove them? And, more importantly: how do you automate this code cleaning process? In this respect, Rector for Drupal 8 — a proof of concept for now — comes with great potential: Check it out and... be prepared to add it to your toolbox for any automated deprecation fixes that you'll want to perform on your site.   The END! These are the 5 essential tools to have in your toolbelt for running deprecation checks on your Drupal website, getting all ready for Drupal 9. Would you have added some other must-have tools to the list, as well? Let us know in the comments here below: Image by Michael Schwarzenberger from Pixabay ... Read more
Silviu Serdaru / Nov 22'2019
What’s New in Drupal 9? Olivero, A New Default Front-End Theme in Drupal
"What's new in Drupal 9?" or "What are the new features in Drupal 9?" These 2 questions are on everyone's lips these days, both Drupal teams and organizations using Drupal. How about a... shiny new main theme? For, let's face it: we've been longing for a new default theme in Drupal for some time now...  The current one, Bartik, hasn't got an update since... 2011 and it has started to show: Drupal 8's outgrown its core theme. The new one, Olivero, which is still just design with a proof of concept, is expected to address all of Bartik's limitations:   to be more simple to be more modern to be more flexible to support Drupal's increasingly powerful functionality   But let's dig in for some more info about this initiative:   why do you need a new default theme in Drupal? the key design principles established for this theme the main components of the new design system   1. How Does Your Ideal Default Theme for Drupal Look Like?  Does it resemble Bartik? I'm pretty sure it doesn't, judging by the fact that:   it hasn't seen a major change since January 2011 it still uses gradients, drop shadows and other out-of-date graphical elements it no longer accommodates all the modern website functionality implemented in Drupal (e.g. Layout Builder) over the last years   Overall: Bartik has started to look a bit... out-of-fashion, while Drupal's back-end has been growing more and more robust. Therefore, I bet that the words that you'd use to describe your "ideal" default theme in Drupal revolve around these key adjectives:   clutter-free/minimalistic flexible: to provide plenty of options to choose from light modern and fresh accessible intuitive elegant clean   2. Olivero and The 3 Main Goals Behind this Drupal Core Initiative No goal no... glory. That's why the team behind this Drupal core initiative, Lullabot, set 3 major objectives for the Olivero theme:   it should support all the latest functionality implemented in Drupal: embedded media, second-level navigation, layout builder, etc. it should be WCAG AA compliant from the ground up (accessibility should not be an afterthought) it should look and feel more modern: all those design elements that made Bartik feel too heavy to be reduced to a minimum, while particular design system parts — color palette, typography, and animation — to be reconsidered   3. What's New in Drupal 9: Design Principles Set for Its Theme Source: Dries Buytaert's blog Curious which of the features on your wishlist for an ideal default theme have made it to the list of design principles for Olivero? Well, here they are:   simple: clutter-free; by "clutter" they mean all colors, effects and visual elements that are irrelevant and make the theme look and feel too heavy modern: support for modern browsers' features and interaction modes flexible: presents Drupal (front-end) developers with multiple options to choose from focused: includes all those design elements, like negative space and high contrast, that grab user attention accessible: it's designed with WCAG AA conformity in mind; from functionality to layout, to colors, all elements should be thought out to be accessible for everyone   4. The Olivero Design System: Key Components "What's new in Drupal 9?" Look forward to a new, promising design system. I'll highlight just 5 of its components, so you can get an idea of what the team behind this initiative mean by "modern" and "flexible" in relation to the Drupal 9 default theme: Source: Drupal.org 4.1. Color Palette They chose:   bright blue as the base color neutral grays to counterbalance the design elements and layout darker colors to enhance accessibility lighter colors in the layout to highlight the design elements   4.2. Typography They used the size 18px for the base font in the body copy, to be leveled for metadata, headers, quotations, etc. and adapted to smaller viewports, as well. Consistency, throughout line-height and spacing, has been a key goal when setting the scale for typography.   4.3. Header & Navigation The flexibility principle is best reflected in the header of the future default theme for Drupal 9:   it's designed to incorporate, seamlessly, all logo types and text titles it comes in multiple versions to choose from, one for every site identity type it turns into a hamburger menu once the user scrolls down   4.4. Sidebar The news factor is that in Drupal 9 you'll have one sidebar region instead of two competing for space on the screen. A single spacebar, next to the primary content, where your content team can display related posts and all kinds of utility blocks.   4.5. Site Branding Variations The Olivero theme will ship with background-color and width settings that you can configure in order to fit any text length and logo type.   5. Final Word "What's new in Drupal 9?" I think this question is not quite accurate, in relation to this upcoming front-end theme. "What's bound to be new in Drupal 9?" is more appropriate. For the Olivero theme is not yet... a theme in itself, but work-in-progress. A proof of concept, a core initiative that's still calling out for contributors. One that's expected to become the new default theme in Drupal, that should:   accommodate all the new powerful features implemented in Drupal these last years be accessible from the ground up be (more) intuitive    Why would you care for this initiative if you were a Drupal developer? Because it would improve your entire experience of working with Drupal. Why would you care about this work-in-progress theme if you were considering Drupal for your next web project? Because all visually-appealing websites have one thing in common: a modern, accessible and flexible theme. Image by Mudassar Iqbal from Pixabay ... Read more
Silviu Serdaru / Nov 13'2019
How to Configure Custom Search in Drupal 8: 8 Ways to Deliver More Relevant Search Results on Your Website
Let's say that you have a cleaning business. Once a user types “office cleaning” on your website, the search results that show up first are some blog posts on this topic instead of the page that you're actually targeting: the “Office & Workplace Cleaning” service page. So, you wonder: “How to configure custom search in Drupal 8?” What are your options if you want to go beyond the default Drupal search? How can you influence that search results ordering so that you:   improve the overall site search experience for your visitors? push forward into the spotlight particular pages on your site, based on specific keywords?   We've done our homework, collected and then selected 9 different ways that you can upgrade the default search experience in Drupal so that it should fit your needs perfectly. From:   additional Drupal modules that you can enable to effective search plugins that you can install to brilliant configurations that you can set up   … you'll find a whole collection of options at hand for fine-tuning the search functionality on your Drupal website.   1. Enable the Drupal Search API Module If you find the default Drupal search module a bit too... restrictive, consider Search API.  It takes but 3 simple steps before you can leverage its flexibility to the fullest:   just install it and enable it, along with the Search API database module add an index and an API server, as well   2. Integrate Your Drupal 8 Website with Apache Solr Search The Java-based search platform is powerful enough to supercharge your website with tons of search capabilities: Source: Drupal.org   search for all attributes of Drupal nodes ouline the search queries in the results perform language stemming to return related results search across multiple websites index from... millions of nodes overlook users' typos and provide proper suggestions provide location-based search results display the most relevant results on top of the list   In short: you're better off with a Solr back-end; it will always overstep a Drupal database search setup when it comes to returning relevant and intuitive results. Even in “keyword phrase search” scenarios.   3. How to Configure Custom Search in Drupal 8: Use ExpertRec This search-as-a-service solution ships with a heavy load of useful features, such as:   manageable search ranking typo tolerance easy UI control results as you type custom facets   So, you might want to consider it for evaluation. Just put its robust set of features against your site search needs.    4. Use the Cludo Site Search Solution What if you could turn the site search on your Drupal website into a powerful “insights generator”?  Source: Drupal.org  One that would provide you with valuable and, most of all, actionable insights on your users' search behavior. Just imagine turning all that powerful data into highly relevant site search experiences for your visitors. Cludo's that fully customizable on-site search tool, that “spoils” you with unique features like:   semantic search customizable index machine learning-driven autocomplete   Find out more about this tool and what it can offer you from our post on Cludo as an alternative to Google Site Search.   5. Boost the “Title” Field to Improve Search Relevancy Say you have a “How to speed clean a kitchen” page on your website (we're assuming that you run a professional cleaning business, remember?).  Now, if a website visitor types “how to clean my kitchen quick” you most certainly want that specific page to show up first, right? Well, to make that happen you simply boost the title field. Here's how:   go to /admin/config/search/search-api click “Edit”, next to the index that you're targeting click “Add Fields” look for “Title”, under the “Content” heading hit “Done” look for your title field scrolling down your list of fields and replace its “Type” from “Strong” to "Fulltext" configure the “Boost” dropdown that pops up: set the title, fill in the special keywords field... click the “Save Changes” button   6. Configure the Search View to Your Needs “How to configure custom search in Drupal 8?” You tweak the default search view... The good news is that Search API connects with Views, “spoiling” you with loads of flexibility when setting the way your search results get displayed. But the great news is that you can go even further:   Define a field-based view, add the title and excerpts fields so that your website returns a Google-like title and snippet to its users.   7. Enable the Indexer to “See” the Whole Node Let me guess: you, too, are using Paragraphs on your Drupal site. Who doesn't, right? All that flexibility that you get when putting together your web pages is just... irresistible. Then, you must have already bumped into one “minor” issue: Your search indexer can't “see” the entire content on a page, since the Paragraphs module breaks it into multiple little pieces. Luckily, Search API comes to the rescue!  Just add the “Rendered HTML Output” field to your index and you'll enable the indexer to “see” the whole content on a page. Just like your website visitors see it: with references, paragraph entities and all that... And here's how you incorporate this field:   go to /admin/config/search/search-api click “Edit” click “Fields” on top of the page click “Add Fields” look for “Rendered HTML Output (rendered_item)” under “General” click “Add”    Word of caution: you'll then need to select a view mode for all the content types that your search index can access. Make sure you go with the “default” mode (unless you've set up a custom mode of your own) and not the “search results highlight input”.    8. Add a Custom “search_keywords” Field to the Targeted Content Types Remember the example at the beginning of this post (the one with the “office cleaning” search phrase)? Now, it's about time we found an answer to this question: How can you give your content team more control over the returned search results? Over the results ordering... You set up a new field called “search_keywords” and integrate it with every content-type/bundle that you're targeting:   go to /admin/config/search/search-api click “Edit” click “Fields” click “Add Fields” look for your newly created “Search Keywords”, under “Content” click “Add” look for your new field in the fields list change its type from “String” to “Fulltext” configure the “Boost” dropdown showing up (consider setting it to 21...) click “Save Changes”   The END! Here are no less than 9 different solutions to your “How to configure a custom search in Drupal 8?” type of dilemma. Which one would you go with? And why? Give us a clue in the comments here below. Image by Republica from Pixabay   ... Read more
Adriana Cacoveanu / Nov 08'2019
What Is the Best Web Design Platform for... You? For the Type of Website that You Need?
For that's the proper question to ask yourself: "What is the best web design platform for my own use case?" For your own context, which is made of specific:   needs constraints and limitations business goals and objectives particular budget level of technical know-how type of website that you need   And this last factor is, by far, the most important criterion to use when you evaluate the most popular web development platforms. When you try to identify the best one for you... It's also the criterion that we'll use in today's post to highlight for you the best web design platforms in 2019.  Just scan through the different types of website listed here below, spot your own type, and see which platform makes your best choice. 1. If You're Building a Low-Maintenance, User-Friendly Website... Say you're not planning to "take over the world" with your new website and you need to be able to keep its maintenance and upkeep to a minimum. Then you opt for Squarespace... And here are the top reasons why you would want to choose this particular platform for web design:   you get a conveniently simple interface it ships with a load of modules to choose from it provides you with eCommerce functionality   It's true, though, that you don't get that much customization freedom as you'd get with other platforms, but it does the job if it's a:   user-friendly low-maintenance   ... website that you're planning to build.   2. If You're Building a Visually-Appealing Website... In this case, your 2 best options are WordPress and Drupal. The first "spoils" you with so many great templates to choose from to create a visually-stunning website. Not to mention the heavy load of WordPress plugins that you can use for custom-tuning your site to fit your aesthetical needs perfectly. Whereas for Drupal (and particularly Drupal 8), you just can't ignore its built-in responsive design capabilities.  Note: one of the aspects that might discourage you from choosing this CMS to create a great looking website is the lower number of Drupal developers compared to the "deep" pool of WordPress talent. That's why we've focused an entire post on the topic of "hiring Drupal developers" and "stuffed" it with tips on where exactly to find the right Drupal talent for your project. 3. If You're Building an Enterprise-Level, Complex Website... Drupal "rocks supreme" on this category:   it's equipped to withstand floods of traffic and massive volumes of content it's designed to handle complex, multi-user content creation and management systems it's robust enough to power heavy multi-site infrastructures it ships with tons of modules to extend its functionality even further    In short: Drupal's an "enterprise-ready" platform; it's built precisely for large,  high-trafficked websites (think Tesla.com, eBay, NASA, Harvard University's website). Where do you add that Drupal stands out as the best platform for responsive web design, as well...   4. What Is the Best Web Design Platform to Rank High on Google? If out-of-the-box SEO optimization features are your top priority, then you'll need to choose between WordPress and Drupal. They both ship with robust plugins, respectively modules, aimed at helping you make your website SEO-friendly.   WordPress The system's already ideally optimized with regards to SEO:   it's coded so that search engines can easily crawl in managing heading and title tags is dead-simple creating and updating content's highly intuitive   Word of caution: WordPress's ease of use and SEO-friendliness does come at a cost: being so popular makes it particularly "tempting" for hackers, too. You don't want to cut down on preventive maintenance costs on your future website.   Drupal Its SEO modules — Pathauto, Yoast, Global Redirect — are designed to streamline all your SEO efforts, from optimizing your meta tags to... setting up your SEO-optimized URLs.   5. If You're Building a Fully Customizable and Scalable Website... "What is the best web design platform for me if I want complete freedom of customization and if I'm planning to scale my website over time?" It's... Drupal, again. From all the most popular web development platforms out there' Drupal sets itself apart as:   the most flexible one: there's a module for any customization work that you might want to do on your website the most scalable one: Drupal's designed to scale up, seamlessly, to accommodate huge loads of content and traffic   6. If You're Building an eCommerce Website... What platform should you power your eCommerce goals with? Well, it depends greatly on whether it's a powerful "selling machine" that you're planning to build or an online store for your start-up business in eCommerce.   Magento  If you have a huge product inventory (maybe even a multi-source one), Magento's your best option. Here's why:   it's robust: Magento's built to cope with an intricate and heavy infrastructure of multiple stores, currencies, languages... it's feature-packed it's scalable: feel free to start with a small online store and to grow it into a complex multi-store network; Magento's designed to accommodate your growth plans, no matter how ambitious   Shopify If you need a website for your start-up eCommerce business and you don't want to get tangled up in customization, a hosted platform like Shopify is the best option:   it's SEO-friendly it provides you with unlimited bandwidth it adjusts to your specific eCommerce business model: POS, dropshop, subscription-based... it provides affiliates capabilities, purchase buttons, Facebook selling support, etc.   Word of caution: do keep in mind that, if you decide to migrate your online store to another platform, it's just your product information that you can export from Shopify.  In other words: don't expect to be able to transfer your user interface and your website design, as well.   7. If You Need a Beautiful Site but Have no Web Design Experience... "What is the best web design platform for me if I want to create an eye-catching website but... I'm a non-developer?" you wonder. "Oh, yes: and I want to build it fast and easy, if possible?" you ask. It's Wix. From the best web design platforms in 2019, Wix suits your needs and limitations perfectly:   you get a user-friendly WYSIWYG interface it "spoils" you with a rich template collection it's easy to learn and even easier to use it "tempts" you with both free and low-cost options   In short: Wix is for anyone with close to zero web design experience who wants the freedom to set up, customize and further update his visually-appealing website himself. 8. If You're Building just a Small, Reference-Driven Website... What if you just need to put together a basic business website to showcase your services? Nothing fancy, just a small website that should provide more detailed information to your potential new clients. And that should fit your budget... Then, what you need is the best website builder software that helps you get your site up and running in no time and grants you full control over its code and design.  And there are quite a few great ones:   Site Manager Weebly SiteBuilder Shopify if it's a no-fuss eCommerce website Wix, again   The END! Have you found that type of website that you're planning to build listed here? Photo by Kaleidico on Unsplash  ... Read more
Adriana Cacoveanu / Oct 30'2019
Acquia Developer Studio: What Is It and Why Would You Want to Use It?
What Is Acquia Developer Studio? Acquia Developer Studio is a collection of tools designed to simplify and streamline all building, testing and deploying processes in Drupal. Or, here's another equally valid definition of this new product: It's a command-line tool that provides developers with all the tools they need to build digital experiences in Drupal... fast. A handy toolbox that boosts their productivity. In short: Acquia Dev Studio enables developers to get a Drupal application up and running — locally and in Acquia Cloud — in... no time.   It Provides You With... 1. A Browser-Based Remote Development Environment (IDE) The integrated IDE “spoils” your Drupal developers with a browser-based UI that speeds up all those common setup tasks they handle in each new project. Take it as a “cloudstation” for all your Drupal-related processes; one customized to each one of your different Drupal projects.   2. A Command Line Interface (CLI) Storing +200 Acquia Cloud API commands and an entire toolbox, this CLI enables any Drupal developer to build a new Drupal 8 project within... a few minutes. Just try to step into your developers' shoes:  You have all those tools that you depend on for building, testing, and deploying your code —  Acquia Pipelines, Lightnining, Landom BLT — conveniently at hand in one connected toolchain.   Why Would You Want to Use Acquia Developer Studio?  Here's a quick empathy exercise for you: Say you're one of the developers working on your current Drupal project. You're eager to implement those cool features that you have in mind, but as you delve in, you realize that there are some critical security patches to handle ASAP. Next, you need to address a software upgrade issue... Not to mention that you constantly need to make sure that all those tools in your heavy toolbox — Drush, Composer, Git, etc. — work perfectly together. How do you manage to speed up all the tedious, repetitive tasks that “kill” your enthusiasm and to focus more on the exciting, more rewarding ones instead? Source: Acquia.com On those that add true value to your project?  How do you juggle with so many tools needed for getting any Drupal app up and running? With so many Drupal processes: building, testing, deploying, monitoring? Well, you use the Acquia Developer Studio to streamline all the processes and automate all the... mundane tasks. Source: Acquia.com Take it as your all-in-one-place suite of tools or your “productivity booster”.  As a company, you'd want to use it because you'd:   cut down on your costs: the development cycle is shorter gain more flexibility in customizing your products to your users' needs: with all your disparate tools centralized in one central ecosystem and all your processes significantly streamlined   And How Do You Install It? It's as quick as entering the following command in your terminal window:  https://downloads.acquia.studio/install-standalone.sh | bash Then, provide the information for sudo access, next just carry out a few more easy steps indicated to you on the corresponding Acquia Docs page.   The END! These are the answers to your legitimate “What” and “Why” questions regarding the Acquia Developer Studio. How do you find these benefits? Are they relevant enough for your own developer workflow? Image by rawpixel from Pixabay  ... Read more
Adriana Cacoveanu / Oct 28'2019