Nov 07 2018
Nov 07

Every big Drupal release opens fantastic opportunities for websites. Three years ago, the eighth Drupal version came to this world — and the world fell in love with top-notch Drupal 8 improvements. Drupal 8 has been getting more and more awesome on its way from Drupal 8.1 to Drupal 8.5, and the latest Drupal 8.6 is cooler still. Drupal 8 is on its peak of flourishing, but the cycles of development never stop. That’s why the Drupal community has already announced the expected release of Drupal 9 and end-of-life for Drupal 8 and 7. Let’s see what it means for Drupal 8 and 7 website owners and what action is needed from them. And, of course, our Drupal team is ready to help them take this action.

The planned release of Drupal 9 and end-of-life for Drupal 8 and 7

A little while after D8 was released, the most impatient and curious ones began to ask questions about the future Drupal 9. When will it be released? What will it offer? Will websites need another upgrade?

Despite the fact that the development branch for Drupal 9 was started years ago, no one could tell its release year for sure. There were even suggestions that Drupal 9 would never come at all — raised by a totally new approach to updates in Drupal 8 and the regular innovation mode.

However, the situation changed in September 2018, at the world-wide meetup for drupalers — Drupal Europe in Darmstadt. The “phantom” of Drupal 9 took exact shape. D9 will come for sure, and the year is defined! Drupal founder Dries Buytaert announced the Drupal community plans on this, as well as illustrated them with images:

  • Drupal 9 release: 2020
  • Drupal 8 end-of-life: 2021
  • Drupal 7 end-of-life: 2021

What the future release of Drupal 9 means for Drupal 8 and 7

End-of-life for Drupal versions: hey, what does it mean?

End-of-life, or EOL, is the moment when official support for a particular Drupal version drops. The Drupal team stops watching over it and creates no more updates and patches for it, including those in the security area. This means more vulnerability to hacker attacks and, of course, no new features.

For example, on February 24, 2016, was the EOL for Drupal 6. The service of upgrades from Drupal 6 to Drupal 7 or 8 became a very popular one with our Drupal team, because many customers applied for that. By the way, if you are still with Drupal 6, it’s high time to upgrade — better late than never!

Usually two latest Drupal versions are supported: the newly released and the previous one. However, in the case with D9, the EOL for D7 comes a little bit later and for D8 a little bit earlier than usual — in 2021 for both.

Although the end-of-life sounds a little scary, there is no need to worry. See next chapters for more information.

What Drupal 9 release means for Drupal 8 websites

What the future release of Drupal 9 means for Drupal 8 and 7

Drupal 8 is in the center of community’s ideas and is getting lucrative technological innovations all the time. Despite the EOL in 2021, the future looks particularly bright for D8 website owners. And here’s why.

Compared to Drupal 7, Drupal 8 is a technological breakthrough. That’s why upgrades from D7 to D8 are often lengthy (depending on the site complexity). But if you once moved to D8 from D7, that was your LAST cumbersome upgrade. No more of that will be needed!

Drupal 8 websites will move to D9 quickly and smoothly. Lightning-fast upgrades will be provided for those that are using the latest Drupal 8 minor version and no deprecated APIs. This golden rule of keeping up-to-date and avoiding deprecated APIs helps even contributed and custom Drupal 8 modules be instantly compatible with Drupal 9! Our Drupal web studio is always ready to take care of this for you.

So an upgrade from D8 to D9 will be something you will almost not notice. The secret is, according to the principle of continuous innovation, Drupal 8 releases backwards-compatible minor versions every half a year. Drupal 9 promises to be almost identical to the latest minor version of Drupal 8 with deprecated code removed, as stated in the article by Dries Buytaert “Making Drupal upgrades easy forever”.

What Drupal 9 release means for Drupal 7 websites

What the future release of Drupal 9 means for Drupal 8 and 7

We wrote that the future looks bright for Drupal 8 website owners, but it does for Drupal 7 website owners as well! They only need to take more decisive action. So what should they do considering the drop of support in 2021?

  • They might hope for a commercial support program for Drupal 7 that the community is thinking to implement, but relying on it looks like staying with the past.
  • They might also wait for Drupal 9 and jump directly to it. But they will need a big upgrade someday anyway — to Drupal 8 or 9, which are very close relatives. The time passes, and all this time they could be enjoying Drupal 8 without putting their success on the shelf.
  • The best option is to move to Drupal 8 in the nearest future. Just one upgrade will be their ticket to the future hassle-free upgrades (to Drupal 9, 10, and beyond). And, of course, they will be in pace with the times and have all Drupal 8 innovations. Our migration experts are ready to smoothly move you to Drupal 8.

So there’s no need for a fortune-teller to predict your future in relation to the release of Drupal 9 ;) The future looks bright for you in any case! The only condition is that have good drupalers at hand.

Drupal updates and upgrades, as well as Drupal support are among our areas of expertise.

Contact our Drupal team, and let’s choose the best action for your website!

Oct 31 2018
Oct 31

Have you thought of expanding your online business overseas? Or having identical platforms available to visitors in Spanish, French and German? There is one certain way to increase your business globally — create a multilingual website!

One might think that it is easy to translate any platform into any languages. However, there are a number of factors to consider when creating multilingual sites.

Our web development team prefers Drupal 8 content management system (CMS) for multilingual websites. Now find out what features make Drupal 8 the perfect choice for a multilingual website development

Benefits of Building a Multilingual Website

First things first. Why should you make your platform multilingual? The benefits of building a multilingual website are numerous. We point out some of the most important ones for your business:

  • to explore new markets.

Providing multilingual content is a necessity in a modern global marketplace. It’s all about reaching and building strong relationships with new customers and visitors. If your content is presented in the customer’s native language, consumption is easy and loyalty grows. If the visitor likes the platform, he might recommend it to his friends. This will rightly earn your place in new markets.

The Number of Internet Users by Language - April, 2018

  • to get more visitors.

It’s obvious that the more languages your website is presented in, the more visitors you can reach. A multilingual platform is a great opportunity to appeal to people from other countries and to increase website traffic.

  • to sell more products and services.

Increased website traffic creates more product and service selling potentials. It’s a simple, by-the-numbers way to instantly expand your business.

  • to improve SEO.

In addition to Google, some countries have their own search engines. Enabling a multilingual search of your website will improve its SEO.

Why Build a Multilingual Site in Drupal 8?

The content of your website is built and stored in your CMS. Choosing the right CMS at the start makes development and further maintenance of a multilingual website much easier.

Why you should opt for Drupal 8?

Powerful built-in multilingual features in Drupal 8.

The Drupal CMS offers powerful multilingual features. What’s more, Drupal 8 provides built-in multilingual modules that make the process even simpler. They are Language, Interface Translation, Content Translation and Configuration Translation modules.

Drupal offers 90+ languages and has a built-in translational core.Drupal translates both your content as well as all the fields, forms and error messages. Everything from configuration settings to menus and views can be translated with the help of out-of-the-box modules in Drupal 8.

Drupal 8 is scalable for multilingual websites.

Drupal is scalable for all your needs. No matter how many languages you choose, it will deliver all your multilingual content.

Transliteration support in Drupal 8.

One really handy addition to Drupal 8 is the Transliteration module added to Drupal core. This module automatically converts special characters such as "ç" and "ü" to "c" and "u" for machine names, file uploads and search results.

And some more! What can you get by building a multilingual website in Drupal 8?

  • Get automatic software translation updates from the Drupal community.
  • Choose what content not to translate.
  • Add a language selector to your site.
  • Overview screen for translators, contextual translation tabs for site builders.
  • Protected local, custom translations which are exportable.

These impressive multilingual capacities are among Drupal 8’s top benefits and it is no wonder that more and more website owners are choosing to migrate to Drupal 8.

Core Modules for Building a Multilingual Website in Drupal 8

Drupal 8 comes with four build-in modules for a multilingual feature.

1. Language Module.

The Language module lets you choose out from 94 languages as of now. With this module you can assign a language to everything: nodes, users, views, blocks and menus. Browser language detection can be easily configured with external language codes. Each user is able to select his own language for the admin interface. Besides, there is built-in transliteration for the machine names.

2. Interface Translation Module.

The Interface Translation module translates the built-in user interface, your added modules and themes. It has built-in translation UI for easier editing. By allowing automatic downloads and updates, this module lets use any translation interface available in the Drupal community in any language supported by Drupal 8. English language is now customizable and removable. There is no more need to use English as your default language.

3. Content Translation Module.

The Content Translation module allows users to translate content entities. It also allows to translate site content, including pages, taxonomy terms and blocks into different languages. The same as in Interface Translation module, the default language of the content can be easily configured. Users can even hide or display the position of language selector.

4. Configuration Translation Module.

The configuration translation module provides a translation interface for configuration. It allows to translate text that is part of the configuration, such as field labels, the text used in Views, etc.

Moreover, there is a provision of an overview screen to help you in the process.

Contributed Modules for Building a Multilingual Website in Drupal 8

Now, let’s proceed with the list of contributed modules that will help you build your Drupal 8 multilingual website.

1. Language Cookie Module.

Language Cookie module identifies visitors' mother languages. How? It simply adds an extra “cookie” field to the Language Negotiation settings. Therefore, the language on your website will instantly be set in accordance with this extra cookie.

2. IP Language Negotiation Module.

IP Language Negotiation is a key module for your Drupal 8 multilingual website. By detecting the countries that your visitors access your website from it instantly displays the content on your website in their native languages.

3. Language Fallback Module.

Language Fallback module allows to specify a language fallback for each defined language, so translation can fallback to another language. If a certain translation can't be delivered to your visitors in your custom language, they will always get the requested content in another familiar language or dialect.

4. Language Selection Page Module.

Instead of trying to identify your website visitors' mother languages, let them choose the languages they'd like to see the content translated to. Language Selection Page module allows visitors of your website to select the language on landing page/splash page, based on the languages that have been enabled on your Drupal platform.

It’s Time to Build a Multilingual Website in Drupal 8

Content on your website determines traffic, positive user experience and conversion rates. Choosing the right CMS from the start is vital to managing the content of any proposed multilingual site.

As soon as Drupal 8 delivers multilingual platforms straight out-of-the-box, it is a perfect solution for building a multilingual website.

Our Drupal development team at InternetDevels has years of experience in developing multilingual websites in Drupal CMS. Don’t hesitate to contact us if you have any questions regarding your multilingual platform or need our services on its development or support.

Oct 03 2018
Oct 03

Hopefully, content editors and website owners are ready to gasp in admiration — because we know they will when they discover Gutenberg editor in Drupal 8. The eighth version of Drupal already boasts with easy content publishing, custom layout creating, and, as of Drupal 8.6.0, improved media handling and remote video embedding. However, there is no limit to perfection! Gutenberg editor is bringing unprecedented content creation features to Drupal 8.

Gutenberg editor in Drupal 8

Where the Gutenberg name comes from

In the XV century, Johannes Gutenberg of Germany invented the printing press, which revolutionized book creation forever. The Gutenberg editor was named after him, and is expected to bring revolutionary web content creation experiences. Well, every epoch needs its own Gutenberg!

The essence of Gutenberg editor’s work

Gutenberg is a modern, open-source user interface for creating rich pages. It is an app built in JavaScript — more precisely, React.js.

Content editors can play with Gutenberg UI to shape the exact look of their pages. They can achieve theming effects otherwise available only to CSS and HTML experts — but easy for anyone with this editor.

Any page elements can be added as blocks and formatted to your heart’s content. These can be image galleries, texts, tables, lists, shortcodes, buttons, columns, social media embeds, paragraphs, quotes, verses, files, and so much more.

Bringing Gutenberg editor to Drupal 8

Gutenberg.js was created with WordPress in mind. WordPress has already adopted the editor, which is promised to be fully ready with the release of WordPress 5. However, this JavaScript app was so lucrative that the Drupal community also decided to get it.

Drupal developers Per Andre Rønsen and Marco Fernandes introduced Gutenberg to everyone at Drupal Europe in Darmstadt and created the Gutenberg Drupal module to connect the editor to Drupal 8 websites.

This Drupal 8 module is in alpha state for the moment of writing, so it is not completely ready for use. The module has a number of issues, and the same applies to Gutenberg editor itself.

Considering the extensive works being performed for both the app and the module, this situation can change very quickly.

How the Gutenberg module in Drupal 8 works

With the Gutenberg Drupal 8 module installed and enabled, the Gutenberg editor needs to be switched on for the desired content types. The “Gutenberg experience” option needs to be selected and checked.

Enable Gutenberg editor for content type in Drupal 8

The module requires a field of “long text” type with the Gutenberg text format selected.

Select Gutenberg text format for content type in Drupal 8

When it’s done, every node opens for editing in the Gutenberg UI. As we see, its interface is pretty much white space, with the menu options hidden until you need them.

By clicking a plus icon in the left-hand corner, you are offered the list of page elements that can be added as blocks. For your convenience, blocks are searchable via the search box.

They fall into six main categories:

  • Drupal blocks

Content body, title, image, user ID, picture, email, comments, and many more.

  • Common blocks

Paragraph, image, heading, gallery, list, quote, audio, cover image, file, video.

  • Formatting

Coding, preformatted, pullquote, table, verse.

  • Layout elements

Button, columns, “more,” page break, separator, spacer.

Shortcode, archives, categories, latest comments, latest posts.

Over 30 social networks and media providers to embed content from.

List of blocks in Drupal 8's Gutenberg editor interface

Once a block is added, you can open its detailed settings in the right hand corner. For example, you can choose the background and text color, the size of the letters, the number of columns, and so on, depending on the block. Many blocks have an advanced option to add CSS styles.

Configuring a block in Drupal 8's Gutenberg editor

You can move the blocks up and down, align them as you wish, switch their block type, duplicate or remove them. In addition to the visual editor, Gutenberg also has the code editor.

To recap

Drupal itself works like the best of Legos. And now it is getting another interesting Lego box inside it — Gutenberg editor.

The time has come for exclusive content creation opportunities! If you wish to migrate to Drupal 8 to enjoy them, or if you need help with installing and configuring any modules like Gutenberg editor in Drupal 8 or other, contact our Drupal web development company.

Sep 06 2018
Sep 06

Congrats to everyone on the release of Drupal 8.6.0! The new minor version of Drupal promises to be equally attractive for website users, owners, editors, and developers alike. Six months ago, when Drupal 8.5 was released, we approached it from a historic point of view, and described the exciting road from Drupal 8.1 to Drupal 8.5. However, the new Drupal 8.6.0 has already been called the greatest update in history! So let’s now take a tour of the awesome Drupal 8.6.0 novelties for websites.

Drupal 8.6.0 release: so what’s new?

Reusable media thanks to the Media Library

The first two Drupal 8.6.0 novelties go hand in hand, so their descriptions will be closely connected. Let’s start with the Media Library — an experimental but incredibly useful module. Editors now can save various media for further reuse on websites.

The Media Library module only works with the Media module enabled as well. You can grab the media from the library during your content creation by using the “Browse” button.

For this, the “Media” field needs to be added to a particular content type. As with all other fields, media can be positioned in your content to your liking.

Media Library - Drupal 8-6-0

All media is also available for managing and deleting on the Media subtab of Content. It can be presented as a grid or a as table.

Media Library - Drupal 8-6-0

Remote videos in your content with oEmbed

In the previous description, we purposely chose to add media from the new media type — “Remote video.” It appeared in Drupal 8.6.0 in addition to the existing “Audio,” “File,”“Image,” and “Video.”

This shows another awesome Drupal 8.6.0 novelty in action — the oEmbed feature. It is meant for embedding YouTube and Vimeo videos into your site’s content just with a simple URL.

OEmbed offers a lightweight and modern way of adding videos to content that is supported by many video content providers. Your users and editors will be delighted!

remote videos - Drupal 8-6-0

The “Media” field for the desired content type just needs to be specified as “Remote video,” and off you go with adding videos to content from your Media Library!

oEmbed - Drupal 8-6-0

A colorful demo site showing Drupal’s capabilities

Everyone will be able to know from the start how tasty Drupal’s features are! Thanks to Drupal Out of the box Initiative, users now get a ready-to-use demo food site.

All they need to do is, during the Drupal installation, to select “Umami Food Magazine” installation profile. It is not intended for use on live sites — just a test drive… or, let’s say, tasting session!

Drupal demo Umami Food Magazine - Drupal 8-6-0

The Umami Food Magazine is already filled with tasty content, and the “Recipe” content type has appropriate fields. The fictional site also demonstrates views, image styles, view modes, menus, and much more.

This experience is absolutely different from getting an empty Drupal website. It shows Drupal in action in a very informative and inspiring way.

Drupal demo Umami Food Magazine - Drupal 8-6-0

Drupal demo Umami Food Magazine - Drupal 8-6-0

The Workspaces module for switching between environments

A new and interesting experimental module Workspaces arrived in Drupal 8.6.0. In the right top corner of your website, the green “Live” button appears, inviting you to manage your workspaces. You immediately have the option to enable the “Stage” workspace.

So the module lets you switch between workspaces — “Stage” and “Live,” or custom ones that can be created. You can deploy your content changes to live as long as it is ready for it, which is very handy when working with multiple content items.

Workspaces - Drupal 8-6-0

Workspaces - Drupal 8-6-0

Stable migration modules and multilingual migrations

Drupal website migration is going to be smoother than before. In the friendly family of migration modules — Migrate, Migrate Drupal, and Migrate Drupal UI — another two reached the stable status in Drupal 8.6.0.

In addition, we welcome a newcomer — Migrate Drupal Multilingual, which is meant to handle “polyglot” websites migrations. It is still experimental, but we know that Drupal 8 experiments are usually lucky!

Drupal 8.5.6:

/home/user/Desktop/Drupal 8.6.0/Migration modules - Drupal 8-6-0.png

Drupal 8.6.0:

/home/user/Desktop/Drupal 8.6.0/Migration modules - Drupal 8-6-0.png

More options for the Layout Builder

Nice surprises continue to arrive from Drupal 8.5’s sensation — the Layout Builder module. Now, on the Manage Display tab of your content, media, taxonomy, comments, and more, you can see the options for using Layout Builder and for allowing individually customizable layouts for every content item.

The “Manage layout” button, just as before, takes you to the page where you can add layouts with different amount of columns, add blocks to them, and otherwise format it to your liking.

Layout Builder - Drupal 8-6-0

Final thoughts

This is just a brief rundown of all Drupal 8.6.0 novelties. And you could start enjoying them all right now! To update your website to Drupal 8.6.0, configure its new modules for your benefit, or finally migrate to Drupal 8, you are always welcome to contact our Drupal company.

Aug 29 2018
Aug 29

Modules in Drupal are an integral part. They serve as a tool for extending site functionality and including more features. The main benefit of using modules in Drupal is that you are able to design your site on your own as you wish. They provide great search opportunities, personalize content and are useful for e-commerce sites. Whether you need to group any sets of requests or create interactive menus – Drupal modules make it possible.

Drupal modules are of 3 types: those that are included in the core (core modules), downloadable from Drupal.org but not a part of core (contributed modules), and written specifically for the project (custom modules). Drupal offers more than 24,000 modules to use, but let’s dwell on those that are the most frequently installed.

The most popular Drupal modules by installation frequency

#1. Chaos tool suite (ctools)

Chaos tool suite (ctools) is the most popular module installed and is ranked in the top position. Mostly it is used by developers to make code more readily available. However, it is essential to install to make other modules work.

#2. Views

Views Drupal module serves for content organization and representation on website. It allows you to manage tables, calendars, comments, contact forms, photo galleries and carousels, blog posts and much more. You can also read more about some special ways to use Views on your Drupal 8 website.

#3. Token

The Token module is perfect for small placeholders usage to complete tasks automatically and is the third the most installed module. This means that this module creates tokens that are replaced before the output for any information, depending on the context.

#4. Pathauto

The Pathauto Drupal module generates user friendly URL aliases automatically. It works with both new and old URLs and is available for many languages. Nevertheless, the PathAuto won’t function if you don’t install Token and Chaos Tool.

#5. Libraries API

The purpose of Libraries API Drupal module is to manage libraries. With this module, libraries can be shared by more than one module or site, classified or controlled by whether they are available. It also prevents incompatibilities through having the same library installed more than once.

#6. Entity API

The Entity API module, in short, simplifies the creation of new entity types. It also enables you to manage entities and their properties in unified way. This module allows you to create, save, delete, view or to determine access for any entity.

#7. jQuery Update

jQuery Update is vital for core javascript code and its changes. It is the simplest way to keep your code updated. It automatically upgrades the version of jQuery in Drupal core to a newer version.

#8. Administration menu

Administration menu is not only about administrative themes. This module simplifies navigation through the page and provides much quicker access to any administrative task than the default toolbar. Used mostly by site administrators, developers and builders, it helps them to save their time.

#9. Webform

Webform Drupal module creates miscellaneous forms and surveys on your site. Apart from it, the module enables you to export data into spreadsheet applications for further processing. Moreover, some statistics algorithms are also included.

#10. Date

Date offers flexible field type for date and time. What is more, Date field and a Date API may be used by other modules. By the way, in Drupal 8, the Date module is in its core unlike in previous versions.

#11. IMCE

IMCE allows to you to upload files and images and browse them. The functions of the module includes basic file operations like upload and delete, image resize and creation, file system support and much more.

This was a list of the most installed, and thus the most popular, Drupal modules. Without a doubt, installing and using Drupal modules boosts your site functional, which is why you can’t miss an opportunity to apply them!

Our team of developers will be happy to help you with installation and settings. If none of the modules fit your needs, we will develop a module that perfectly meets your requirements. Do not hesitate to contact us for further cooperation!

Aug 15 2018
Aug 15

Each can enjoy the advantages of working with Drupal CMF in terms of filling a website due to content improvements. Easy content publishing in Drupal 8 is a great advantage of its usage and explains its popularity. That is why, Drupal is a perfect choice to power content heavy websites.

While content is considered to be the most important part of the resource, Drupal runs a content workflow initiative that simplifies working with website filling. As Drupal is constantly developing, it is not the limit of what the CMF may offer us!  The essence is the improvement of working with content that may be reached through the implementation of various modules. Here is an overview of one of them – Content Moderation Drupal 8 module.

The essence of Content Moderation module

The Content moderation module is a part of a content workflow initiative and is in Drupal 8 core. The module serves to provide easy editing and managing the filling of the site. It is especially useful while working in team.

The principle of work is based on so-called staging. If you need multiple people to edit a node but not change the vision of it immediately – the Content Moderation module is a way out! It enables anyone to perform any changes, but to make it publicly viewed, it should be approved.

The activity is logged in a history. Each step is recorded so that you may track who and when made a change. Moreover, it is possible to get to know who reviewed and approved revision and when was it done.

What does The Content Moderation module do

  • Enables to review content by selected groups before being published.
  • Allows to edit nodes and create new revisions to be approved.
  • The groups are empowered to approve changes. Makes a log history.
  • Permits to have own workflow.
  • Let you create your own ToDo list for what is to be approved or reviewed.
  • Monitors code quality.
  • Controls security and usability.

Why to use Content Moderation module

The Content Moderation module is aimed at providing high quality product

The main goal of the Content Moderation Drupal 8 module is quality. It works in nearly all environments. It is safe and thus does not allow to misuse or bypass the revision moderating. The main point of the Content moderation module is to be stable and provide handy workflow.

The Content Moderation module is simple

Apart from the fact that the module simplifies content moderation, it is easy to use. Moreover, it uses the Drupal API in its best practice.

The Content Moderation module is extendable

Despite its simplicity, the Content moderation module provides API that makes it more extend. Due to its flexibility, most of the workflows are possible to be changed painlessly.

The Content Moderation module is perfect for publishing

Working with drafts has never been as easy as with the Content Moderation Drupal 8 module. The advantage is that firstly, drafts are visible for the author only. After finishing editing, the author can convey it to be approved. After approval, it may be published.

The Content Moderation Drupal 8 module has numerous reasons to employ. If you need any help considering module installation or upgrade, do not hesitate to contact us and we will provide any service you need. In case the module does not meet your requirements, we as Drupal web development company are ready to develop a Drupal module for you and implement any wish into life.

Aug 08 2018
Aug 08

The dream of many website owners is to have email sending opportunities on their websites. Of course, it’s possible with Drupal 8, because it has infinite powers. We’ve already discussed how your Drupal 8 website can “speak” multiple languages, cooperate with any third-party systems, connect to all imaginable social media, make your images perfect on any device, engage your users with super interactive menus, win their hearts with high loading speed, let them publish content on the fly, and what not! It’s now time for a closer look at the options for a perfect mail sending setup.

Drupal 8’s mail sending opportunities

The default mail system in Drupal 8

Drupal 8 has a built-in mail system — MailManager, which also serves as a plugin manager. In addition to basic core mail plugins, developers can also declare their own plugins that implement two main methods — the format() and the send(). There are important hooks to use when working with the MailManager. The main ones are the hook_mail() for sending emails and the hook_mail_alter() for editing the existing setup.

In addition to the default mail system, there also are contributed Drupal modules that add in some important things missing in core, or connect various third-party email sending services to your Drupal website.

Some great contributed Drupal 8 modules for mail sending

The Mail System module

Definitely, here is the most important one among contributed Drupal 8 module in this area — the Mail System module. It fills in the most noticeable gap of Drupal default mail system — namely, provides an administrative interface and an API for working with Drupal mail. This module is also successfully used in combination with other modules.

The Mail System module lets you configure the default mail system by selecting:

  • the standard plugin for email formatting before sending it
  • the standard plugin for sending an email after formatting it
  • the theme that will render the emails

In addition, you can make module-specific settings by selecting:

  • the module
  • the key for identifying specific mails
  • the formatter plugin
  • the sender plugin

the Mail System module in Drupal 8

Integration modules with the example of SendGrid

You could also rely on some popular third-party email service. For instance, consider connecting your Drupal 8 website to a service for transactional and marketing emails — SendGrid, which is trusted by Uber, Spotify, Glassdoor, Airbnb, Yelp and other large companies.

The SendGrid module for Drupal will help you with the integration, after which you will be able to send emails from your Drupal 8 website quickly, reliably and with flexible options. Your emails will be sent via SendGrid cloud-based delivery system with the help of their strong RESTful API.

We have chosen this service as an example, because the Drupal module for it has had a fresh stable version in June. Others include Mailgun, Mandrill, Elastic Email, Sparkpost, PeytzMail, as well as tools like the Swift Mailer library, and so on. All these Drupal third-party integration modules are now in different levels of stability.

The Views Send module

Meet the module that lets you send emails using the power of Views, which is now part of Drupal 8 core. It allows for personalized mass mailing from a View, where each row generates one email.

Using tokens with the Views fields, you can fully personalize your emails. They will have a subject, a body, a recipient's name, email address, and more taken from the View.

The Contact Emails module

Here is another module that adds advanced features to Drupal 8 core — namely, to the core module Contact, which allows users to send email to other users or site administrators via contact forms.

The Contact Emails module brings in such options as sending emails to multiple recipients, using text formats, tokens, and more. You can send as many emails as you wish with different messages.

The Simple Mail module

As the name suggests, the Simple Mail Drupal module makes mail delivery extremely simple, which is great for simple use cases.

With it, you can also queue your emails and manage the queues with the help of another useful module — the Queue UI, which provides a handy user interface for that.

The Reroute Email module

In many cases — for example, when you do some testing — you do not want the users of the site to receive your emails. So it is useful to be able to reroute all outgoing emails to another address. The Reroute email Drupal 8 module will take care of these scenarios.

The HTML Mail module

The HTML Mail module for Drupal 8 adds some theming to your emails. Namely, it lets you theme your email messages in the same way as you theme your website.

To recap

These is just a glimpse at useful modules and opportunities for mail sending in Drupal 8. In addition, there is a very simple way of providing a perfect mail sending system on your website in accordance with all your wishes. Send a short message here to just one recipient — our Drupal 8 team! The rest of the magic will be in our hands.

Jul 18 2018
Jul 18

Each Drupal release makes it more refined and up-to-date. The latest one offers better architecture, fresh functionality, improved security and other benefits of Drupal 8. It is considered to be innovative and progressive due to new functions such as multilingual applications, advanced mobile-friendly options or HTML5 for better site management.

Drupal 8 modules are an integral part of website development. We constantly monitor newly released modules and describe their particulars, how they work and why they are useful. Previously we spoke about modules that will help you to architect your site, boost its functionality, personalize content and even run e-commerce. Now we’ve made a list of best Drupal 8 modules you should have on your Drupal site.

The most useful Drupal 8 Modules you should have

PathAuto

This module will automatically generate SEO optimized and user friendly URL aliases. It is applicable for both new and old URLs and suitable for many languages with transliteration available. However, the PathAuto Drupal 8 module won’t work without Token and Chaos Tool installation.

Admin Toolbar

The Admin toolbar Drupal 8 module provides the user with a drop-down admin menu that gives quick access to all administration pages. This makes navigation simple and less time-consuming.

Metatag

It is not only about creating meta description or keywords tags. The Metatag Drupal 8 module makes it possible for you to monitor what your content looks like when sharing on Facebook or Twitter. It provides support for Open Graph Protocol (for Facebook) and Twitter Cards (for Twitter) while sharing content via social media. This allows you to merge any webpage with social media and control its appearance.

Paragraphs

Paragraphs module is the most popular Drupal 8 module you should have for managing content. It is targeted at simplifying end-users’ performance while editing. It breaks content into components to structure it in a clean way and gives options for design or grouping.

Redirect

If you have your URL changed, this tool is for you. Redirect module will take the user to the necessary page if it has moved or the site was restructured or renamed.

Linkit

Linkit Drupal 8 module provides an automatic way to insert internal or external links in the text. No more copy-pasting or typing URLs, you can just search them via the interface.

Honeypot

The best and maybe the most popular Drupal 8 module you should have to prevent spam. It finds out bots and protects your forms from being autocompleted. Honeypot Drupal 8 module sets the minimum time required before form should be considered to have been entered by a human instead of a bot. If the form is submitted faster, it will be discarded.

Add to Any

One of the most popular social media integration modules in Drupal. Give your readers an opportunity to share your content via social media. The simple Add to Any Drupal 8 module enables you to attach share buttons to Facebook, Twitter, Google+, Pinterest, WhatsApp and more. You may choose the size and shape of buttons.

Superfish

Probably the most popular tool for creating sophisticated interactive menus on your website. Among its advantages are screen adaptability and compatibility. Superfish menus are both keyboard and touchscreen accessible and available for screen readers.

Scheduler

Thanks to Scheduler Drupal 8 module it is possible to postpone content publication. You are able to schedule publishing or unpublishing nodes. Just set a specific date that you want the action done.

Rabbit Hole

Don’t want your node to be viewed directly but have it displayed somewhere else? Rabbit Hole Drupal 8 module will do that for you. You’ll get the ability to control what is to be shown when content is being viewed on its own page. It makes it possible to display an access denied page or a page not found page. You may also redirect a page or as a regular behavior display the entity. Restricting access to the publication, it hides nodes from search engines too.

LoginRadius Customer Identity and Access Management

Simplify the registration form for your Drupal website. LoginRadius Customer Identity and Access Management module allows your users to register via e-mail or social login. There is no need to overload visitors with filling in numerous form fields, no need to create one more username and password. Apart from user registration and social login, the module performs data collection and Sign-On authentification system letting user navigate websites with a single account.

Google analytics

Google analytics module is a must-have on your Drupal website. It is a great technique to track your site attendance. This module is perfect to monitor user statistics and understand user behaviour to make some marketing improvements.

These are only a small part of the Drupal 8 modules you should have on your Drupal website to extend its capability! Our team of developers will be happy to help you with installation and settings. If none of the modules fit your needs, we will develop a module that perfectly meet your requirements.

Jul 05 2018
Jul 05

Convenient searching is a keystone of good website navigation and usability. Help your website users always find what they want, and they will lose all the addresses of your competitors, completely forgetting their names. It’s great that Drupal 8 has excellent search opportunities that are fulfilled by a host of helpful modules. You don’t have to to go far to seek them — we are going to give a little overview of them right now.

Drupal 8’s awesome search opportunities and modules

Core search in Drupal 8

Drupal’s core search has greatly improved in the 8th version. With nothing extra to install, the core Search module in Drupal 8 now lets you create custom search pages. These pages allow for searching for full words in any content nodes, as well as for users.

You can also decide on indexing settings and define the factors that influence the rankings (for example, the time of content creation, number of comments, keyword relevance, and more).

The core search in Drupal 8 works pretty well and is a nice choice for smaller websites that do not have much traffic or complex search needs. If this description fits you, you could order the creation of search features from a good Drupal team right now.

For more advanced search features, let’s move on to the next options.

Search API

Almost unlimited opportunities for searches in Drupal 8 are provided by the contributed Search API module. This flexible and extensible toolset is loved by Drupal developers, because it lets them to create even the most complex search interfaces.

In Drupal 8, Search API unites the functions that used to be scattered around many Drupal 7 modules. For example, it allows you to provide multiple search indexes, which you used to need a separate Search API multi-index searches module. If you are also interested in Search API’s work in Drupal 7, here is a detailed overview by our developers.

If Search API is used, the core Search module should be uninstalled to avoid conflicts like duplicate indexing.

Search API now includes Database Search submodule that provides a search backend. However, Database Search is the best fit for smaller sites, and larger ones would be better relying on more powerful and fast backends like Apache Solr or Elasticsearch.

Search API also comes packed with the Database Search Defaults module that helps with the default setup for Database Search. In addition, there is the Search API Taxonomy Term Handlers submodule that works with taxonomy.

It is awesome that Search API can index absolutely any imaginable entities in Drupal 8 from any desired data sources like content, custom blocks, comments, taxonomy, users, files, and more.

Search API lets you use highlighted search results, use stop words, apply transliteration, ignore the case, stem words for finding single-rooted words, split text into individual words — and that’s just the beginning of the out-of-box possibilities.

Combinations with other modules greatly enhance the powers of Search API. For example:

Finally, one of the greatest features of Search API is the ability to connect your site to famous search platforms like Apache Solr, Elasticsearch etc. Details are below.

Search API Solr Search

Apache Solr is a lightning-fast and powerful open-source search engine, based on Lucene and written in Java. Even websites with extremely high traffic or complex search queries are not a problem for it — Solr easily takes the load off their database.

Search features include faceted search, alternate spellings, content recommendations, highlighted results, attachment search, multisite search, and so much more.

For integrating Solr with Drupal websites, there is the Search API Solr Search module that provides a Solr backend. It work togethers with the Search API, and also needs an Apache Solr server.

By the way, we want to say congratulations on the fresh release of Search API Solr Search — on June 1, it got a stable 8.x-2.0 version!

Another great piece of news is that, as of version 8.x-2.x, the Search API Multilingual Solr Search module has merged into Search API Solr Search. It has a high level of support for non-English languages, cross-language information retrieval (CLIR) and a handy administrative interface.

We also shared with you a detailed review of Search API and Apache Solr in Drupal 7, so check that out if you are interested.

Facets

Amazon, Zappos, Walmart, eBay, and many other famous e-commerce websites have faceted searches. Basically, this means searching by multiple categories and parameters, which allows users to quickly sift out the unnecessary items and narrow down their results.

The Facets module, created purely for Drupal 8, lets site builders create interesting faceted search interfaces. It works both with the core search and the Search API. Especially popular and powerful are faceted Solr search solutions, created in combination with Apache Solr and Search API.

Elasticsearch Connector

When it comes to search platforms, Elasticsearch is a great alternative to to Solr. It is also very scalable, powerful, and flexible, based on Lucene, and written in Java. Elasticsearch can quickly index even large volumes of data. It is API-oriented and can be used with various programming languages.

Just like Solr, Elasticsearch has impressive and extensive search features. The nuances of differences between the two are worth a separate blog post. In any case, we can always help you choose what suits you best.

Of course, Drupal 8 has modules for Elasticsearch integration — for example, Elasticsearch Connector to be used together with Search API.

To recap

There are many other modules for searching in Drupal 8, and they combine with each to offer exactly what your website needs. Additional customization by developers can do miracles in fulfilling your wishes.

For choosing the suitable tools and applying them correctly, you can always rely on our Drupal development team.

We have plenty of experience with Drupal search, including the creation of a large international multi-domain online store with custom facets and Solr.

It is easy to find us without special search features — we are always here for you! ;)

Jun 27 2018
Jun 27

Dear reader, we would like to invite you to follow us. Where? On an exciting virtual journey to DrupalCamp Kyiv 2018! The 10th anniversary of the drupalers’ meetup was amazing, and unusual moments added some spicy flavor to it. A mysterious bearded man in a pilot’s helmet, bikes on the speakers’ stage, the phantom of Drupal 9, and much more lies ahead. Ready? Follow us! ;)

The creators of the future

Just like at DrupalCamp Kyiv 2017, DrupalCamp Kyiv 2016, and before, InternetDevels was a sponsor and attendee of DrupalCamp Kyiv 2018. So we happily arrived in Kyiv wearing our red T-shirts, which were noticeable from anywhere. “Follow us” read the phrase on the T-shirt’s back.

By following us, anyone could find their way through the huge, loft-styled IZONE Creative Community building.

But following us means more than that! Anyone can follow us in being active members of Drupal Ukraine Community, contributing to the development of Drupal, teaching new talents, doing everything with passion, and reaching new heights. These are one of the ways we are all creating the future! That’s why our banner said: “We are more than developers — we are the creators of the future.”

The mysterious bearded man

The future and the new heights were shown on our banner. It featured an energetic man with a pilot’s helmet and an amazing beard, which caused a lot of interest. Who was he?

The “original” was also present at DrupalCamp Kyiv 2018. This was Butmax from InternetDevels. Look at the photo and find 10 differences!

DrupalCamp Kyiv and its air

Oh, that unique atmosphere at Drupal Camps! The organizers may be busy, the participants may be tired after their trip to Kyiv, but everyone is so enthusiastic, happy to see each other, and ready for complete drupalization!

Great speeches: the 3 dimensions of Drupal

Drupal unites people of various professions. At DrupalCamp, you can see Drupal developers, QA engineers, HR managers, project managers, marketing specialists, and many others.

So the speeches at DrupalCamp Kyiv were divided into 3 main areas: development, business, and project management.

The complexity level of all speeches was also graded from 1 to 3. So, looking at the schedule, everyone could decide what suited them better.

But even with that, it was hard to choose among the speeches. They came in 4 streams at the same time. Brilliant speakers and the freshest Drupal topics gave you a real torment of choice!

We all immersed ourselves into the intricacies of Vue.js integration with Drupal 8, the novelties in Drupal 8 core, the ins and outs of GDPR, the use of the Lazy Builder, Drupal 8 caching, custom entities, Robo and BLT, and so much more.

We also heard the expected release date for Drupal 9, whose phantom is already in the air, attracting everyone’s interest. It may arrive two years from now. It may, or it may not — only time will tell! ;)

And, of course, InternetDevels representatives were active at the speeches!

InternetDevels speaker at DrupalCamp Kyiv 2018

Contribution makes the world go round! Our senior Drupal developer Andrew Zahura, aka Ahiles, gave a truly useful speech about how to contribute to Drupal.

Drupal is an open-source CMF that everyone can use for free. But it’s great to share something back! Any drupaler can contribute their modules to Drupal, create patches, make translations, update the documentation, and much more.

However, many think they are too busy for that, and many do not know what steps to take exactly. But, after the speech by Ahiles, drupal.org will hopefully be bursting with new contributions!

Certificates of appreciation

All sponsors received their certificates of appreciation. Noticeably, this year’s DrupalCamp had many individual sponsors who wanted to develop Drupal.

Here is our certificate of appreciation. InternetDevels are happy to support DrupalCamp Kyiv 2018 and Drupal itself!

Prizes: from toy RC cars to full-sized bikes

A very nice part of the event was dealing with prizes from the sponsors and the organizers. Here are some of them.

Even when drupalers grow up, they cannot resist playing with toy RC cars. One of the sponsors arranged a car race whose winner got a car! We are not sure he was able to drive home on it, but nothing is impossible for drupalers!

Another “vehicle” prize was a full-sized bike whose winner was chosen in a draw — and it turned out she had a birthday on the same day as the DrupalCamp 10th anniversary!

The organizers also held a drawing with PhpStorm licenses by JetBrains. As is known, PhpStorm is every Drupal developer’s best assistant.

Afterparty: time to have fun!

All the guests from other cities and from abroad could feel the might of the Dnieper river, because the afterparty was held at River Port Pub. And, of course, everyone enjoyed the communication with old and newly-made friends.

Code sprint: time to code!

A code sprint the next day after a party? Challenge accepted, as real drupalers would say! Saturday was a very productive day for great Drupal minds at Port Creative Hub.

Wrap-up

Congrats on the 10th anniversary to DrupalCamp Kyiv 2018, and many thanks to its organisers, sponsors, and participants!

We would like to note what one of the sponsors said in their speech. DrupalCamp Kyiv gathers 400 people, while DrupalCon gathers 2,000. So the difference is only 5 times, which is very little, considering it’s Ukraine vs. the whole world. DrupalCamp Kyiv is 1/5 of the global DrupalCon!

So let’s continue bringing DrupalCon Ukraine closer — with events like DrupalCamp Kyiv, DrupalCamp Lutsk, and more. We know we can make it!

Let’s create the future together!

May 02 2018
May 02

Sites have truly unlimited opportunities in Drupal 8 — they are not even limited by the “website” concept! They can go far beyond it, and easily exchange data with all imaginable applications. Special opportunities for that have appeared thanks to built-in web services, which are listed among Drupal 8’s main improvements. Let’s see what web services can give you, how they work, and what extra special options are added by other Drupal 8 modules.

Web services: benefits and principles of work

The main web services role is that of a “communicator” between a Drupal website and an external application. This may mean pulling data from a Drupal website, or, vice versa, pushing it there.

Could you imagine the possible gains from outputting your website content, say, to an iOS or Android app? In addition, payment gateways, CRMs, inventory management systems, smart watches and any other apps are ready to work with your Drupal 8 website. And that’s just the beginning of what is possible in the hands of good Drupal developers!

Web services help websites and apps find “common language” — Drupal’s HTML data is magically transformed into the formats that are easily understandable for apps (JSON, XML, HAL+JSON, and so on).

Thanks to web services, you can create an API on your site that other apps can ask to connect to, and you can grant permissions to them. Drupal nodes, taxonomy, collections of content (views) or other information can be fetched from your site.

A glimpse at headless Drupal

The icing on top of the cake is a headless, or decoupled Drupal approach. More and more websites are adopting it nowadays. Drupal backend, as a source of data, is combined with a front-end based on some JavaScript framework (React, Vue, Angular, Node, Ember, etc.).

In this way, JavaScript frameworks can share their best with your Drupal website! You can engage users to the maximum with dynamic features. Interactive dashboards, fast chats, push notifications are just the beginning of the list. And the speed can be fantastic!

Web services in Drupal 8

Drupal 7 and even Drupal 6 had some support for web services, but that was in the form of contributed modules.

Thanks to Web Services and Context Core Initiative (WSCCI), Drupal 8 has web services built into core, and it has been greatly enhanced.

Core Drupal 8 modules for web services

So the big integration story begins with enabling the four core Drupal 8 modules responsible for web services.

  • The Serialization module serializes and deserializes your Drupal website data to and from formats like JSON, XML, or HAL+JSON by normalizing and encoding it.
  • The HAL module adds data normalization by means of the Hypertext Application Language.
  • The RESTful Web Services module exposes your site’s entities or other data in particular API endpoints.
  • The HTTP Basic Authentication (Basic Auth) module authenticates the username and password from a request.

Some contributed Drupal 8 modules for web services

In addition, there are extra opportunities brought by very helpful contributed Drupal modules.

REST UI

This contributed module offers a handy user interface for using core web services. When it is installed and enabled, this interface appears in Configuration — Web services — REST.

GraphQL

Here is a module that lets API builders use GraphQL — a modern query language. This is a nice alternative to the REST architecture traditionally used for APIs. Queries are shaped by the client side precisely to get all they want immediately. Obtaining structured data (including that with a complex hierarchy) is based on the schema.

JSON API

The JSON API contributed module also offers an alternative to REST. It generates an API server with the JSON API specification. According to Drupal founder Dries Buytaert, both JSON API and GraphQL couuld be promising modules in Drupal core some day.

Services

The most popular module for web services in Drupal 7, the Services module has changed greatly for its 8th version. Its benefits include great API customization options, support for configuration entities, multiple response formats, etc.

RELAXed Web Services

While providing a RESTful API, this module offers advanced support for translations, file attachments, revisions, UUID references, opportunity for clients to subscribe to real-time change notifications, etc.

Subrequests

The Subrequests module we once described is a new and interesting module for Drupal 8. It groups any sets of requests together to improve performance. The JSON document named “blueprint” contains all the necessary information.

Final thoughts

All these core modules, as well as these and other contributed modules, do an awesome job! However, unlike simple cases of setting up an API, more complex ones usually require some custom code writing.

Whatever your ideas about third-party integration are, you can contact our Drupal developers. They will handle even the most complicated projects with web services.

Let your website go beyond the boundaries and give you more!

Apr 18 2018
Apr 18

Let us invite you to an exciting masquerade! Its mission is to check what each user can see or do on your website. Drupal has an awesomely flexible system of user roles and permissions, as well as opportunities for fine-grained user access. These are the keystones of Drupal security, smooth user experiences, and cool features. You can make the most out of them, and then test the result for different users with the help of the Masquerade module. Interested? Let the masquerade begin!

How the Masquerade module works

The essence of Drupal Masquerade

To check new features or settings related to user access or permissions, site builders and administrators usually create test user accounts.

Without the Masquerade module, they have to log in and out of these test accounts, which is not always convenient. The Masquerade module lets them switch accounts with no login procedures and surf the site as a particular user. They can easily try on the “mask” of any user and then take it off by clicking “Unmasquerade.”

Who can masquerade as who: user permissions

Usually, it’s only the administrator that’s allowed to do the masquerading. However, permissions to use masquerade can be fine-tuned in People — Roles — Permissions.

As you see, there is no option to masquerade as anonymous user, since it is considered a little buggy.

How to masquerade as a user

The module works a little differently in Drupal 6, 7, and 8. In today’s example, we will look at Drupal 8.

So, with the Masquerade module  installed and enabled, the “Masquerade as” option will become available next to each user in the dropdown list of “operations.” We can also see it on each user’s page.

In addition, there is a handy form for quick user switching that can be placed anywhere on the website, like any other block. In Structure — Block layout, we click on the site’s region where we want to see it, click “Place block”, find “Masquerade — Forms” on the list, click “Place block” again, and finally save the blocks.

It is very handy to have the “Masquerade as” form in the left sidebar. The “Unmasquerade” link is at the top of the page.

An example of Masquerade module’s use

It’s now time to invite a couple of our masquerade participants! Our authenticated users will be Colombina and Arlecchino.

In our example, authenticated users can post their content, and each user should have a “My masquerade photos” page where only they see the photos they authored.

For this experiment, let’s make sure that at least some pieces of content for this content type are authored by Colombina and Arlecchino. We can change this in the “Authored by” option of each piece of content.

Let’s now create a simple views with all photos. It now shows all of them yet with no filtering according to user.

To achieve this, we will go to views advanced settings. There, let’s add a relationship to author, as well as create a contextual filter that only displays the content if its author matches the current user ID. And the Masquerade module will then help us check if each user really sees their own photos only.

So our roleplay begins — we are going to the “Masquerade as” form in the left sidebar and masquerading as Colombina. That’s right, we can only see her content. Awesome!

Since only the administrator can use masquerade and we are now “Colombina,” the “Masquerade as” form disappeared from the sidebar.

Let’s click “Unmasquerade” at the top of the page to return to admin’s account, and then masquerade as Arlecchino. We only see Arlecchino’s content. Wonderful!

We should never forget to unmasquerade back. The masquerade has been successful and it is now over.

Final thoughts

That’s been a brief overview of what the Masquerade module can do for testing purposes. Drupal hides many more secrets, and its possibilities are unlimited.

Contact our team if you want to create amazing access-based features for your users, set up an order to all roles and permissions, get help with testing, and so much more!

Mar 29 2018
Mar 29

Audience boosters, sales increasers, brand builders… All this and more applies to social networks! Drupal lets you easily integrate these unmatched promotion tools with your website. We have shared a great collection of Drupal social media integration modules in part 1 and 2. Time flies, and we would now like to make an overview of social media integration modules that are specific for the latest Drupal version — Drupal 8.

Drupal 8 social media integration modules

So here are some modules that will be very useful in your business promotion via Facebook, Twitter, LinkedIn, Pinterest, Instagram, Flickr, Tumblr, YouTube, Google+, Delicious, and lots of other social networks. Some of them are general, or cross-network modules, while others are made for particular social networks.

Some general Drupal 8 social media integration modules

Easy Social

As the name suggests, this Drupal 8 module is meant for those who want to quickly set up simple social sharing buttons. It includes default widgets for Twitter, Facebook, LinkedIn, and Google+.

AddToAny Share Buttons

This social media integration module has vector buttons with AddToAny icons in SVG format, as well as a universal sharing button. Its pros include displaying well on Retina devices, Ajax support, loading optimization and more.

Social media share

Here is a tool that also makes it easy to share your site’s content to various social networks. It offers a special social media field type. The flexibility of the module makes absolutely all kinds of pages shareable.

Social Media Links Block and Field

The module offers an easily configurable “Follow us” block, various icon sets of all sizes, support for Panels, and more. As of Drupal version 8.x-2.4, it also has a Social Media Links Field submodule.

Social Timeline

Share various social network content on your site’s timeline! Here is a social media integration module that offers a wide choice of networks by default, supports keywords, hashtags, social filters, multiple custom feeds, and more.

Social Counters

This module will count your likes/subscribers in various social networks and save this information in the Drupal cache. The Drupal 8 version has the ntegration with the Views and Plugin API.

Shortcode Social

The Shortcode module lets your website’s users easily embed social media content into WYSIWYG editor with the help of shortcodes. No traditional iframes or embed codes are needed.

OneAll Social Login

Your users will be able to register and login to your Drupal 8 site from their accounts in over 35 social networks. This makes registration easy, as well as giving you their social data based on permissions.

Sharethis block

Encourage your users to “share this” by showing the appropriate block of buttons thanks to this social media integration module. You can put it wherever on your website you want it and enjoy flexible block configuration options.

Social SimpleSharer

Here is a module that creates two social sharing blocks on your Drupal 8 site: for a full-sized icon and for a smaller one, too. It offers nice styling options and is unique for not using JavaScript.

Some network-specific Drupal 8 social media integration modules

Facebook Instant Articles

Here is a fresh module whose stable Drupal 8 version has been released on March 15. It allows posting Drupal content to Facebook as Instant Articles, which load lightning-fast on mobile devices.

Facebook Page Plugin

The module offers a block about your Facebook page for your site. It shows how many people liked your page, and which of them are users’ friends. It also lists recent posts and encourages readers to like your page in one click.

Facebook Album

You can display public albums from Facebook pages as galleries or Colorbox pop-ups. The module offers options like configuring album and photo height and width, including or excluding albums from display, and more.

Twitter_Feed

Your Drupal 8 site will have a nice Twitter feed of latest posts. The module uses Twitter REST API and the jQuery Timeago plugin, has a user-friendly way of showing dates (for example, “3 hours ago”), and is highly configurable.

Pinterest Hover button

The Pinterest “Pin it” hover button will appear on your Drupal 8 site’s images. You can configure its size, color, shape, and more. The Drupal 8 version of this module supports responsive images.

YoutubeChannel

Thanks to this module, your Drupal 8 site will show videos from a particular YouTube channel. The first video will come as iFrame, others as thumbnails, and there will be a handy vertical scroll bar.

Video Embed Instagram

This is a special module for Instagram that works with the general Video Embed Field module. It allows for posting Instagram videos on your Drupal 8 site by adding the video URL in the video embed field.

Wrap-up

Let your website be sociable! And great Drupal 8 social media integration modules will let it socialize to the maximum.

For help with the perfect social media integration — from configuring Drupal 8 modules to creating custom solutions — always contact our Drupal team!

Mar 21 2018
Mar 21

What should a dream theme for a Drupal 8 website be like? Responsive, modern-looking, highly customizable, rich in powerful features, and intuitively understandable, perhaps? Many developers would say a theme based on the Bootstrap framework includes all these things. It is a good practice to create Drupal 8 Bootstrap subthemes for websites from the Drupal Bootstrap theme. In addition, there are many free Bootstrap-based Drupal 8 themes ready to be installed on your site right away.

So Drupal offers options for everyone! If you wish, use the popular Drupal Bootstrap theme that has 160,000 overall installs and recently had its fresh release — 8.x-3.11. You can create a subtheme from it or make your own theme from scratch — theming in Drupal 8 is very convenient thanks to novelties, like the use of Twig engine and YAML files.

Or you can choose one of nice, free, ready-made Bootstrap-based themes for Drupal 8. They can also be further customized to your liking — by yourself or with the help of our Drupal developers. Let’s start enjoying our little collection!

Some nice free Bootstrap-based Drupal 8 themes

Startup Growth Lite

The Startup Growth Lite theme is based on the latest Bootstrap 4. It features 12 excellent color schemes with 2 versions of each, layouts for 1, 2, and 3 columns, mobile menus, and more. It is also meant to work great with Drupal Commerce.

Bootstrap Mint

Thanks to the mobile-first Bootstrap Mint theme, Drupal 8 sites can enjoy a responsive slideshow (Bootstrap carousel), dynamic columns, a responsive multi-level dropdown menu, layout choice from 1 to 4 columns, Retina-ready icons, 25 regions etc.

BusinessGroup Zymphonies Theme

This free Bootstrap-based theme is created in a business style. Its attractions are multi-level responsive menus, a custom Bootstrap slider, a sidebar that can be positioned left, right, or to full width, Font Awesome icons, flexible social media link options, and so on.

Aegan

Aegan is a lightweight and modern-looking theme that is available in 8 colors, supports multi-level menus and Font Awesome, features a customizable slideshow, offers flexible options to configure social media icons, and more.

Paxton

Here is a multipurpose, easy-to-use, and responsive theme for corporate, business, and portfolio websites. It has 17 regions, Font Awesome support, 1, 2, and 3 column layouts, and other features.

Bootstrap Business

Drupal 8 business and corporate sites may enjoy another free responsive Bootstrap-based theme. It offers 20 regions, HTML5 and CSS3, supports the Superfish module for great menus and the Color module for color adjustments, and more.

BonVoyage

All travel agencies can say “Bon Voyage” to their customers in a beautiful way! Perfect cross-browser compatibility, easy navigation, the “back to top” button, animation, CSS3, HTML5, JQuery, and other features make this theme a good choice.

Showcase Lite

The Showcase Lite is a mobile-first Drupal 8 theme for companies that want to showcase their products or services. It features 34 regions, Superfish menus, HTML5 and CSS3, a layout for 1, 2, or 3 columns, and so on.

Magazine Lite

Here is a free mobile-first theme from the same creators and with very similar features (Superfish menus, HTML5 and CSS3, a 1, 2, or 3-column layout, and 34 regions to present your content). However, it is specially designed for news and magazine sites.

Ice Magic

Ice Magic is a free responsive Drupal 8 theme that has unmatched color adjustment opportunities thanks to the Color module and Google Material Design Colors. It also offers great integration with Bootstrap CSS and JS components, Font Awesome, and more.

Wrap-up

Inspired by these free Bootstrap-based Drupal 8 themes? These are just a couple of nice examples. If you wish to choose one and install it on your Drupal 8 website, customize it to your liking, or maybe create a new theme, free free to contact our developers.

Let your dream theme present your content in the best way, capture your users’ attention, and easily guide them through your website.

Mar 07 2018
Mar 07

To honor the Drupal 8.5.0 release on March 7, we will not just describe what’s new in it. Drupal 8 has already had 5 awesome minor releases: Drupal 8.1.0, Drupal 8.2.0, Drupal 8.3.0, Drupal 8.4.0, and now Drupal 8.5.0. Each of these versions gives us great novelties that make Drupal 8 easier to use for editors, faster, more innovative, and more.

So let’s now flashback and look at 5 great features in each of the 5 great releases. Drupal 8.5.0 will receive the most of our attention. And, for dessert, we will sum it up with a colorful infographic.

Drupal 8.5.0 release: how we have arrived to it

The road to Drupal 8.5.0: step 1 — Drupal 8.1.0

The BigPipe module

Drupal 8.1 gives us a new awesome experimental module for performance optimization. The BigPipe module lets site users immediately see the static page elements and receive the dynamic ones next.

Modules for migration

We get a “family” of experimental modules for smoother upgrades and migration from Drupal 6 or 7 to Drupal 8. They are the Migrate, Migrate Drupal, and Migrate Drupal UI modules.

CKEditor improvements

As of Drupal 8.1, CKEditor begins to support native browser spell-checking. It also gets a language button in its toolbar for adding language attributes to parts of multilingual text.

Easier help tours

Drupal help tutorials, aka “tours,” throughout a website’s administrative interface, becomes easier to find and use. Everyone can better understand how Drupal works.

Better Composer support

Composer, the greatest assistant of all times to PHP-based CMSs, can be used for managing all third-party packages needed by websites as of Drupal 8.1.0 .

The road to Drupal 8.5.0: step 2 — Drupal 8.2.0

The Place Block module

It is now easy to place and configure blocks with the experimental Place Block module. It offers a “Place block” link in the admin toolbar, which opens the theme regions with quick block adding and editing options.

The Settings Tray module

Another experimental module for configuring blocks emerges in Drupal 8.2. The blue “Edit” button initiates the block editing mode with a handy block configuration tray popping up in the sidebar.

The Content Moderation module

This experimental module lets site administrators define content moderation states. They also can decide which user roles are allowed to change these states.

The Datetime Range module

Drupal 8.2 gets a new experimental Datetime Range module. It offers a new field type for defining not just simple dates but date ranges (the beginning and end dates).

Content revisions enabled

For new content types, content revisions will be enabled by default. This makes it easy to roll back to the needed content versions and never lose any important content.

The road to Drupal 8.5.0: step 3 — Drupal 8.3.0

New CKEditor 4.6

We get a fresh version of CKEditor with an updated UI, a new feature for pasting from Word, drag-and-drop options, the AutoGrow plugin for working with large screen sizes, and more.

The Workflows module

This new experimental module gives us a handy UI for creating workflows with certain states. It can pair well with the Content Moderation module, but can also be used for non-content workflows.

Field Layout and Layout Discovery

We enjoy a new pair of experimental modules for layouts, the Field Layout and the Layout Discovery. They make it handy to arrange fields and allow modules or themes to register their layouts.

BigPipe stable & improved

One of Drupal 8’s hottest novelties, the BigPipe module, reaches stability in Drupal 8.3.0. It has also received some improvements, for example, better usability on mobile devices.

More support for web services

Drupal cooperates with external applications better and better! The REST API allows for user registration, 403 responses coming with explanations, anonymous REST API performance rises, and more.

The road to Drupal 8.5.0: step 4 — Drupal 8.4.0

Multiple modules reach stability

In Drupal 8.4.0, a bunch of modules become stable (Layout Discovery, Workflows, Datetime Range, Inline Form Errors, and Media). Next come more details about the latter two.

The Media API

Here is a remarkable novelty for media handling (e.g. creating media types, saving media to your library, and reusing them). In Drupal 8.4.0, the Media API is ready, but the module is currently hidden from the dashboard.

The Inline Form Errors module

A great usability and accessibility improvement arrives with Drupal 8.4.0 with the Inline Form Errors module. It lists form validation errors both next to the form and in the summary above.

Even more support for web services

In Drupal 8.4.0, web services receive still more attention, which results in a 15% performance boost for authenticated REST requests, REST features enhancement, and more.

New Symfony, jQuery, Drush, and more

In Drupal 8.4.0, we see updates of Symfony to 3.2, jQuery to 3, and jQuery UI to 1.12. Drush 8.1.12 becomes required. The support for Internet Explorer 9 and 10 discontinues.

Drupal 8.5.0 and its new great features

The Layout Builder module

Drupal 8.5.0’s long-expected sensation is the experimental Layout Builder module. Editors can now easily create layouts by selecting from the predefined ones, adding sections and blocks, and arranging them in various ways.

After enabling the module, you see that the “Manage display” tab in a particular content type’s configuration page no longer shows the list of fields. Instead, it has a “Manage layout” button. The button leads you to the incredibly handy layout management page for this content type items. Before you press it, you can also allow each content item to have a special layout by checking the appropriate option in “Layout options”.

The Media module stable and improved

Compared to Drupal 8.4, where the Media module is hidden by default and needs contributed modules, Drupal 8.5 makes it stable and available on the dashboard, as well as improves its user experience.

In Structure — Media Types, you can see four default types (Audio, File, Image, and Video) and can add your own. In the list of fields, there is now a Media field available, for which you can define media types. Editors are able to create their media or reuse existing ones by starting to type their name.

The Settings Tray module stable

Here is another famous module that has moved from experimental to stable in Drupal 8.5.0. Its magic blue “Editing” button and handy tray for block editing is ready to work reliably on production websites.

After enabling the module, just click on the “Edit” button in the left upper corner of your site, with no need to go to the admin dashboard. You will see the block configuration page. To call the helpful tray in the sidebar, click “Quick edit” next to any block of your interest.

The Content Moderation module stable

One more popular module is ready for production sites. It works together with the Workflows module and lets you choose Content Moderation workflow type, which is ideal for editorial processes.

You can use the default “Editorial” workflow or create your own. In the workflow, create states (like Draft, Published, Archived etc.) and transitions (like from Draft to Published etc.). It is also possible to define which items this workflow applies to (which content types, media types, and custom block types).

The Migrate API stable

Great news for all who want to safely migrate their content from Drupal 6 or Drupal 7 to Drupal 8! The Migrate API is stable and works in a tandem with its experimental “collegues”: Migrate Drupal and Migrate Drupal UI.

We almost have the whole “company” stable in Drupal core. This is very important, because more and more websites want to move to Drupal 8.

And more!

In addition, Drupal 8.5.0 has the BigPipe module enabled from the start, thus offering an out-of-box feature that allows you to deliver content to website users much faster. BigPipe is an example of a module that has travelled its path from experimental in Drupal 8.1.0 to a member of the “main squad” in Drupal 8.5.0 core!

Drupal 8.5.0 also brings in API-first improvements, which make Drupal third-party integration capabilities even stronger. They include better serialization for getting Drupal data via REST API, enhanced documentation, translation support, handier file uploads via REST API, JSON API, and GraphQL, more flexible permissions, better test coverage, optimized performance, and more.

Drupal 8.5.0 is awesome, and it’s been great to look back at how “the great eight” evolved from 8.1.0. And sky’s the limit for further Drupal 8’s innovations!

If you wish to get an awesome Drupal 8 website, upgrade your existing site to Drupal 8 or update it to Drupal 8.5.0, feel free to contact our team.

And now please enjoy the infographic!

Feb 07 2018
Feb 07

In the world of business and finance, a website should as reliable as a Swiss watch, unbreakable like an armored safe, irresistibly attractive like George Washington’s portrait on a banknote, fast like a business-class car — the list could go on. And Drupal fits all these and other requirements! The ability to easily integrate the site with third-party systems, output data to any application and “lock and seal” the site in terms of security — these advantages alone put Drupal at the head of the pack. But this is just the beginning of the list, because everything is possible with Drupal. So it is no wonder that business & finance companies choose Drupal for their websites, just like they do for e-commerce, healthcare, educational, and other businesses. Here’s a couple of examples.

Examples of great business & finance websites built with Drupal

Mint

This is a website for a popular money management tool, which offers a unified interface for customers to track their financial activities (credit card, banking, and other operations), create budgets, get alerts, etc. This website wasn’t originally on Drupal, but moved to it to satisfy its high requirements.

NCR

Here is another example of a business website for a company that found Drupal’s benefits irresistible and migrated to Drupal. The website for the NCR corporation features an extensive catalog of business solutions per industry, powerful data analysis, interactive tools, internationalization, and more.

Voya Financial

A global provider of financial, retirement, investment and insurance services got a powerful Drupal site to present them all. It includes online savings and expense calculators, financial planners for various purposes, comparison tools, and much more.

Societe Generale

Here is a Drupal website for a multinational company specializing in banking and finance services. It uses Drupal’s awesome multilingual features and includes a collection of sites (for private banking, corporate and investment banking, careers, and more). It also has versions for customers from different countries.

Webster Bank

Drupal was a great solution for this famous commercial bank’s website. It presents all of the bank’s services and offers a user cabinet, as well as online banking with features like online bill payment, mobile deposit, account alerts, mobile banking, chats with bank staff, and more.

The Carlyle Group

Drupal 8, with its unprecedented multilingual improvements and easy content editing, became the best fit for this famous investment firm with staff working on 6 continents. Their website with over 20 thousand pieces of content was migrated from Drupal 6 to Drupal 8. It has English, Japanese and Chinese language versions, a media room, analytics, and much more.

Principal

This global investment management company chose Drupal as well. The site offers handy and interactive ways to present all the company’s financial products and services related to retirement, asset management, insurance, etc. It also has two languages, an online payment feature, and more.

Swift

On the multilingual website of this global messaging service provider, you will read that they are trusted by 11,000 financial organizations in over 200 countries. And who does this provider trust? Drupal, of course! The site has everything users need to discover Swift services, as well as offering a user cabinet for tracking orders and invoices, receiving online support, and more.

Final thoughts

Let’s get down to business ;) If you would like to have a feature-rich, powerful, and attractive website in the business & finance industry or any other, contact our team of developers with 10 years of experience!

Jan 31 2018
Jan 31

This was a blog post written by guest author Martin Postma (lolandese).
He usually writes directly on Drupal.org as an author of documentation.
Documentation is however not included on Drupal Planet so he asked us
to publish it on our blog to give it more exposure to stimulate the kick-off of this new initiative.

Handing over ownership of a module you authored isn't always easy. You invested probably a substantial amount of time in it. It might feel like giving "your baby" away. Sometimes, however, it is the way to "keep it alive" if for one reason or the other you lack the time to solve major issues or port it to Drupal 8. Even if you intend to stay active as a maintainer it might be good to get more people involved when the complexity of your project grows. Many hands make light work. Besides, passing the baton makes part of the Open Source spirit that makes the community prosper.

To attract others changing the maintenance status of a project to "Seeking new maintainer" is the first thing to do. If you want to say, "Hey, you can become a maintainer, but solve some active issues first", then the Open Ownership Pledge might be a good addition. It gives some guarantees to those deciding to write a patch for your module. On the other hand, it assures you that the project will receive a development boost before passing it on. In short, being a win-win for both sides, it provides some basic rules by which to "play the game" to become a co-maintainer or take over ownership.

Recently the initiative of the Open Ownership Pledge was kicked off by InternetDevels and me (lolandese) with a series of modules on which it was applied. InternetDevels is a Ukrainian based company that worked on both Symfony and Drupal projects long before the release of Drupal 8. Along with excellent Drupal developers, they found themselves with some Symfony developers that were relatively new to Drupal but experienced with Symfony. That gave them a headstart for Drupal 8. The way InternetDevels choose to make those developers "get their hands dirty" with Drupal 8 is by letting them work on contrib modules more than writing custom code.

The first module, UpTime Widget, passed ownership only five days after starting the initiative and resulted in a bunch of issues being fixed and a reinvigorated working Drupal 8 version of the module.

The long-term aim of the Open Ownership Pledge is to have more projects involved that grow and receive continued maintenance by a chain of developers that pass on ownership when needed. That makes part of the spirit of Open Source that makes our community thrive. Please, consider passing the baton of any project you currently maintain on Drupal.org.

Dec 06 2017
Dec 06

Hearing the words “migration from Drupal to WordPress,” some Drupal developers would shrug their shoulders and WordPress developers would applaud. However, there is no place for rivalry, even for such life-long competition as that between Drupal and WordPress, where the most important result is an absolutely happy customer. For every case, there is a platform that fits a website like a glove. And if a customer for whatever reason feels the “glove” is not perfectly comfortable, maybe it’s time to go ahead and change it. Though, it will take, of course, a little longer than a change of outfit :)

When it comes to choosing between Drupal and WordPress, migrations from WordPress to Drupal are more frequent. This is due to Drupal’s unlimited opportunities for various powerful features, fortress-level security, ability to handle more content and users, and so on.

Still, some customers wish to jump from Drupal to WordPress, seduced by the unmatched simplicity of the interface, a gentle learning curve to start working straight away, many beautiful free themes, and more — they just do not need what Drupal has to offer.

For those who are determined to move from Drupal to WordPress, we describe the opportunity to do so.

Drupal-to-WordPress migration via the FG Drupal to WordPress plugin

You can use the handy FG Drupal to WordPress plugin, which is ready for all Drupal and WordPress versions including the latest ones (8 and 4.9, respectively).

It migrates Drupal’s articles, basic pages, categories, tags, images, and more. It also resizes images according to WordPress settings, modifies URLs, preserves the ALT attributes for images, and does lots of other useful things.

The premium version promises to go even further and migrate custom taxonomies, fields, content types, users, comments, node relationships, as well as redirect URLs from Drupal to WordPress, accept user’s Drupal passwords, and so on.

To do a Drupal-to-WordPress migration with the FG, you will basically need to:

  • Install and enable the FG Drupal to WordPress plugin on the WP site.
  • Find the “import” option and enter your Drupal database parameters there.
  • Configure the FG’s content import options and perform the import.

Before the migration, stay safe and do not forget to backup your Drupal website, as well as your WordPress website (if you are migrating to an existing one, not a blank new WP installation).

Drupal to WordPress migrations from our experience

The CMSs are different, so custom content migration needs great care. For many cases, ready tools are not enough and you will need custom migration scripts for Drupal-to-WordPress migration. That’s what we faced when performing migrations from Drupal to WordPress for our customers.

Let’s look at a little example — a website with Books and Quizz content types. We created the appropriate post types in WordPress with extra customization.

  • Books. In Drupal, relationships are provided by the Books module where every book page has its weight. In WordPress, we created a custom type of post and expressed relationships via additional fields.
  • Quizzes. We customized the look of quizzes in the WP Pro Quizz plugin by providing an XML file generation to import all test categories, test topics and issues. This included answers of two types: true-false and multichoice.

Final thoughts

To insure that all your content moves safely and accurately to a new place, contact our WordPress team. We have both Drupal and WordPress developers in our company, so the process is bound to be smooth, with the smallest details, specific to both CMSs, taken into account. Enjoy your Drupal-to-WordPress migration!

Dec 01 2017
Dec 01

What a busy and interesting life an online store has! The Black Friday excitement is replaced with the holiday season rush, and so it goes on and on. But, no matter the season or occasion, your products will be always be ready to attract customers. Great product customization opportunities are among the numerous great features of Drupal Commerce 2.0, the new version of the famous module for building Drupal 8 online stores. So let’s take a glimpse at how product customization works in Drupal Commerce 2.0.

Product customization in Drupal Commerce 2.0

The new version of Drupal Commerce offers a better user experience as well as a new product architecture. In Drupal 7, all products had to be created in their own UI. In the eighth Drupal version, you can easily and quickly create product variations of the same product right away and customize them to your liking.

Unique product variations

Everyone loves a broad range of choices. Your products may (as products usually do) come in various colors, sizes, etc. In Drupal Commerce, these are called product attributes. Each attribute has values (for example, S, M, L for size or red, green, blue for color).

A combination of these attribute values makes a unique product variation. For example, a red, S-size sweater is a product variation that has the “red” value for the “color” attribute and the “S” value for the “size” attribute.

Each product variation is assigned its own SKU (machine-readable ID). Among other benefits, SKU lets you easily track how many products of each variation has been purchased and how many remain in stock.

Product creation and customization: a little step-by-step “crib”

  • Creating product attributes. First, in admin/commerce/product-attributes, create product attributes and define their values. You can configure the options display for the buyers in the cart, drag to reorder the values, make them translatable and more. For extra customization, use fields.
  • Creating product variation types. Next, in admin/commerce/config/product-variation-types, create product variation types and add attributes to them. You can also add fields, like an image field.
  • Creating product types. In admin/commerce/config/product-types, you can create product types and select the newly created variation types.
  • Creating products and their variations. Finally, in admin/commerce/products, create new products by filling in all the required information (description, price, SKU, and more). Use the “Add new variation” button for multiple variations.

The Commerce Fancy Attributes built-in module

Let’s return to our attributes for a second. Thanks to the Fancy Attributes module now built into Drupal Commerce 2.0, you can display creative selectors for product attributes. For example, you can show a color swatch to your customers instead of just a color list.

The Commerce Customizable Products built-in module

Here is another interesting novelty among built-in Commerce 2.0 modules. It’s not just you and your website’s editors who can product customization. Buyers can do it, too (for example, visiting cards require a contact information and a logo). Here is a module that lets your buyers customise products during the checkout process.

The automatic SKU generation option

There is also a contributed module called Commerce AutoSKU that will generate SKUs for you automatically based on the product field values. You can configure the SKU generation pattern for each product type. The Token module will be additional help in this process.

Final thoughts

This has been a short glimpse at product customization opportunities in Drupal 8 online stores, which are truly endless. To organize this process exactly in accordance with your preferences, or get a fresh new online store, contact our Drupal developers who know Drupal 8 well and love Commerce!

Nov 28 2017
Nov 28

In every corner of the world, your potential customers are waiting for your website to start “speaking” their language. And it’s easy to provide that with Drupal 8, a true polyglot among CMSs. Unmatched multilingual capacities are among Drupal 8’s most lucrative features that inspire website owners to choose “the great eight” — either to get a website or to upgrade their existing one. Well, it’s really hard to resist! Just as we cannot help giving these multilingual improvements a little overview.

The multilingual sensation of Drupal 8

In Drupal’s previous version, Drupal 7, multilingual features required installing dozens of contributed modules and making plenty of complicated configurations.

Changing this was the dream of the Drupal community, which started the Multilingual Initiative (D8MI), led by Gábor Hojtsy of Acquia and contributed to by over a thousand enthusiastic developers.

The results are stunning! Drupal 8 understands languages at all levels, since it has a language-first approach. And you will immediately understand what this means when you hear the names of the four core modules that contain Drupal 8’s multilingual capacities: Language, Configuration Translation, Content Translation, and Interface Translation. They let you translate anything!

Translating your interface, configuration, and content

You can feel it already the moment you install Drupal 8. It lets you select your language from an impressive list of a hundred languages, and even gives you a hint by looking at your browser language. If you select a language other than English, Drupal automatically downloads the latest available interface translations from https://localize.drupal.org/. You can then go through the installation and setup process in your own language with no need for a dictionary. This includes RTL (right-to-left) languages.

But it’s just the beginning. You can stay with that single language, or you can choose to add more languages to your Drupal 8 website and make it multilingual. The four above-mentioned multilingual core modules are waiting to be enabled by you and set the wheels turning.

Then, in Configuration — Regional and Language — Languages, you can add any languages you wish to your site, and just watch Drupal download the available interface translations!

They will be displayed in percents next to the language, so you can click on this figure and translate the rest manually. But, most likely, you will be lucky, and almost everything will be translated:

You will also be able to set the default language, provide language switching on your website, set up language detection and selection, and more.

Then, of course, everyone is interested in translating the content. In Drupal 8, it’s possible to make any content translatable — nodes, user profiles, menu items, comments, contact messages, taxonomy terms, and much more. You can set up in every detail, field by field, what should be translatable and what should not, in Configuration — Regional and Language — Content Translation.

In addition, Drupal will let you translate the configuration, like image styles, content fields, account settings, user roles, comment types, and much more, in Configuration — Regional and Language — Configuration Translation.

And you also get a handy user interface for user interface translations! It enables you use the available translations, correct them to your liking, or add your own.

You are absolutely free to decide in every detail which elements should be multilingual on your website, according to your needs.

Wrap-up

This is just a little drop in the ocean of Drupal 8’s multilingual opportunities. For making your website awesomely multilingual, building a shiny Drupal 8 website, or migrating to “the great eight,” you are welcome to contact InternetDevels developers!

Nov 21 2017
Nov 21

The unmatched capabilities to interact with other systems is listed among Drupal 8’s best improvements (along with the Views and BigPipe in core, easier migrations, handier configuration management, excellent web accessibility, and much more). And there are various ways to provide great performance in this interaction. One of them is the new and fresh module called Subrequests. We will briefly get acquainted with the Subrequests’ principle of work and features for speed enhancement today.

Drupal 8 and third-party integration

Let’s first take a glance at your Drupal 8 site’s ability to share its data to any external systems you need. These can be native mobile applications on Android or iOs, super dynamic JavaScript apps (based on Angular, React, Node, Ember, Backbone, etc.), or any other third-party systems.

Among other things, this lets you use the trending “headless”, or “decoupled” approach, when Drupal serves as a back-end and outputs its data to some front-end system for the sake of exceptional speed, interactivity, real-time features, and more.

The key thing here is to present Drupal’s HTML data in the formats needed by these applications (JSON, XML, or HAL+JSON). Just like good interpreters help people who speak different languages, there are high-class “synchronous interpreters” between Drupal and third-party apps.

These great assistants transform the data into the required formats. The Drupal core now has a “team” of these built-in. These are web services: Serialization, HAL, RESTful Web services, and HTTP Basic Authentication.

In addition, there also are great contributed modules, one of which we will present right now.

Subrequests module and its performance-improving mission

How to help the “synchronous translation” work exceptionally fast? Here is where the Subrequests module comes in.

The Subrequests module groups any sets of requests together, with absolutely no limitations. Thanks to this aggregation, all JSON API requests are sent in just one. The absence of round-trips for fetching Drupal’s data greatly improves performance. Drupal bootstrap is only needed once.

The single request contains all the information that the app needs from Drupal. It’s kept in a JSON document called “blueprint.” The blueprint lists multiple subrequest objects.

The Subrequests module allows for very handy options like sending parallel requests, sending requests that depend on the response to previous request, and more.

Installing the Subrequests Drupal 8 module

This module did not exist in Drupal 7. Subrequests are a true novelty of Drupal 8, with its 8.x-2.0-beta3 released just a month ago.

For efficient work, the module needs some external PHP libraries. So to install the Subrequests module with all these libraries, you could use this Composer command:

composer require drupal/subrequests:^2.0

More technical details along with the code samples can be found in the article of the module’s maintainers, Lullabot, and on the module’s drupal.org page.

Wrap-up

To get the best of the Subrequests Drupal 8 module, create custom solutions for your website’s great performance and handy integration, or migrate to Drupal 8, contact InternetDevels developers. Get more news from our newsletter and on our social media pages!

Nov 17 2017
Nov 17

Even when salt, shells or stones were used instead of money, the most successful sellers were those relying on marketing and analytics! After, it was always important to find ways to persuade people to buy goods, as well as to figure out which goods were most in demand. Today, with modern online stores and platforms such as Drupal that are great for e-commerce, the importance of marketing and analytics remains the same. But the tools for them have become far more advanced! In today’s article, we’ll cover some special Drupal modules of this kind.

Nice marketing & analytics Drupal modules for e-commerce sites

You could bring your online store’s usability sky-high, provide perfect display on mobile phones, and make it impeccable from shopping cart to checkout (as shown by the examples of famous e-commerce websites). But even this is not enough.

It’s the marketing and analytics tools that will be the missing piece in the puzzle of your e-commerce website’s success!

Let’s see at least some of them right now. You will find modules both for online stores built on Ubercart and on Drupal Commerce.

Ubercart Early Bird Discount

Encourage your customers to be early birds that catch good discounts! Here is a module for the Drupal store on Ubercart that lets you easily create discounts with a particular end date, as well as set discount amounts in currency or by percent.

Commerce Wishlist

With the help of this handy tool, you can get a Wishlist on your Drupal Commerce store. It provides an “Add to Wishlist” button for products, builds a customizable list of “wishes,” lets users quickly move products from their Wishlist to their cart, etc.

Ubercart Recommender

We recommend you consider this module for Ubercart that allows you to give purchase recommendations to your customers. There are two types of recommendations: those based on the user’s purchasing history and on what other shoppers “also chose.” It works with the Views and is highly customizable.

Commerce Recommender

Here is a similar module for Drupal Commerce. It also gives recommendations on the basis of purchases. If a user has no purchases, nothing will be displayed in the first type of recommendations. To fix this, you could also consider using the Browsing History Recommender module, which uses viewing history instead of the purchasing history.

Commerce Google Analytics

The Commerce Google Analytics module lets you send your order data to Google Analytics. Using Rules, you can determine when to send this data. GA Push integration is one of its additional useful features.

Who Bought What|Ubercart

Get some priceless information to use in your marketing campaigns by discovering “Who bought what.” This special tool will give it to you as a handy list containing all the shoppers’ name, purchase amount, and all other attributes.

Commerce MailChimp

Here is a handy way to track the statistics on your MailChimp e-mail marketing campaigns. The Commerce MailChimp module that offers integration with the popular MailChimp’s eCommerce360 tool.

Commerce Campaign Monitor

Here is a module that smoothly connects your Drupal Commerce website to Campaign Monitor and lets your customers subscribe to your mailing list after the checkout.

Mailjet

You can effortlessly send triggered marketing emails to your customers about abandoned cart and more via the Mailjet. In addition, it lets you track the sales generated by each of your newsletters.

MailUp Newsletter Module

This is a tool that provides the integration between your Drupal online store and the MailUp email marketing platform. Its great features include multiple newsletter subscriptions, extra subscriptions options, automatic data transfer and synchronization between Drupal and MailUp, and much more.

Commerce Reporting

An advanced reporting system included in one module is at your disposal. It gives you table-based and filterable reports about sales, customers, products, payment methods, and more. You can manage all reports in the same handy dashboard, export them as CSV files, etc.

Commerce Conversion Tracking

You can easily track conversions in your online store with Google Analytics, Clicky, or other system of your choice, if you use the Commerce Conversion Tracking module.

Wrap-up

These are just a couple of cool marketing and analytics Drupal modules in e-commerce. In addition, custom ones can also be created, which will work exactly how you wish. For creating custom modules or building a Drupal online store from scratch, you are welcome to contact our developers. Enjoy the age of e-commerce with its modern tools!

Nov 03 2017
Nov 03

When does “smaller” mean “bigger”? When your images grow smaller to perfectly adjust themselves to various devices, while your user satisfaction, audience coverage, website’s speed, and profits grow bigger. A nice formula, isn’t it? This magic ability of images to adjust themselves to screens is how responsive web design works. And it works especially well in the latest Drupal version, Drupal 8, which has built-in support for responsive images. That’s what we’re going to discuss right now.

Responsive images: impeccable in Drupal 8

What does Drupal 8’s native support for responsive images mean? Using Drupal out-of-the-box, you will see that its built-in themes are already fully responsive and look awesome on all devices.

Any other theme can be configured in the same way, since Drupal 8 offers modern and convenient built-in tools for responsive image setup. Let’s take a look.

Drupal 8’s native tools to configure responsive images

These tools include the Breakpoint and the Responsive image modules that have become part of Drupal 8’s core. The Breakpoint module is even enabled by default. The Responsive image (formerly knows as the Picture element module) needs to be enabled by you, though.

Together, they let you set up the responsive output of images on various devices depending on their screen width. The images can be both resized and elegantly cropped. Forget about a heavy 2000px banner on a mobile screen. Those days are past!

Responsive images of appropriate sizes will be displayed according to the breakpoints that you define. Defining breakpoints means choosing window widths at which your image size should change (for example, min-width: 600px). Let’s briefly look at the process.

A glimpse at responsive image setup process in Drupal 8

  • Defining the breakpoints. You can define breakpoints in the YAML file (yourtheme.breakpoints.yml) in your theme’s folder, and organize your breakpoints into groups.
  • Creating the image styles for breakpoints. For each breakpoint, you will need to create an image style here: Configuration — Media — Image Styles. Use the “crop and scale” effect.
  • Creating your responsive image style. In Configuration — Media — Responsive Image Styles, the "Add responsive image style" button will help you put all these styles together to create your final responsive image style.
  • Selecting the style for your field. The final step is to use your style for your actual image field: go to Manage Display — Format — Responsive image and select your responsive image style. Done!

Retina: when “bigger” means “bigger”!

In some cases, the ability of images to get bigger is as important as their ability to get smaller. A great example are HD/Retina displays that have a very high resolution. Here, it’s a great idea to provide a larger image style that’s twice the size using a 2x multiplier in breakpoints. And, of course, the quality of your original images should be impeccable.

Wrap-up

Responsiveness is among Drupal 8’s numerous improvements, for which our two overviews (1 and 2) were not enough. More interesting stories, news, and examples are waiting for you in our newsletter and on our social media pages.

And if you need help with configuring responsive images in Drupal 8, or are thinking to migrate to the latest Drupal version, feel free to contact our developers. Everything’s gonna be responsive!

Oct 27 2017
Oct 27

The Views module lets even non-developers organize and present the website's content in the desired ways. Website administrators love it, Drupal newbies start with it, and Drupal ninjas perform miracles with it. No wonder it used to be the most downloadable contributed module. Well, it still is — in Drupal 7. But, with the arrival of Drupal 8, it got an even higher position — the Views became part of Drupal 8 core, so it no longer needs to be downloaded separately. The Views “inside Drupal” is listed among Drupal 8’s best improvements. Let’s discover a couple of special capabilities of the Views that will let you enhance your Drupal 8 website.

The Views: a true behind-the-scenes architect for websites

Lists, graphs, maps, tables, blocks, calendars, comments, contact forms, photo galleries and carousels, blog posts… The Views module shapes all this and much more with the data it fetches from the database. It looks attractive!

However, despite the name, the essence of Views lies much deeper than the attractive content presentation. Its behind-the-scene work is priceless. The module lets you not just list your entities, but also filter and sort them in all kinds of ways, change attributes, create relationships, and give or deny user access. The Views caches the data to improve your website’s performance. The list could go on. Here are a few examples of its special capabilities.

Some special ways to use Views on your Drupal 8 website

Views and REST export

Share your content with some other system — for example, a mobile application or one built on the basis of JavaScript. It’s possible to output your views in JSON, XML, HAL+JSON, or other non-HTML formats.

Setting up REST API export with Views is easier in Drupal 8 thanks to built-in web services like Serialization, RESTful Web services, HTTP Basic Authentication, and HAL. They need to be enabled.

The “Provide REST export” field is already included into the Views setting form and just waits for you to check it.

Using Views with a third-party data store

Your Drupal website’s “classic” SQL database is far from being the only possible data store for the Views. There are useful data source plugins ready for Drupal 8 — Views XML Backend, EntityFieldQuery Views Backend, Socrata, Elasticsearch Connector, Google Analytics Reports, and more.

Slideshows and carousels

Make your website even more attractive by creating slideshows and carousels, which can include various kinds of content and be responsive. Add-on modules for the Views like Views Slideshow, Slick Carousel, Slick Views, and Views Bootstrap will help you with it.

Contextual filtering

Among the great filtering and sorting options of the Views there’s an option to set up content-based filtering based on dynamic information. For example, you can display all content created by certain users. Contextual filters are very convenient because the values are fetched programmatically or via an URL.

Adding a relationship to Views

To present related content on your Drupal 8 website, it’s necessary to create a relationship to a view. Then you will receive information that is not contained in the base table selected during the Views creation. In the advanced settings of the “Display” page, you will find the “Add relationship” button and a selection of tables to pull data from.

Embedding Views

Sometimes it’s necessary to embed Views in your pages using PHP code. For this, there is a special views_embed_view() function.

Final thoughts

This has just been a very small collection of the Views module’s special powers. It also has many more to supercharge your Drupal 8 website with. Our Drupal developers are ready to use them to the full for your website’s benefits!

Oct 20 2017
Oct 20

Let’s talk about secret ingredients in menus. Like the right spices, they create special flavours that your guests really enjoy. When it comes to your Drupal website menus, the recipe is simple: just add some jQuery! Using the Superfish Drupal module, which integrates the jQuery Superfish menu plugin, you can create interactive multi-level menus with exceptional usability features. Let’s see how it works on Drupal 8’s example.

The Superfish Drupal module and its special menus

Drupal core provides easy ways to create multi-level drop-down menus with great customization opportunities. However, the Superfish module goes even further and brings menu interactivity to the next level.

The Superfish offers great web accessibility enhancements, which are so important for Drupal 8’s philosophy. Superfish menus are available to screen readers. They are keyboard accessible and touch-screen compatible.

These menus can automatically adapt their width to that of smaller screens. It’s also possible to make multi-column sub-menus, aka megamenus. The Superfish module also supports RTL (right-to-left) writing.

The “easing” effects by the jQuery Easing plugin are designed to make the animation more realistic.

And this is far from being the full list of the module’s benefits. So let’s move on to the practical part and create a menu with the help of the Superfish.

Creating a Drupal 8 menu with the Superfish module

Get the dependencies

First, let’s get the required dependencies for the module’s work.

  • Download the JavaScript library called Superfish library 2.x and place in the libraries directory of your Drupal root folder. Rename the folder to “Superfish”.
  • Optionally, you can also download the jQuery Easing plugin and unzip it to the libraries directory as well. The folder should be named “Easing”.

Get the Superfish module

With the dependencies installed, the way is paved for downloading and enabling the Superfish module on your Drupal 8 website.

Get your menu

You will need a menu to work with. To create one, go to “Structure” — “Menus” and click “Add menu”. Create the menu structure and then fill it with links leading to pieces of content. Check “Show as expanded” if the menu items have children links. Click save after each new change.

When the menu is ready, click “Structure” — “Block layout,” choose the place for your menu on your Drupal website, find your menu marked with the “Superfish” category on the list, and click “Place block”.

Make your Superfish settings

  • The “Configure block” window has plenty of settings to your liking. Here are some of the most interesting ones.
  • Your options for the menu type are horizontal, vertical, or “NavBar”.
  • Black, blue, coffee, white, or none will be your menu style choices.
  • You can also choose to add arrows or drop shadows.
  • Define your animation speed as slow, normal or fast.
  • The mouse delay is how long the menu stays open when the mouse hovers away.
  • You can configure the slide-in effects created by the jQuery Easing plugin.

And there are lots of other options related to touchscreens, smallscreens, multi-column submenus, extra CSS classes, and more.

Final thoughts

There is always a way to implement all your ideas about menus. Our developers will help you configure the Superfish or other Drupal 8 modules, or create custom ones specifically for you. Your guests have no chance to stay indifferent to your website — they will enjoy their navigation due to the attractive and interactive menus!

Oct 13 2017
Oct 13

Here is another recipe for success. You can have a whole team of websites playing for you, and they don’t have to be created from scratch or managed separately. The secret lies in Drupal’s well-developed multisite functionality. Thanks to this, Drupal will not only let you leave your competitors behind, but also multiply this effect by many times. Let’s see how the multisite feature works, when to choose it, and what benefits it brings. In addition, pick up a couple of useful multisite modules and tips.

The essence of Drupal multisite functionality

According to Drupal multisite architecture, you can have several sites running on the same codebase but having separate databases and configuration settings. They will share the same Drupal core, modules, and themes, but at the same time will be customizable to your liking.

For example, you can enable and disable the shared modules as you please. You are also free to decide whether you want to add some site-specific modules and themes. Welcoming the same users with single sign-on or not, sharing content across websites or not, creating a similar or different website’s look and feel — these are all options you have.

Like siblings in real families, multisites can look and behave alike or each have their own original styles. However, they definitely share their family DNA.

Hence the next main principles to stick to when deciding on multisite architecture: it’s best to choose it if your website family is going to have similar functionality, share important Drupal modules or use the same Drupal distribution. In these cases, it will be especially beneficial and easy to implement.

At least some of Drupal multisite benefits

No extra development costs

By setting up multisite, you save on development costs by not creating related sites from scratch.

Quick launch

Just like you don’t have to pay for creating websites from scratch, you don’t have to wait for it.

Brand consistency

With multisite architecture, it’s much easier to stick to brand guidelines on the design across websites.

Less efforts for website management

You will need less time, efforts and costs for your website administration, because you can do certain actions only on one without repeating them on all the others.

This includes:

  • website upgrades 
  • sharing content
  • making changes

and much more.

A couple of useful multisite tools and tips

Drush

Drush command-line interface is very useful for managing multisite deployments and upgrades. According to drupal.org, it lets you cope with 100 to 1000 websites, and this opportunity is widely used by university websites on Drupal. Multisite is a real salvation for them!

Sites.php

Using the sites/sites.php file in Drupal 7 and the sites/sites.example.php file in Drupal 8 to reference sites will help you more easily migrate between development, testing and production environments.

Contributed modules

Consider some Drupal modules that extra helpful. Thanks to the Domain Access module, you will be able to easily share configuration, users, and content between your affiliated sites. Menu Domain Access lets administrators decide which menu items to hide and which to show to users on selected domains. Apache Solr Multisite Search provides Apache Solr Search function across multiple sites. RobotsTxt will dynamically generate a different robots.txt for each member of your website family — and there also lots of others.

Wrap-up

Enjoy the multiple benefits of Drupal multisite! Our team is always ready to consult you and, of course, perform the smooth multisite setup.

Always stay up-to-date by subscribing to our newsletter!

Oct 05 2017
Oct 05

Every six months, there comes a fresh Drupal 8 minor release full of lucrative features — it’s the essence of Drupal 8’s continuous innovation policy. And another big day has come! Drupal 8.4.0 is out on October 4, making this autumn especially rich in gifts. Just two weeks after the appearance of Drupal Commerce 2.0 for Drupal 8 online stores, Drupal 8.4.0 takes its turn in the spotlight. Let’s see why.

The benefits of the newly released Drupal 8.4.0

Drupal 8.4.0 brings us noticeable enhancements in content editing, media handling, workflows, website administration, configuration management, migrations, third-party integration, performance and scalability, developer experiences, automated testing, and more. We go into the details below.

Easy updates and Drupal 8.4’s friendliness to predecessors

The idea of backwards compatibility with previous versions for easy upgrades is receiving a lot of attention in Drupal 8. Of course, Drupal 8.4 is backwards compatible with Drupal 8.3. This includes all public APIs, while internal APIs may require special attention.

Generally, updating between 8.3 and 8.4 should be as easy as updating between, say, 8.3.2 to 8.3.3. Websites should make this update, and enjoy all the improvements that come with!

New modules and Drupal 8.4’s love for experiments

According to Drupal 8’s policy, every minor release has a host of new and interesting core modules, which start out experimental and then reach stability. Drupal 8.4’s experiments have been incredibly lucky!

So let us introduce the team of newcomers to core. Originally experimental, these useful modules have become stable in Drupal 8.4:

Inline Form Errors

Users will easily learn about some entry errors thanks to the module that provides their summary at the top of the form. It also gives individual error messages for form elements. It’s all available to screen readers, which is a great web accessibility improvement.

Media

The Media module greatly assists the whole ecosystem of contributed modules based on Media Entity by offering an API for reusable media entities.

Datetime Range

The Datetime Range module allows you to provide an end date in contributed modules such as Calendar and the like.

Layout Discovery

The Layout Discovery module offers an API that provides compatibility between core and contributed layout solutions. It lets modules and themes register layouts.

Workflows

The Workflows module gives us a system of states that show progress (Draft, Archived, and Published). This is useful both for publishing and non-publishing workflows.

These modules are on the point of becoming stable:

Content Moderation

The Content Moderation module offers efficient ways of applying the Workflows module’s capabilities to content.

Settings Tray

This module improves the theming experiences by letting you configure blocks, menus and other elements from the frontend.

Place Blocks

Thanks to the Place Blocks module, you will be able to place a block on any page and immediately see where it is displayed on your website, without the help of your administration form.

Field Layout

The Field Layout module offers special opportunities in rearranging fields.

Migrate, Migrate Drupal, and Migrate Drupal UI

This “team” is responsible for providing a general migration API, migration support, and a handy user interface for migrations.

Drupal 8.4’s support for everything new

New Symfony, jQuery, and jQuery UI

Let’s take the best from Symfony and jQuery! The Drupal 8.4.x improvements, including the updates of Symfony to version 3.2, jQuery to version 3, and jQuery UI to version 1.12, are very helpful

Updating Drush

For working effectively with Drupal 8.4.x, you will need to update your Drush to 8.1.12 before you start using it.

No old browsers

Beginning with Drupal 8.4.x, there is no support for Internet Explorer 9 and 10. It will still be displayed on them, but no bug fixes will be made. Support will be removed totally in Drupal 8.5.x.

Wrap-up

This is just a glimpse at Drupal 8.4 improvements. If you need help updating your site to 8.4.0, or if you are considering an upgrade to Drupal 8 from Drupal 7 or 6, our developers are always here for you.

Sep 26 2017
Sep 26

We have a confession to make. Frankly, we’re becoming kind of shopaholics ;) After the release of Drupal Commerce 2.0, our passion for discussing and building cool Drupal 8 online stores keeps growing. But, considering the awesome modules for e-commerce in Drupal 8, it makes perfect sense!

The newly released Drupal Commerce 2.x is bursting with great features, and Ubercart for Drupal 8, in its alpha, is getting ready to catch up. These two modules represent whole e-commerce platforms.

In addition to these, however, there is a wealth of other helpful Drupal 8 contributed modules for online stores. While some of them are still in alpha or beta — their development will go quickly — we can take a look at a couple of examples right now!

Some Drupal 8 modules for e-commerce

Commerce Square Connect

It’s hard to imagine a Drupal 8 online store without good third-party integration. Here is a module that allows for online payments with Square payment gateway in Drupal Commerce. Tokenization, fraud monitoring, PCI compliance, and other features enhance payment security.

Commerce Stripe

This module brings Stripe, the famous payment platform, to Drupal Commerce. It has advanced tokenization functionality for safety. Without leaving your online store, users can pay with almost anything — from Visa to BitCoin.

Commerce Paytrail

Another payment gateway, Paytrail, formerly known as Suomen Verkkomaksut, could come to your online store with the help of the module of the same name for Commerce. It supports S1 and E1 payment types.

However, the talks about payment gateway modules for Commerce can be endless, since there also are Authorize.Net, SmartPay, Payeezy, Paytrail, Worldline, Amazon Pay, and many others.

Ubercart QuickPay

What about Ubercart? There is a bunch of online payment modules for it as well. One of them connects the Danish payment gateway, QuickPay, to your online store. It offers two payment options: QuickPay Embedded and QuickPay Form. Its benefits include multiple language support, safety features, payment refund support, and more.

Tawk.to Live Chat

Effective e-commerce is inseparable from real-time customer service. So you will need a handy and powerful live chat application. The special module, created exceptionally for Drupal 8, integrates the Tawk.to chat with your Drupal 8 online store.

VAT Number

The VAT Number module is responsible for providing a new "VAT number" field, checking VAT structure, verifying VAT against EU SOAP server, making sure it matches the shipping country, and other useful things.

Commerce Ajax Add to Cart

This tool allows you to harness the power of Ajax for your shopping cart. When new items are added, the information is updated without a page refresh, and a pop-up message informs you that you have successfully added something.

Commerce Shipping

The Commerce Shipping module provides the calculation of shipping rates for goods. It integrates shipping service selection with your checkout and order edit form. You can make your flexible settings in the user interface.

Ubercart Volume Pricing

Set an unlimited number of discounts for buying products in bulk. You can do it right from the product edit form thanks to the Volume Pricing module for Ubercart. It also lets you notify your customers about how much they could save if they buy more.

Easy CurrencyCON

This is a user-friendly currency converter for Drupal websites, which allows your customer to quickly convert any currency into any other. You can use multiple currencies at a time, as well as swap currencies.

Final thoughts

We promise you that you will never be able to tear your eyes from your magnetic and shiny Drupal 8 online store — soon you, too, will be addicted. Addicted? No, just in love!

Let’s discuss how you want your shop to look!

Sep 20 2017
Sep 20

It’s always been known that Drupal is a great choice for e-commerce websites. The cool online stores built with Drupal are a proof of that. However, in Drupal 8’s younger, shy days, described in our interview with the famous drupaler Andypost, the new e-commerce functionality wasn’t fully ready. At that point, it didn’t make sense to build online shops with “the great eight.” Those days are long since gone! On September 20, the long-expected Drupal Commerce 2.0 for Drupal 8 has been released. However, even before the steady release, over 1,500 websites have begun using it.

Drupal Commerce 2.x has so many cool features that it makes you dizzy, like looking at the window display at a luxury store. The recent release candidate 1, release candidate 2 and release candidate 3, with their fresh updates, have become the final steps towards the stable Drupal Commerce 2.0. Now it’s time to celebrate — Commerce 2.x parties are starting across the globe!

Let’s look through some remarkable features of Drupal Commerce 2x, as well as point out a couple of freshest improvements.

“New arrivals!” or some benefits of Drupal Commerce 2.0

Easier installation: Ludwig as an alternative to Composer

Traditionally, Drupal Commerce 2.0 is installed with Composer, but it is not always easy. Maybe a handy GUI will be built in the near future, but right now, a fresh alternative to Composer has been released by the Commerce creators. Now you can use Ludwig to manually install the required libraries.

Over 30 payment gateways and handy integration

Improved APIs for Drupal Commerce 2.x significantly reduce the development time for integrating payment gateways. In addition, over 30 special modules make it easy for Drupal 8 e-commerce sites to work with the payment gateways, and all of the modules have been freshly updated and are ready to go!

Which payment systems do you prefer? The choice is as broad as an online store’s product range! PayPal, Authorize.Net, Payplug, Braintree, Square, Stripe, Ingenico, Alipay and Worldline are just the beginning of the list. Other payment methods are also possible like cash on delivery, card on delivery, check, bank transfer and more.

Handy user interfaces are provided for managing payments. To ensure better payment security, there is tokenization support (replacing credit card data with so-called tokens that are useless to trespassers and are handled by the payment provider).

Cool checkouts

On your Drupal 8 online store, you can configure multiple checkout processes for different order types. This includes the number of steps required from the user, the information they have to provide, the possibility to buy with no registration and much more. By the way, for a better user experience, addresses can now be reused for your returning customers.

“Smart” taxes

The right taxes will be automatically included in the product prices. This is due to useful plugins with a whole collection of tax rates, third-party services like Avalara, and the ready logic for using it all. Your online store’s home country, its country of registration, the user’s location, the physical or digital product type and other factors can be taken into account. Configuration options are really flexible.

Multiple stores

Handling multiple e-commerce stores is a breeze now. You can define special settings for each online store (contact information, default currency and more). Cross-selling the same products in different e-shops is also possible.

Products and their variations

You can comfortably create and edit product variations, different by such product attributes as color, size, pattern or whatever. Each product variation has its own machine-readable ID, or SKU. There are great opportunities for inline editing.

And more

Other Drupal Commerce 2.x niceties include an improved UI to create discounts and coupons, better currency management, helpful Twig templates, and so much more.

It’s time to see your e-shop cart bursting with orders!

Well, this has been just a brief review of Drupal Commerce 2.x novelties. Believe us, your shiny, modern, easy to use, and powerful Drupal 8 online store will be capable of absolutely anything! For building one from scratch or adding Drupal Commerce 2.x functionality to your existing Drupal 8 site, contact our developers.

PS. Attention for the most tech-savvy readers! Much water has passed under the bridge since 08/2016 (the times of Drupal Commerce 2.х beta 1), but we still cannot help offering you this blog post by our developer with instructions on setting up an online store with Drupal Commerce 2.0. Click on it, and take the best from it.

PPS. To never miss an interesting update by staying with us on Telegram, Facebook, Twitter, Google+, LinkedIn, and receiving our official newsletter.

Sep 15 2017
Sep 15

Drupal 8’s “fruitful fields” of opportunities are endless — so let’s take another walk through them! It lets you optimize your website’s performance with the BigPipe module in the core, boost your SEO with a host of useful modules, improve your website’s upgrade process, bring order to user roles and permissions, enjoy an easier configuration management, get in line with the latest web accessibility standards, and that’s just the beginning of the list. Along with everything else, Drupal 8 also lets you create custom field formatters, so today we’ll take a glimpse at what they are and how you can build them.

Field formatters in Drupal 8 and what they do

In accordance with Drupal 8’s architecture, field formatters are plugins — and pretty useful ones at that. Their main job is to tell Drupal how the field values should be presented to the website users, as well as what options there are to configure this display. This should be useful and engaging for end users and fully reflect your ideas. To have absolute freedom in the implementing this, you can create your custom field formatter plugin in Drupal 8.

A few tips on creating custom field formatters in Drupal 8

Creating your module

Everything starts with a module — this is Drupal, after all! You need first to create a module that will “host” your field formatter code. To implement it, create this folder structure inside your new module’s folder:

MyModule/src/Plugin/Field/FieldFormatter

Creating your field formatter class file

OK, the folder is ready — you can now add a new field formatter class file (one for every formatter you build):

MyModule/src/Plugin/Field/FieldFormatter/MyFormatter.php

The namespace should look like this:

Drupal\MyModule\Plugin\Field\FieldFormatter

Plugins are classes, and so they extend from each other. Your field formatter class should extend the \Drupal\Core\Field\FormatterBase class. MyFormatter class name should reflect what the formatter does, and, most importantly, end with a “Formatter” suffix.

Making an annotation

Annotations are a great OOP practice in Drupal 8 because they contain the class metadata. To help your new plugin get discovered, you need to make the @FieldFormatter annotation. It should contain the most important data about your new field formatter such an ID (machine-name), a label (human-readable name), and the types of fields it is used for.

Using methods

The settingsForm() method will let you define specific options, and the settingsSummary() method is responsible for informing end users about the formatter settings. The viewElements() method deals with rendering the field data.

Walking deeper into the fields

If you are interested in deeper insights into to Drupal field formatting, check out blog posts by our developers about the Field API in Drupal 8 (custom formatters and widgets), as well as the Field Image Tooltips module. The latter has been created by one of our teams, and deals with adding images with tooltips that are available both for Drupal 7 and Drupal 8.

Hopefully, you enjoyed this little walk through the fields (or their formatters) in Drupal 8. Our developers are ready to help you in creating custom field formatters, moving your website to Drupal 8 to let you enjoy the innovation, or building an entirely new site for you. Be ahead of the field with Drupal 8! Let’s discuss it right now.

Sep 12 2017
Sep 12

Drupal is a great platform that has a great community and a great number of sites developed thanks to it. What makes it so great? What helps Drupal stand out among the competition? We’ve explained you 6 reasons why you'll love Drupal websites, and if you do love them and have your own website on Drupal now, then this article will give you a hint about what you should pay attention to stand out among your business competitors and defeat them.

Must-haves of a competitive and successful Drupal site

Be available for all users on all their devices, all the time

There is no use for a website, even an attractive and multifunctional one, when it’s down and no one can reach it. So along with optimizing your website important features, don’t forget to monitor your server uptime and downtime to make sure it’s up and running and be able to fix any issues in a timely manner if it goes down.

To survive in the mobile technology age your website cannot do without mobile web design and mobile development. In order to satisfy the needs of mobile users and make your web resource available on their devices, you can build a mobile app or make your site mobile-friendly, for example, making it responsive with a perfect layout which displays well on all screen sizes at once.

Despite the fact that the number of mobile users is growing, desktops are still being used. The research on cross-device customers show that people usually use mobile phones and tablets to surf the web, discover their issue and find answers to their questions. After they have found what they need, they switch to desktops for purchasing or ordering goods and services, or completing other actions with bigger and more convenient screen and keyboard. Doing cross-browser and cross-platform compatibility testing helps check whether your software product is available on all browsers and platforms of all desktop and mobile devices, where new models regularly appear.

Meeting web accessibility standards is one more way to make your web resource available and accessible for all, including Internet users with special needs. Drupal 8 has improvements allowing you take a progressive step toward the needs of people with audial, visual and other impairments like deafness or color blindness. Remove the obstacles to let understand your site as textual and multimedia content easily.

Be secured

There is no sense in furniture rich house without a lock, and there is no sense in feature rich site without a proper security system. It’s impossible to defeat competitors while not being secure from hacker attacks and other cyber threats. With many official Government sites from all over the world built in Drupal security is one of Drupal benefits.

Drupal core and modules are regularly updated. So, just check whether you have implemented all the latest updates as well as removing old and redundant modules. Also, switch to HTTPS (if you haven’t done this already), make passwords work perfectly and follow other security rules to protect your Drupal site.

Load your pages as fast as possible

No one likes to wait, or people who force them to wait. If you aren’t able to give things here and now, then your potential site visitors and clients will run away from you to your competitors for better alternatives. Load speed impacts UX and SEO as well, because search engines care about providing a positive user experience by prioritizing pages that load quicker and ranking them higher. Google even marks AMP (Accelerated Mobile Pages) with the lightning sign on search engine result page (SERP) to make them noticeable for users.

So use some tools to test and optimize your site’s speed or ask some support service like ours to improve the performance of your site to let it not just run faster but fly;)

Be SEO-optimized

Use the power of search engine optimization to be easily found on the web, avoid major reasons for low website traffic, and increase organic traffic that comes from unpaid search results. If you take actions to ensure high security and performance levels to your web resource and follow other tips mentioned in this article, then you are halfway to the top of the search query result page. To get the other half of the way, contact a SEO specialist or follow some SEO practices by yourself.

Install helpful Drupal 8 modules for SEO to make your web pages easier for search engine bots to crawl, scan, and index. Publish unique content with keyword optimization in mind, don’t forget to update it and use other benefits of content marketing to make your content highly valued by search engines. Do SMM right, as this also influences on your rankings. Use Drupal modules for easy integration with social networks. Also, don’t forget to check broken links, redirects and whether URLs are clean or dirty. And, of course, don’t be lazy to constantly monitor your statistics with the help of web analytics tools like Google Analytics. By the way, it’s easy to integrate GA with Drupal 8 due to module.

Summing up

The main things every Drupal site should care about to defeat its competitors are: availability, performance, security and search engine optimization including all related issues.

If you need a professional help in Drupal website support and maintenance, then contact our Drupal specialists.

Sep 08 2017
Sep 08

More and more often, developers and users see that Drupal is arguably the most powerful CMS today. We have also repeatedly written about the benefits of Drupal for your business. Indeed, it is a perfect solution for any type of websites as the Drupal community provides great improvements for educational websites, takes care of your website’s security, makes your e-commerce user-friendly, and more. There is a good reason many of the largest companies use Drupal to power their websites, as the platform is still going strong and is one step ahead of its opponents in terms of integration, functionality and security. Today, we’re going to continue to talk about Drupal biggest strengths, particularly for content-heavy websites.

Reasons to choose Drupal

Reliable open source platform

Being open source is one of strongest benefits of Drupal. The core software along with a great number of contributed modules and themes are free. For example, let’s say you run a powerful news website, which is filled with new, varied information, every day or even every hour. Open source will help reduce web development costs, as usually creating a large-scale project requires significant cost both in time and money. You can modify the code to meet all the user requirements and code a patch for Drupal and fix any bug (which are common for sites with lots of content).

Large flexibility

To be powerful and flexible at the same time, to manage both simple blogs and complex, heavy-content websites, is another big advantage of Drupal. Therefore, the owners of online courses in programming, of foreign languages lessons and of self-development trainings can rest easy, as Drupal is armed with CCK, or a content construction kit. This helps you have full control over content, whether it's videos, podcasts, or e-books. It is worth revisiting and highlighting a variety of user-contributed modules that give you the opportunity to implement very specific functionality without having to write custom code. If still necessary, Drupal experts can quickly and easily write a custom code and add a new feature to your website. In general, Drupal is able to cover all of the user’s needs when creating a web project.

Content arrangement

It is likely that you have a large site with a constant flow of visitors, who you provide with bulk information. That’s great! But how to organize all this important and useful content and make it easy to find? There are several ways to accommodate and organize your content in Drupal (articles, publications, videos, infographics, case studies, guides, etc.) — with the help of URL, taxonomy, tags and custom lists. The Drupal database allows you to sort features thanks to its easily applicable module system, with no need to add a great amount of custom code for building the library you dream of.

Responsive design

The days when desktop computers were the only way to get access to the Internet are gone. Today, people use screens and devices of many types to find any information on web in any format (audios, videos, images, etc.) It would seem hard to find the necessary information using a small smartphone, but the web developers have nothing to worry about.

Drupal is mobile-ready and fully responsive, right out of the box. If you are, for example, a photographer and create your own web page on Drupal, your portfolio with its incredible, impressive photos can automatically adapt to every screen type. As mobile gains popularity, a variety of mobile devices opens new doors for successful marketing and encourages you to engage mobile users like never before. This is one of the smartest steps you should take with Drupal.

More speed, please

It’s logical to think that the more website has in terms of multimedia content, the more slowly it loads. This is usually true, but not for Drupal. And it does not matter whether you have a simple blog or manage a powerful movie site. The platform is considered to be one of the fastest CMS’s out there. It is good for SEO as fast Drupal websites offer obvious advantages, such as an increasing number of happy visitors and high rankings in SERP.

Drupal security

Security is the aspect where Drupal absolutely triumphs over all other CMS. This is particularly important for sites with a large number of diverse content, complex taxonomy and many regular visitors. For instance, the White House decided to use Drupal for its website for a reason. Unlike other CMS, Drupal was designed with security in mind. Its built-in security is extremely strong and fresh installation includes features which protect your web page from cyber attacks. In addition to that, Drupal also has a dedicated security team and one of the largest communities in the world who ensure a quick response to security issues. As a result, many heavy-content sites with extreme security concerns are built using Drupal.

You can see that we are moving into an era where your CMS no longer points out the way your site runs. Drupal is a very flexible framework and can meet all your requirements for every specific project. As clients, you are free to use whichever you are most comfortable with. To be sure, your huge, heavy-content website is in good hands, rely on Drupal and Drupal experts of InternetDevels!

Sep 05 2017
Sep 05

Greetings to everyone! It looks like “8” is a lucky number and 8/2017 is a lucky month for drupalers. By taking a little extra energy from the sun (which is pretty environmentally friendly), the Drupal community has made so many awesome things! It feels like yesterday that we offered you the July 2017 Drupal news summary, and now we’re moving on to the wrap-up of the hot and productive August 2017.

What’s new with Drupal in August 2017

New releases of some Drupal modules

  • A hot month with hot releases! It’s a true embarrassment of choices. Let’s have a little “tasting session” and appreciate at least a couple of examples:
  • The new version of Drupal developers’ favorite assistant, Devel 8.x-1.0, has rolled out with plenty of fanfare. It features Drush 8 and Drush 9 support, new Twig extensions for debugging, and much more.
  • Especially those interested in headless (or decoupled) Drupal projects, will be happy to see the GraphQL module in its new and improved 8.x-3.0-alpha5 version.
  • Providing meta tags for your website has become more convenient due to the Metatag 8.x-1.2 version. It features bug fixes and initial JSON support.
  • What about building attractive web forms? It’s a breeze with the entirely new code base of Webform 8.x-5.x. Here goes its beta16 release with lots of updates.
  • Clear external caching systems in accordance with Drupal 8’s new cache architecture. For this purpose, you have a new and improved Purge 8.x-3.0-beta8.
  • The Workbench, a whole suite of modules to make content management processes more convenient, has introduced its new release in August — 8.x-1.0.
  • Websites now “socialize” even better thanks to the Social API’s 8.x-1.1 release. This module is part of the Drupal Social Initiative, and is now compatible with Social Auth 1.x.
  • You will appreciate working with local and external libraries using the Bootstrap Library 8.x-1.9 release that has Bootstrap 4 beta version added in August.
  • Running Cron jobs is now easier both in Drupal 7 (due to the option to disable the execution of scheduled jobs in 7.x-2.5) and in Drupal 8 (due to numerous bug fixes in 8.x-2.0-alpha2).

Drupal security fixes for your good night’s sleep

Drupal is a solid fortress, whose guards are always on the look-out. The Drupal Security Team has “caught” a number of security vulnerabilities (ranging from moderately critical to critical) and made fixes to them.

The long-expected Drupal 8.4: alpha becomes beta

We are steadily moving towards Drupal 8.4. The previous step was Drupal 8.4.0 alpha1, and now August brings us Drupal 8.4.0-beta1. Hopefully, these steps will finally lead us to the stable 8.4 release in October!

Summer, bye till next year! Internet Explorer 9 and 10, bye forever!

August 2017 was time to say goodbye to Internet Explorer 9 and 10. Beginning with version 8.4, Drupal stopped official support for them, so no public bug reports will be received by the security team. Hopefully you’re not upset? ;)

Drupal should know its heroes

To be a Drupal hero, no one needs a Superman cape. There are so many awesome drupalers who help develop Drupal in various ways every day! And the Drupal Association is re-launching a program to highlight these real Drupal heroes. Wanna join the special committee on this? The Association welcomes you!

The wrap-up of the wrap-up

Here is our August 2017 Drupal news summary. Is there anyone regretting the end of summer? If you are, there’s no need to be blue — every drupaler know that the autumn’s gonna be rocking! Take the best from what Drupal offers, enjoy new features or an entirely new website, and know you can always rely on our expert Drupal team.

Aug 23 2017
Aug 23

Spam causes huge inconvenience to Internet users and headaches for site owners. Spam is one of reasons why you don’t need a comment section on your web resource. However, allowing your site visitors to post comments and any other content means communication and feedback. Allowing them to express their opinions and share their ideas on your site has its good sides as well. So it would be not right to get rid of this option all together. Luckily, Drupal can offer you a solution — and not just one. Drupal modules can help remedy spammers. We’ll explain them in order from the earliest solution to the latest in this article.

Spam blocking Drupal 8 modules:

CAPTCHA

For sure, the most known method to fight bots and distinguish them from human users is CAPTCHA. This is an abbreviation that stands for a completely automated public Turing test to tell computers and humans apart. The CAPTCHA module is most often used when building web forms. This challenge-response test, unsolvable by bots, prevent them from spreading spam. Every Internet user has been asked to type random letters or figures like this:

However, CAPTCHA has its disadvantages. Sometimes it’s quite tough for humans to guess on the first try what’s depicted on the image. It’s especially challenging for users with visual impairments. Thus, if you want to meet web accessibility standards, precede to the next solutions described below. CAPTCHA remains an effective way to fight spambots, but is a bit annoying for human users.

reCAPTCHA

As a test offered by CAPTCHA module is usually puzzling to humans, Drupal sites are more often using reCAPTCHA module that executes reCAPTCHA service from Google. Users just have to click and tick and are no longer irritated by having to spend time guessing. This improves user experience. Despite becoming more easy for people to solve, this test still remains hard for robots.

By the way, reCAPTCHA is one of Drupal modules maintained by us, Internetdevels.

Honeypot

This anti-spam solution requires taking no action from human users at all. No typing, no ticking. The Honeypot module creates a hidden field which is invisible to humans but noticeable to bots. When spambots fill this hidden forms in, they are immediately detected and blocked by Honeypot.

Furthermore, this Drupal 8 module uses one more method called a timestamp. It look at how long it takes for the web form to be submitted from the moment the page was loaded. Bots need much less time to cope with forms than humans.

Antibot

No end user interaction at all is also possible with one more Drupal 8 module called Antibot. Its creators claim that it’s more reliable than Honeypot and is as lightweight as possible. This module allows caching on pages with protected forms.

Its principle is based on the assumption that bots don’t process javascript. The web form is hidden due to CSS and users see a message on their screens telling that Javascript is required for the form to be used. If the users have Javascript enabled, then the message is moved out and the web form is revealed when the page is loaded.

In addition, for better safety, before allowing form submission, the Antibot module checks for mouse movement and keyboard pressing to identificate human user. This feature provides better effectiveness.

Anti spam

The Antispam module was developed by CleanTalk. Its effect is not noticable to human users, as they see no tasks needed to be solved. If you have your own blacklist that contains emails or computers’ IP-addresses of spammers you have already detected, then Anti Spam can use this your blacklist to block registering or posting any comments. Service CleanTalk can store all records of filtered spam attacks up to 45 days. There is even an app, if you want to monitor your statistics more conveniently.

Important information for Mollom users!

Mollom was maintained by Acquia and have been successfully detecting and blocking not only spambots, but also human spammers for 8 years. The Mollom service could evaluate the quality of content, identify profanity and offensive language and compare data with its constantly emerging archive of profiles of user who have predisposition to submit spam.

However, there are bad news for those who have loved this module. On April 2017 Mollom announced its end-of-life is scheduled for April 2, 2018. After that time, the Mollom service will no longer be supported or available. If you are using the Mollom Drupal 8 module now, then it’s recommended to disable it in advance until that date and switch to some alternative option mentioned in this article above.

We hope you have no spam-related issues. If you have any questions about spam or security, contact our specialists.

Aug 15 2017
Aug 15

Creating unique content is a direct way both to Google’s and your customers’ hearts, and Drupal 8 is making the road much smoother and the journey more enjoyable! Creating interactive HTML5 content and content modelling in Drupal 8 are just a couple of examples we’ve already described. So today, let’s take a glimpse at the Entity Browser, one of the modules from Drupal 8’s collection of media management tools.

Well, saying “one” would probably mean diminishing its capabilities, because the Entity Browser has a whole ecosystem around it and serves as the base for creating many cool browsers. It’s like a large box of treasures, and we will now unbox some of them.

How Drupal 8’s Entity Browser makes content editors happy

Great times have come for content editors (and not only for them), since the appearance of Entity Browser, an incredibly flexible tool for handling (browsing, selecting, creating etc.) entities. With it, it’s possible to drag-and-drop multiple images at once, reorder or remove them, reuse them for other articles, upload more images in the process, easily search for related content by various criteria, create and add quotes without opening a new tab, create another piece of content without leaving the original form, embed entities into WYSIWYG, and much more.

Plugins for the Entity Browser

Entity Browser relies on Drupal 8 core plugins to do its work. The heart of Entity Browser is the Widget plugin, which is responsible for selecting and creating entities. The Widget Selector plugin deals with the options for switching between widgets, while the Selection Display plugin works with the ways the selected entities are displayed. Finally, the Display plugin determines how the Entity Browser will look.

Configuring Drupal 8’s Entity Browser

The Entity Browser’s flexibility lets it be literally whatever you want it to be and provide the perfect entity handling workflow for you. With your Entity Browser module installed successfully (as well as the Ctoools module just for this process), go to Configuration — Content authoring — Entity browsers and click the “Add Entity Browser” button. You can give it a name and then shape it to your liking.

1. On the same page, select the general features of the Entity Browser by configuring the necessary plugins.

  • The display type of your entity browser can be: a standalone form, an iFrame container, or a modal window.
  • The available widgets can be presented as: a dropdown menu, a single widget or horizontal tabs.
  • The options to show the entity selection area to the editors are: a preconfigured view, no selection display, or multi-step selection display.

2-3-4. Configure the details of your display type, widget selector type, and entity selection area.

The next three steps involve a more detailed configuration (sizes, styles, auto-opening etc.) of the plugins you have selected above. This will not take long — some of them even require no further configuration.

5. Add the widgets to your browser.

Equip your content editors with as many powers as possible. The available widget plugins are: “View”, “Upload,” “Entity form,” and “Upload images.”

Congrats — your Entity browser is created!

Ready browsers to choose from

You can also pick one of the very nice pre-configured browsers created on the basis of the Entity Browser. They are contributed Drupal modules you also need to download and install: Media Entity Browser, File Entity Browser, Content Browser, Entity Browser Enhance(d|r), and Slick Browser.

Thunder and Lighting

There also are full Drupal distributions using the Entity Browser. They are called Thunder and Lightning and are meant to provide an improved editing experiences.

Entity Browser and Inline Entity Form

The Entity Browser’s incredible “friendliness” lets it interact well with a great number of other tools. Among them, we would like to mention one we already discussed — the Inline Entity Form module in Drupal 8.

Entity Browser and Inline Entity Form are used together for creating new entities and browsing existing ones.

This is just a glimpse at the Entity Browser module, but its capabilities are endless. Moreover, the future looks very bright for the concept of media handling due to Drupal 8’s media initiative. To get help with configuring the Entity Browser module, building custom features, or migrating to Drupal 8 with all its innovations, you are welcome to contact our developers.

Aug 11 2017
Aug 11

Combining different tools to produce fantastic reactions is the true “chemistry” of web development. The special trend of the day is using Drupal with JavaScript tools. We’ve had a chance to look at the benefits of using Drupal with Angular and Drupal with Node. Now, it’s time to describe another chemical reaction — between Drupal and ReactJS, which results in the appearance of websites and apps with cosmic speed and interactivity. Indeed, these qualities are in the DNA of the whole JavaScript family. So what makes one of its youngest members, ReactJS, stand out? Let’s take a closer look at it and find it out.

ReactJS and at least some of its benefits

“You can’t scare me — I handle Facebook’s interface”

Such a quote could easily belong to ReactJS. This JavaScript library for creating user interfaces was built by Facebook engineers. At first it was only used internally and then was released as an open-source project. Considering the scope of Facebook, there’s hardly any project ReactJS can’t cope with when it comes to building large-scale dynamic applications with real-time data change. Nor is it used by Facebook alone — check out lots of other projects using React.

Virtual DOM

One of the awesome features of React is its effective approach to DOM updates. When a page is loaded, the browser generates its DOM (Document Object Model). However, this is traditionally a bit of a weak, or, let’s say, slow point of JavaScript. To significantly speed things up, React JS uses a lightweight, virtual DOM. React discovers which virtual DOM objects have changed and updates the necessary parts of the real DOM, not the whole DOM tree. This provides a great performance boost, as well as makes a developer’s life easier.

Component structure

In ReactJS, it is easy to create self-contained, independent components and put them together in large-scale applications. Parameters are passed to each of the components. One-way data flow Data flows through your application in a single direction after some change. This makes the data flow more predictable, gives you a better control over it, and lets you easily track changes.

Easy to work with

React presents a rather simple programming approach with no complicated concepts. It easily integrates with absolutely any JavaScript library. Born in 2013, React has developed a large ecosystem around itself. Its active community keeps creating new libraries, tutorials, and other helpful stuff.

Drupal and ReactJS

Drupal is great for absolutely any type of website — social, educational, ecommerce, healthcare and so on. It can handle any amount of users and pages, as well as any website scale and complexity. With the special front-end miracles of ReactJS added to this, this can produce absolutely fantastic results.

The combination of Drupal and ReactJS is most beneficial for websites with plenty of dynamic page elements and a giant amount of constantly-changing data that requires smart, real-time updates. Other examples are when you need to provide an automated data exchange or access to data from mobile apps. However any type of website or app will benefit from an ultra-quick and magnetically engaging interface.

The most popular way of combining Drupal and React is using React as a lightweight front-end for the so-called decoupled (or headless Drupal) as a CMF and data source. The one-way data flow of React JS helps shape the web page in accordance with the data sent from Drupal's RESTful API.

Drupal 8 has special opportunities for React integration, thanks to its built-in RESTful services, but using JSON API will make your developer’s life even easier. Another hot trend is combining Drupal 8 with React by means of GraphQL. Drupal 7 has to rely on contributed modules to work with React, but the integration is possible.

If you are interested in using Drupal and ReactJS for your project, contact our developers who love modern technologies, especially in their best combinations!

Aug 08 2017
Aug 08

Drupal 8 is the latest version of Drupal that receives a lot of attention among Drupal community. Its minor release Drupal 8.3.0 has already come out. Each its feature is interesting and is described in our collection of Drupal 8 articles. In today’s blog post Drupal 8 will also be in focus, however from the angle of SEO. We’ll consider which modules and which other features of D8 are designed to optimize your web resource for search engines.

Tips for your Drupal 8 SEO:

Use the benefits of Drupal 8 modules for SEO

One of our previous articles have offered you the most important SEO modules for Drupal 7, almost all of which have released their Drupal 8 versions, so that now you can use them for your Drupal 8 website.

As long as metatags influence on ranking, the Metatag module will remain important, as it automatically generates relevant and unique browser title, meta description and meta keywords for your each page. 

If you want search engines to crawl your site more intelligently and keep their search results up to date, than XML sitemap will help you to obtain desired indexation. 

RobotsTxt creates robots.txt file, so you can disallow the access for search engines to your certain site pages. For example, you should prohibit the indexing of pages with non-unique content (plagiarism, machine translation), personal user accounts, shopping carts at online stores, order forms, feedback forms or any other form with fields for filling, etc.

Typically, in case of pagination, that is, on identical pages, numbered in order, the same images, excerpts of texts (descriptions in the sections of goods on e-commerce sites), meta tags etc. are repeated. That is why pagination can often cause unwanted duplicate content. This phenomenon can lead to decreasing of positions among search results and, accordingly, to loss of organic traffic. 

We want you to pay special attention to one special Drupal 8 module, which being the most powerful, actually does nothing, as Robert Shea from IBM said. This is your smart adviser — SEO Checklist module, which advise you what modules to download and enable, what settings to configure and other useful tips. It provides you with a list of categorized tasks and checks them off when you complete them. If you possess some basic knowledge and skills in search engine optimization, than the SEO Checklist module will help you optimize your own site for search engines.

Make sure your URLs are clean

Clean URL-addresses are valued highly by search engines. Make sure that your URLs are understandable and don’t contain words irrelevant to the webpage they belong to.

You won’t need to create URLs manually if you are using the Pathauto module. It automatically generates self-explanatory SEO-friendly URLs on your Drupal 8 website basing on patterns which you specify and which you can change.

If you have recently moved your content within your site, use the Redirect module. It helps creating 301 “Moved Permanently” to redirect your site visitors from your obsolete and irrelevant URLs to new and up-to-date.

Mind the hreflang for your international SEO

If you are running an international business presented on the web, then you shouldn’t ignore international SEO. Facilitate search engines to determine which countries you want to target and which languages to use.

In order to display the right language or regional URL for the right audience in search engine result pages, Google uses hreflang attributes, namely rel="alternate", hreflang="x". If you want to insert these attributes to your website code, use the Alternate hreflang. This Drupal 8 module adds hreflang tags to your every page automatically.

In addition to XML sitemap module, mentioned above, we also want to note the Simple XML sitemap module, which will be useful if you have a multilingual audience and keep equivalent versions of your pages in a few languages or a few country-based language variations (e.g. BrEng/AmEng). Simple XML sitemap helps you to meet the latest Google standard by generating hreflang sitemap

By the way, one of Drupal 8 improvements is that modules responsible for language and translation support are already built in D8 core, unlike in D7. Furthermore, according to  Drupal 8 Multilingual Initiative (D8MI), Drupal 8 can be natively installed in 94 languages. As you know, a wider range of languages means a wider range of clients that can be reached. So, if you have a multilingual audience, D8 gives you great opportunities to manage with it.

Integrate with Google Analytics with ease in Drupal 8

Who better than Google — a company owned the most powerful and popular self-titled search engine — knows everything about search engine optimization? Who else but Google can profoundly analyze your traffic and give you a report, basing on which you can make your site or app more Google-friendly and SEO-friendly? 

We are sure you have heard about Google’s the most widely used web analytics service. You, probably, even have been using Google Analytics before to track, analyse and get reports. So what we want to tell you now is the easy way to GA due to D8.

Google Analytics tool offers you a snippet of tracking code, which should be pasted into your every page’s code. Doing this manually is time-consuming and tedious. Drupal 8 grants you its module to simplify this process. In one of our previous articles we have showed you how to integrate Google Analytics with Drupal 8 in a few easy steps with the help of Google Analytics module

If you have any questions regarding Drupal or your website’s SEO, feel free to ask our specialists.

Aug 04 2017
Aug 04

Hey, everyone! Summer moves on — together with its lovely sunsets, yummy fruit and berries and so much more. This just inspires us to grab a basket and gather some fresh, ripe, and tasty... Drupal news for you! ;) You’ll see that July 2017 has been really very fruitful for Drupal, because the community has been creating great stuff with a special, summer inspiration. So discover the new releases of Drupal modules, take a glimpse at Drupal 8.4 as Drupal 8.3’s successor, and find some other nice surprises. Enjoy your July’s Drupal basket!

What’s been new with Drupal in July 2017

New releases of some Drupal modules

Drupalers have been working like busy bees, so the second summer month of 2017 has given us dozens of new module releases to fit every taste, or, should we say, every website’s needs. These are just a handful of examples:

  • This summer, honey is getting sweeter and spam prevention stronger thanks to the updates in the 8.x-1.27 version of the Honeypot module.
  • Do not miss Commerce 8.x-2.0-Rc1 with lots of enhancements in payment gateways, checkout, taxes and more.
  • PayPal integration has become easier due to PaymentsPro improvements in the Commerce Paypal’s 8.x-1.0-beta1 release.
  • The AdvAgg 8.x-3.0 is now even better at optimizing and compressing JS and CSS, as well as cooperating with other modules.
  • The Social Login module, allowing users to sign up and sign in from social networks, has become stronger now that a PHP syntax error is fixed in 8.x-1.6.
  • A couple of new caching capabilities have come to the CDN 8.x-3.1 bringing it in line with the standards.
  • Creating search functionality has become handier both for Drupal 7 and Drupal 8 websites, since the Search API has two new releases with updates and fixes: 7.x-1.22 and 8.x-1.3.
  • Generating a GraphQL schema for Drupal 8 is a snap with the new and fresh GraphQL 8.x-3.0-Alpha1.
  • You’ll enjoy working with JSON thanks to a bunch of improvements in JSON API 8.x-1.1.

Docker for Drupal 2.3.0

Another great news for those who are using Docker in Drupal development. The new version of the popular stack, Docker for Drupal 2.3.0, is out in July 2017 with lots new Docker images, a handy UI, security updates and bug fixes.

Sessions selected for DrupalCon Vienna

It’s always hard to select the best from the best. But the organizers of DrupalCon Vienna did it! Discover the selected sessions for this international meetup that will gather drupalers from across the globe on September 26-29, 2017.

Drupal 8.4.0 is coming closer

Everyone expects Drupal 8.4 with big impatience. Though the release itself is scheduled for October, “the fruit” is almost “ripe” — this summer’s giving us the alpha and beta versions of Drupal 8.4.

The alpha-1 version of Drupal 8.4 has just come out. And, by the end of summer, we are most likely to see Drupal 8.4 beta.

So what will be improved in Drupal 8.4.0? A handful of awesome modules should move from alpha to beta or reach stability. These are Layout Discovery, Inline Form Errors, DateTime Range, Workflow, Content Moderation, Migrate / Migrate UI, Settings Tray, and Place Block. Great improvements also await media handling in Drupal. And it’s just the beginning!

A little about victories

One of the best Premier League clubs have stricken the best goal in their career — London’s Arsenal have launched their new website in Drupal 8. It features news, history, ticket info, live results, online store and much more. New victories await both Drupal and Arsenal, and we are glad to see the collection of awesome sports websites built with Drupal got another representative with a true winning spirit.

Wrap-up

We have told you briefly what’s new with Drupal in July 2017. Hopefully, this has been appetizing inspiring enough for you to get new cool features or an entirely new fabulous site. And our expert Drupal team will help you make it all come true!

Aug 01 2017
Aug 01

The smart drop and the clever whale — there is no doubt that Drupal and Docker are highly compatible! It seems like their element is water, however, their true “element” is efficiency. Flexibility, security, and open-source standards are also worth mentioning. So after sharing a collection of useful links for working with Docker, we would like to take a closer look at this great “couple” and see why it’s worth using Docker to boost your Drupal development.

Docker: where containerization starts

The best shipping service should be able pack your things well, so they do not take up much space and are properly separated from each other. It should then take them quickly and securely to any place, and you should know they will arrive in the same condition you sent them in.

Docker offers more than that. This lightweight, secure, open-source containerization platform is meant for creating, shipping and running your app or website. You can easily pack it – together with all its dependencies, settings and everything else it needs for working – into a Docker image, and then run it anywhere regardless of the environment. When you start your image, you get a container running. Containers, or instances of images, can be multiple for one image.

Docker in Drupal development: use areas and benefits

Docker makes the lives of Drupal developers and system administrators much easier by simplifying and streamlining many processes which include, but are not limited to:

● setting up a new environment

● deploying your new Drupal website’s copy

● continuous integration

● migrating your website to another server

● website upgrades from one Drupal version to another

● building, scaling, testing, and debugging your Drupal website

● configuring an infrastructure

Why exactly is Docker so helpful to Drupal developers and admins in all that and more? Let’s see.

● Consistency is all you need. Docker lets you improve collaboration between developers who work in different environments. It is easy to switch from a project using one PHP version to a project using a different version. Docker also provides good isolation from the host OS.

● Containers are highly configurable, fast and easy to create, configure, scale vertically and horizontally, discard or rebuild.

● Containers do not take up much space on disk — they are very lightweight. There can be many of them on the same host machine.

● The isolation of containers from each other lets the whole system stay uncompromised in case something goes wrong with one container. Usually, one container is responsible for one process or service. Container isolation is not complete (as is the case with classic virtual machines), but it is still beneficial for speed.

● There are plenty of helpful Docker images for Drupal on Docker hub that you can use right away. For example, our company’s repos offer lots of Docker images and containers (1 and 2). You could also check out the popular Docker4Drupal stack by Wodby that will help you speed up your local development on Linux, Mac OS X and Windows. It offers ready-made containers with Nginx, Apache, MariaDB, Drush, Solr, PHP and much more. And a fresh Docker4Drupal 2.3.0 version has been released a week ago with nice updates.

This is a just a drop in the ocean of what Docker can do for your Drupal development. We wish you luck in diving deeper and deeper into its endless capabilities, discover ready-made stacks, or be inspired to create your own. And our team is always ready to help you use Docker with maximum efficiency!

Jul 25 2017
Jul 25

Migration to Drupal 8 will save your time, effort and money in the future. It’s a fact! Discover
the great news about easy upgrades and backwards compatibility.

Technologies rush to the future, and website-building platforms run to keep up with them. Drupal is no exception — indeed, it’s a great example of it. Drupal 8 has had a great leap ahead thanks to its mobile-first nature, multi-language, accessibility, and editing enhancements, modern PHP, handy configuration management and so much more!

That’s Drupal’s essence. Each major release is a real gift box of brand-new features and better usability to make customers and developers happy. However, in this ultimate happiness, there always used to be a little spot of darkness.

A little shadow that used to hang over Drupal new releases

New versions seemed to burn the bridges between themselves and the old ones. It was like starting with a clean slate. Backwards compatibility was never a priority. Moreover, providing it could hamper website performance. So backwards compatibility was sacrificed in the name of progress.

As a result of these abysses between versions, new versions traditionally presented a challenge to developers across the globe who had to learn the fresh release from top to bottom.

Outdated releases used to go “overboard,” just like happened to Drupal 6, which became officially unsupported and stopped getting security or other updates. This left Drupal 6 website owners with the options of upgrade or support.

Depending on the amount of custom functionality, major website upgrades (from Drupal 6 to Drupal 7, from Drupal 7 to Drupal 8, etc.) could often be lengthy and costly. Yes, it’s worth it! But it’s also a little bothersome.

What if it were possible to get smoother upgrades? This was the dream of Drupal’s founder Dries Buytaert and his team, which they have now successfully brought to life.

Easy upgrades and backwards compatibility starting with Drupal 8

Now the shadows are removed and the abysses bridged! Congrats to developers and site owners, because Drupal is finally becoming backwards compatible.

This means that each new update will be compatible with previous releases. Moreover, when Drupal 9 comes out, it is going to be backwards compatible with Drupal 8.

This is a sure path to fast and easy upgrades, both between minor versions and between major versions — provided you are using the latest APIs and avoid the deprecated code. Dries Buytaert made an announcement about easy upgrades that raised a lot of excitement. Let’s look at the details.

The continuous innovation model

Drupal 8 is the first version to adopt the continuous innovation model. You no longer need to wait for years to see a brand-new release. The process will be more gradual. Minor versions will come regularly, about twice a year, and offer lots of lucrative functional niceties, and, as an awesome bonus, a smoother upgrade path from one to the next.

Deprecated code

New functionality and backwards compatible changes will be regularly introduced to Drupal 8. In this process, more and more code will be marked as deprecated. When there is too much deprecated code, Drupal 9 will be released without the deprecated systems. According to Dries, the modules using the freshest Drupal 8 APIs and avoid deprecated code will be fully functional in Drupal 9.

Drupal 9 and beyond

In other words, Drupal 9 will be almost the same as the latest minor release of Drupal 8, but without the deprecated code. Almost the same? Yes, but still different in one very important way. Moving to Drupal 9 will remain a very lucrative decision, because, when it comes out, Drupal 8 will stop getting nitty-gritty features, and the ninth version will become the new focus of the Drupal community’s attention.

And so it goes again and again, with Drupal 10, 11 and more! The progress is never-ending, which is awesome. And this progress is now more available than it has ever been.

A beneficial decision

So there is just one step separating Drupal websites owners from being forever free to make fast and easy upgrades with no hassle, with a considerable saving of time, money and effort. This step is migrating to Drupal 8 now, if you are on an older version.

Come to the bright side, and move to Drupal 8 with us ;) We have expert Drupal 8 developers on the team. Migrate once and enjoy the benefits of backwards compatibility forever!

Pages

About Drupal Sun

Drupal Sun is an Evolving Web project. It allows you to:

  • Do full-text search on all the articles in Drupal Planet (thanks to Apache Solr)
  • Facet based on tags, author, or feed
  • Flip through articles quickly (with j/k or arrow keys) to find what you're interested in
  • View the entire article text inline, or in the context of the site where it was created

See the blog post at Evolving Web

Evolving Web