Drupal

Failed login messages

New Drupal Modules - 27 June 2018 - 2:41am
Categories: Drupal

heykarthikwithu: Sites Still Vulnerable to Drupalgeddon 2

Planet Drupal - 27 June 2018 - 12:25am
Sites Still Vulnerable to Drupalgeddon 2

Attackers are exploiting Drupalgeddon 2 critical vulnerability in Drupal to compromise systems & secretly turn them into malicious cryptocurrency mining machines like cryptojacking malware, mine for Monero.
The only side effects a victim might notice is that their system is running slower or doing more work than usual.

heykarthikwithu Wednesday, 27 June 2018 - 12:55:39 IST
Categories: Drupal

Drupal Europe: Drupal Europe 2018: Digital transformation and enterprise

Planet Drupal - 27 June 2018 - 12:04am
Photo by Floriane Vita on UnsplashWhat is digital transformation?

It is 2018 and we are still talking about digital transformation? Wasn’t that finished and done ten or fifteen years ago? Not completely. Based on the study from Grand View Research the global digital transformation market size was valued at $177.27 billion in 2017 and is expected to reach $798.44 billion by 2025. It seems like we have just started and a business that does not join the movement will be left behind.

But what is digital transformation? We see it as the integration of digital technology into all areas of a business, resulting in fundamental changes to how businesses operate and how they deliver value to customers. This new approach to customer experience through digital experience is where a platform like Drupal fits in perfectly.

Digital transformation and Drupal

To build connected, omnichannel customer experiences, the technology must have a built in way to support communication between channels, such as physical locations, ecommerce, mobile applications, and social media. Drupal 8 provides APIs for creating solutions and is definitely not limited to being a website platform. With this approach, the ability to engage customers through multiple channels at the same time has become a reality. Enterprises like Bayer, who evaluated and chose Drupal as their preferred platform in November 2017, have embraced the idea of embarking on the digitalization journey with an open source software that has been around for almost two decades and has a clear vision to become the world’s leading omnichannel customer experience solution.

Europe’s biggest Drupal event in 2018

Drupal Europe will be the largest conference in Europe happening in 2018. Drupal Europe organizes the program and session selection process around industry verticals. These focus on usage of Drupal in real life scenarios, in specific target industries, alongside space to cover cutting edge technologies. Digital transformation has become an important movement and the Drupal community has recognized that and dedicated a track to it.

The track provides unique networking opportunities with — and expert advice by — award-winning vendors, with sessions and break out groups focusing on digital strategies, digital transformation, innovation management, hybrid systems and ambitious digital experiences, showcasing large-scale implementations of Drupal platforms and solutions integrating Drupal for global corporations.

Join us on September 10–14, 2018 in Darmstadt, Germany to learn first hand how Drupal enables digital transformation. You can register for the event at https://drupaleurope.org/tickets.

Present your vision at Drupal Europe

Drupal Europe is organized for the community by the community. This means everyone is invited to participate in the program and share their ideas with us. We are currently looking for submissions for sessions, panels, and workshops. To create an excellent submission, you should write a good abstract that helps track chairs and conference visitors to understand how and why you approach your topic, what will be the benefits and learnings gained by attending your session, and what is the expected experience level of the audience.

Main topics we are looking for:

  • Digital transformation with Drupal (case studies)
    What was your process of digital transformation, what were the business goals, what part Drupal plays in the solution and how did you measure success?
  • Enterprise products made for or made with Drupal

What can enterprise use to complement Drupal to support their requirements? Are there reusable solutions out there that can serve as enterprise platform?

  • Technical solutions provided with Drupal
    Having Drupal as the chosen technology for digitalization, what does Drupal offer out of the box or what did your organization develop on top of the framework?

You will speak in front of digital leaders like CTOs, CIOs and CMOs of businesses who will be there to evaluate Drupal on a strategic level. Sessions will attract people looking to gain tactical advice on how to tackle the challenges of digitalization of their organizations or their clients.

We are looking to provide value to our track’s attendees, to empower them with insights and give them information that will enable them to make better decisions when choosing Drupal as their platform of choice.

We are looking forward to great content submitted, please go to https://drupaleurope.org/speakers and propose a session at Drupal Europe before 30 June 2018.

Categories: Drupal

Persona Content

New Drupal Modules - 26 June 2018 - 11:23pm
Overview

The Persona Content module allows to create content personalized by defined segments, these segments can be based on user location or any string found in the current url or also the referer url.

Categories: Drupal

Working together to promote Drupal

Dries Buytaert - 26 June 2018 - 3:28pm

The Drupal community has done an amazing job organizing thousands of developers around the world. We've built collaboration tools and engineering processes to streamline how our community of developers work together to collectively build Drupal. This collaboration has led to amazing results. Today, more than 1 in 40 of the top one million websites use Drupal. It's inspiring to see how many organizations depend on Drupal to deliver their missions.

What is equally incredible is that historically, we haven't collaborated around the marketing of Drupal. Different organizations have marketed Drupal in their own way without central coordination or collaboration.

In my DrupalCon Nashville keynote, I shared that it's time to make a serious and focused effort to amplify Drupal success stories in the marketplace. Imagine what could happen if we enabled hundreds of marketers to collaborate on the promotion of Drupal, much like we have enabled thousands of developers to collaborate on the development of Drupal.

Accelerating Drupal adoption with business decision makers

To focus Drupal's marketing efforts, we launched the Promote Drupal Initiative. The goal of the Promote Drupal Initiative is to do what we do best: to work together to collectively grow Drupal. In this case, we want to collaborate to raise awareness with business and non-technical decision makers. We need to hone Drupal's strategic messaging, amplify success stories and public relation resources in the marketplace, provide agencies and community groups with sales and marketing tools, and improve the Drupal.org evaluator experience.

To make Promote Drupal sustainable, Rebecca Pilcher, Director of MarComm at the Drupal Association, will be leading the initiative. Rebecca will oversee volunteers with marketing and business skills that can help move these efforts forward.

Promote Drupal Fund: 75% to goal

At DrupalCon Nashville, we set a goal of fundraising $100,000 to support the Promote Drupal Initiative. These funds will help to secure staffing to backfill Rebecca's previous work (someone has to market DrupalCon!), produce critical marketing resources, and sponsor marketing sprints. The faster we reach this goal, the faster we can get to work.

I'm excited to announce that we have already reached 75% of our goal, thanks to many generous organizations and individuals around the world. I wanted to extend a big thank you to the following companies for contributing $1,000 or more to the Promote Drupal Initiative:

If you can, please help us reach our total goal of $100,000! By raising a final $25,000, we can build a program that will introduce Drupal to an emerging audience of business decision makers. Together, we can make a big impact on Drupal.

Categories: Drupal

Dries Buytaert: Working together to promote Drupal

Planet Drupal - 26 June 2018 - 3:28pm

The Drupal community has done an amazing job organizing thousands of developers around the world. We've built collaboration tools and engineering processes to streamline how our community of developers work together to collectively build Drupal.

This collaboration has led to amazing results. Today, more than 1 in 40 of the top one million websites use Drupal. It's inspiring to see how many organizations depend on Drupal to deliver their missions. What is equally incredible is that historically, we haven't collaborated around the marketing of Drupal. Different organizations have marketed Drupal in their own way.

In my DrupalCon Nashville keynote, I shared that it's time to make a serious and focused effort to amplify Drupal success stories in the marketplace. Imagine what could happen if we enabled hundreds of marketers to collaborate on the promotion of Drupal, much like we have enabled thousands of developers to collaborate on the development of Drupal.

Accelerating Drupal adoption with business decision makers

To focus Drupal's marketing efforts, we launched the Promote Drupal Initiative. The goal of the Promote Drupal Initiative is to do what we do best: to work together to collectively grow Drupal. In this case, we want to collaborate to raise awareness with business and non-technical decision makers. We need to hone Drupal's strategic messaging, amplify success stories and public relation resources in the marketplace, provide agencies and community groups with sales and marketing tools, and improve the Drupal.org evaluator experience.

To make Promote Drupal sustainable, Rebecca Pilcher, Director of MarComm at the Drupal Association, will be leading the initiative. Rebecca will oversee volunteers with marketing and business skills that can help move these efforts forward.

Promote Drupal Fund: 75% to goal

At DrupalCon Nashville, we set a goal of fundraising $100,000 to support the Promote Drupal Initiative. These funds will help to secure staffing to backfill Rebecca's previous work (someone has to market DrupalCon!), produce critical marketing resources, and sponsor marketing sprints. The faster we reach this goal, the faster we can get to work.

I'm excited to announce that we have already reached 75% of our goal, thanks to many generous organizations and individuals around the world. I wanted to extend a big thank you to the following companies for contributing $1,000 or more to the Promote Drupal Initiative:

If you can, please help us reach our total goal of $100,000! By raising a final $25,000, we can build a program that will introduce Drupal to an emerging audience of business decision makers. Together, we can make a big impact on Drupal.

Categories: Drupal

Joachim's blog: Making builder code look like output code

Planet Drupal - 26 June 2018 - 2:30pm

One of the big challenges with updating Drupal Code Builder for Drupal 8 has been the sheer variety of code to be output. On earlier versions of Drupal, it was just about hooks, and all that needed to be done was to take the API documentation code and replace 'hook_' with the module name. There were info files too, and Drupal 7 added the placing of hooks into different .inc files, but compared to this, Drupal 8 has things like plugin annotations, fluent method calls for content entity baseFieldDefinitions(), FormAPI arrays, not to mention PHP class methods, and more.

But one of the things I enjoy about working on DCB is that I am free to experiment with different ideas, much more so than with work on core or even contrib. It is its own system, without any need to work with what a framework supplies, and it has no need to be extensible. So I can try a new way of doing things as often as I want, and clean up when I've had time to figure out which way works best.

For example, up until recently, the code for a field definition in baseFieldDefinitions() was getting generated in three different ways.

First, the old-fashioned way of doing it line by line, then concatenating the array with a "\n" to make the final code. This is the way most of the old code in DCB was done, but with things that need handling of terminal commas or semicolons, and nesting indents and so on, it was starting to get really clunky.

So then I tried writing something loosely inspired by Drupal's RenderAPI. Because that's a nice big hammer that seems to fit a lot of nails: make a big array of data, chuck your stuff into it, then hand it over to something that makes the output. Except, not so good. Writing the code to make the right sort of array was fiddly. The array of data needed to combine actual data and metadata (such as the class of an annotation), which added levels to the nesting.

Then I hit on an idea: baseFieldDefinitions() fields are a fluent interface, like this:

$fields['changed'] = BaseFieldDefinition::create('changed') ->setLabel(t('Changed')) ->setDescription(t('The time that the node was last edited.')) ->setRevisionable(TRUE) ->setTranslatable(TRUE);

What if the code that builds this could be the same, to the point where you could just copy-paste code from, say, the node entity class, and make a few tweaks? Creating the code in DCB would be much simpler, and having the DCB code look like the output code would make debugging easier too.

Using a class with the magic __call() method lets us have just that: a renderer object that treats a method call as some information about code to render. Here's what the builder code for the base field definition code looks like now:

$changed_field_calls = new FluentMethodCall; $changed_field_calls ->setLabel(FluentMethodCall::t('Changed')) ->setDescription(FluentMethodCall::t('The time that the entity was last edited.')); if ($use_revisionable) { $changed_field_calls->setRevisionable(TRUE); } if ($use_translatable) { $changed_field_calls->setTranslatable(TRUE); } $method_body = array_merge($method_body, $changed_field_calls->getCodeLines());

It's not yet perfect, as the first line isn't done by this, and the handling of the t() calls could do with some polish; probably by creating a separate class called something like FunctionCall, such that FunctionCall::somefunction() returns the code for a call to somefunction().

But the efficiency and elegance of this approach has led me to devise a new principle for DCB: builder code should look as much as possible like that code that it outputs.

So applying this approach to outputting annotations, the code now looks like this:

$annotation = ClassAnnotation::ContentEntityType([ 'id' => 'cat', 'label' => ClassAnnotation::Translation("Cat"), 'label_count' => ClassAnnotation::PluralTranslation([ 'singular' => "@count content item", 'plural' => "@count content items", ]), ]); $annotation_lines = $annotation->render();

Magic methods used there as well, this time for static calls. The similarity to the output code isn't as good, as annotations aren't PHP code, but it's still close enough that you can copy the code you want to output, make a few simple changes, and you have the builder code.

This work has embodied another principle that I've come to follow: complexity and ugliness should be pushed down, hidden, and encapsulated. Here, the ClassAnnotation and FluentMethodCall have to do fiddly stuff like quoting string values, recurse into nested arrays. They have to handle special cases, like the last line of a fluent call has a semicolon and the last line of an annotation has no comma. All of that is hidden from the code that uses them. That can get on with doing the interesting bits.

Categories: Drupal

Entity Query Alter

New Drupal Modules - 26 June 2018 - 1:29pm

Drupal 8 is missing the D7 equivalent of hook_entity_query_alter() in D7, which is fine...until you need to alter the entity query. A use case would be for implementing access logic for custom entities at the query level.

Categories: Drupal

Arbitrary Tokens

New Drupal Modules - 26 June 2018 - 1:19pm

Allows administrators to define arbitrary tokens which are available throughout the site. Currently supports literal values and and entities as tokens.

Literal values: Administrators may enter values to be used for tokens.

Entities: Any entity in the site may be identified as an arbitrary token value, thus making its properties and field accessible.

Categories: Drupal

Payer Robokassa

New Drupal Modules - 26 June 2018 - 1:13pm

The module integrates the Robokassa payment gateway into the main Payer module

git clone --branch master https://git.drupal.org/project/payer_robokassa.git

Categories: Drupal

Mediacurrent: PDFs in Drupal (DrupalCon Session Review)

Planet Drupal - 26 June 2018 - 6:10am

There were a lot of amazing sessions at DrupalCon Nashville 2018, but one of the few sessions that sparked my interest was “PDFs in Drupal” presented by Dan Hansen. In this session, Dan goes through the importance of PDFs, gave a short introduction to some of the more popular PDF rendering libraries, and gave a demo on some tips and tricks that I found very useful for my future projects.

Most, if not all of us, have opened a PDF recently. PDFs are popular because they are universal as a document format and can easily be sent to others without having to worry about whether their machine can open them. Despite this, Dan notes that it feels like PDFs are behind in support, and it would be nice to have better PDF handling in Drupal core - similar to images in media libraries.

PDF Rendering Libraries

This session introduced a handful of popular PDF rendering libraries:

  • Print-to-PDF
  • jsPDF
  • FPDF
  • mPDF
  • TCPDF
  • FPDI
  • DOMPDF
  • Wkhtmltopdf
  • PDFtk
PDFs in Drupal

In Drupal 7, the most popular module for generating PDFs is the Print module - but does not support Drupal 8. Fortunately, there are options available for Drupal 8:

  • Printable - based on the Print module to allow generation of PDFs. It relies on the PDF API, which is currently not stable.
  • Entity Print (recommended) - allows for printing any Drupal entity or View (D8 only) to PDF. This module provides flexibility with PDF rendering libraries and is more lightweight compared to the Print module and has a stable release for both D7 and D8.
  • FillPDF - allows for filling PDF with values. This module can be used with the PDFtk library or a paid third-party service, and can help in reducing overhead of rendering PDFs.
     
Tips and Tricks

I found Dan’s demos to be the most interesting - as he showed some code examples of various (and seemingly common tasks) related to PDFs. The following examples from Dan’s session shows how simple and straightforward it is to work with PDFs:

Making a PDF from HTML

A custom controller can simply return the following output:

$dompdf = new Dompdf();
// Pass the HTML markup.
$dompdf->loadHtml($markup);
// Render the HTML as PDF.
$dompdf->render();
// Stream the generated PDF back to user via browser.
$dompdf->stream();

Combining 2 PDFs

Using the PDFtk library:

$pdf = new Pdf([ 
  'A' => '/path/file1.pdf', // A is alias for file1.pdf 
  'B' => ['/path/file2.pdf','pass**word'], // B is alias for file2.pdf ]);
$pdf->send();

Notice that you can specify a password for the PDF file (if there is one). You can also extract specific pages from the PDF files as well:

$pdf->cat(1, 5, 'A') // pages 1-5 from A 
  ->cat(3, null, 'B') // page 3 from B 
  ->cat(7, 'end', 'B', null, 'east') // pages 7-end from B, rotated East 
  ->cat('end', 3,'A','even') // even pages 3-end in reverse order from A ->cat([2,3,7], 'C') // pages 2,3 and 7 from C    
  ->saveAs('/path/new.pdf');

More of these examples can be found at https://packagist.org/packages/mikehaertl/php-pdftk.

Fill in a PDF Template

Using the FillPDF module:

$pdf = new Pdf([‘PATH_TO_PDF’]);
$pdf->fillForm([
  ‘name_of_text_field’ => ‘Some value’
])
->needAppearances()
->send(‘filled.pdf’);

I really enjoyed and learned a lot of useful tips from Dan’s session, and I encourage anyone who is looking to work with PDFs in Drupal to check out the session.

Related Content:
Accessibility: Let's Talk PDFs | Blog
Top Drupal 8 Modules | Blog
Mediacurrent Top Drupal 8 Modules: Drupalcon 2018 Edition | Blog

Categories: Drupal

Web Wash: Display Blocks within Content pages using Block Field in Drupal 8

Planet Drupal - 26 June 2018 - 6:00am

The Block field module lets you insert a Drupal block as a field on your content.

A Drupal theme is divided into regions and you can place blocks or your own custom blocks into these regions. You accomplish this task by dragging and ordering blocks in the "Block Layout" screen. That means you can append blocks before or after the main content of your content type. This "Block Layout" screen will soon be cluttered if you have multiple content types and/or multiple single nodes, each one with a different custom block.

However, there’s a way to insert a block (or many blocks) directly into your content as a field. Thus, you don’t have to place the block in the "Block Layout" screen, instead, you insert the block as a field on the node.

In this tutorial, we’re going to cover the usage of the Block field module. Let’s start!

Categories: Drupal

Views help tip

New Drupal Modules - 26 June 2018 - 5:10am

This module will add a "help tip area" header views area that will be rendered to a inline help tip, it can be themed via preprocess and twig template.

The template can also be used to be rendered anywhere.
Just use
#theme => 'help_tip'

Categories: Drupal

ComputerMinds.co.uk: Including form values in an email

Planet Drupal - 26 June 2018 - 4:46am

Let's say you've built a custom form for your Drupal 8 site. It contains various elements for input (name, email address, a message, that kind of thing), and you want to send the submitted values in an email to someone (perhaps a site admin). That's a pretty common thing to need to do.

This could be done with Drupal's core contact forms, webforms, or similar -- but there are cases when a bespoke form is needed, for example, to allow some special business logic to be applied to its input or the form presentation. The drawback of a custom form is that you won't get nice submission emails for free, but they can be done quite easily, with the token module (you'll need that installed).

In your form's submission handler, send an email using the mail manager service (I'll assume you can already inject that into your form, read the documentation if you need help with that):

<?php $params = [ 'values' => $form_state->getValues(), ]; // The 'plugin.manager.mail' service is the one to use for $mailManager. $mailManager->mail('mymodule', 'myform_submit', 'admin@example.com, 'en', $params);

Then create a hook_mail() in your .module file, with a matching key ('myform_submit' in my example):

<?php /** * Implements hook_mail(). */ function mymodule_mail($key, &$message, $params) { switch ($key) { case 'myform_submit': $token_service = \Drupal::token(); $token_data = [ 'array' => $params['values'], ]; // In this example, put the submitted value from a 'first_name' element // into the subject. $subject = 'Submission from [array:value:first_name]'; $message['subject'] = $token_service->replace($subject, $token_data, ['clear' => TRUE]); // Each submitted value can be included in the email body as a token. My // form had 'first_name', 'last_name', 'color' and 'birthdate' elements. $body = <<>>; $message['body'] = [ $token_service->replace($body, $token_data, ['clear' => TRUE]), ]; break; } }

Spot the [array:value:thing] tokens! Using these 'array' tokens makes it really easy to include the whatever input gets submitted by visitors to this custom form on your Drupal site. Note that there's no sanitization done - although if your email is just plain text, that's probably not a problem.

There are more array tokens you can use too, such as ones to return a comma-separated list of all items in an array, a count of items, or just the first/last item. See the original issue for examples. These tokens are available in Token's Drupal 7 version too!

Categories: Drupal

NetCore SMS Integration

New Drupal Modules - 26 June 2018 - 3:48am
Categories: Drupal

Drupal Europe: Agency Business track at Drupal Europe

Planet Drupal - 26 June 2018 - 3:13am
photo: Paul Johnson @ flickr

Drupal is our business.

Regardless of being a freelancer, a two person shop or a hundred plus agency, Drupal is vital to our success in growing and supporting our business.

The business ecosystem is changing rapidly, thereby making it a necessity for agency leaders, managers and advisors to focus on a multitude of challenges and opportunities.

Understanding how the marketplace is evolving, driving innovation, fostering the right company culture, and adopting efficient project management methodologies, are all challenges faced by businesses today.

We all want to transform our business by working with the smartest team, create and deliver amazing projects, and have ideal customers lining up to work with us.

Any Drupal conference cannot be complete without in-depth discussions and debates about these challenges and more.

What is this track about?

The Agency Business track will provide insight, support and real stories from people running businesses and managing projects. Learn about other people’s experiences, and get tips and ideas on how to tackle the challenges faced in your business or project.

Come to this track to learn / speak aboutPhoto: Michael Cannon @ FlickrAgency growth

Growing and scaling your business can be a tricky and daunting task. We need to consider strategies for how to grow our businesses, and how to do so sustainably.

With increased competition from both other agencies and other platforms, we need to look at not only how we generate new leads for our businesses, but how do we convince potential clients that Drupal is the best, that we are the best?

Leadership and Culture

What is the right company culture for my business? How can I better lead my agency through the challenges ahead? How can I provide good leadership to my team? How can we grow and scale our business, without losing our company culture along the way? These are just some of the questions we will look to answer in the Agency Business track.

Operations

Project management is a bit of a juggling act, with many different needs and tasks that need to be taken care of simultaneously. We’re always on the look-out for ways to increase a project’s effectiveness and efficiency, while reducing the risk of it getting out of control. Let’s share our experiences and ideas on how we can improve project planning, better manage timelines & budgets, and keep staff motivated, while all the time keeping clients happy and engaged in the process.

Diversification

Markets change faster and faster, so does our market. We need to adapt our products and offering to stay competitive and minimize our business risks. Perhaps it means diversifying your service offerings, perhaps it means developing a product, perhaps it means extending into new markets or verticals. However, we also need to consider how to keep clients happy and how to continue to meet their changing needs through innovation and/or diversification.

How to get involved

At Drupal Europe, we want to ensure that attendees get the most from this track through highly valuable and insightful sessions. We are looking for speakers to openly and honestly share stories about their challenges and how they solved it. We want to hear about your experiments, successes and failures, process discoveries, strategies, and tactics. We want real-life learnings, supported by facts and figures — prove to us that your way is best.

Want to submit a session under Agency Business Track?

Session submissions are open and will close on 30 June 2018.

Whatever your experience is, whether it be running a small 2 person operation or scaling to 30 and beyond, or managing projects and project teams, we want to hear from you. Your experience and insight is invaluable and we know others will think so too.

Come to Drupal Europe and share your experiences with us — submit a session to the Agency Business track today!

Know a great speaker?

Do you know someone who could be a great speaker? Or perhaps you know someone who has an interesting story to share? If so, please get in touch with the program team at program@drupaleurope.org.

And don’t forget to help us to spread the word about this awesome conference. Our hashtag is #drupaleurope.

We look forward seeing you in Darmstadt!

About Drupal Europe Conference

Drupal is one of the leading open source technologies empowering digital solutions in the government space around the world.

Drupal Europe 2018 brings over 2,000 creators, innovators, and users of digital technologies from all over Europe and the rest of the world together for three days of intense and inspiring interaction.

Location & Dates

Drupal Europe will be held in Darmstadtium in Darmstadt, Germany — with a direct connection to Frankfurt International Airport. Drupal Europe will take place 10–14 September 2018 with Drupal contribution opportunities every day. Keynotes, sessions, workshops and BoFs will be from Tuesday to Thursday.

Categories: Drupal

TMGMT Translator DeepL

New Drupal Modules - 26 June 2018 - 2:46am

DeepL translator plugin for the Translation Management Tools (TMGMT) project. Allows to use machine translation provided by DeepL to translate content.

Features

  • tbd

Requirements
Depends on Translation Management Tools. Registration on https://www.deepl.com/pro.html is required to use this module.

Categories: Drupal

Specbee: Drupal AMP : An Introduction to Rank Better on Google with Accelerated Mobile Pages

Planet Drupal - 26 June 2018 - 12:59am

Google's AMP is the hottest thing on the internet. With over 25 million website domains that have published over 4 Billion AMP pages, it did not take long for the project to be a huge success. Comprising of two main features; Speed and Support to Monetization of Objects, AMPs implications are far-reaching for enterprise businesses, marketers, e-commerce and every other big and small organizations. With great features and the fact that its origin as a Google Initiative, it is no surprise that the AMP pages get featured in Google SERP more prominently.

Why AMP??

Impacting the technical architecture of digital assets, Google's open source initiative aims to provide streamlined web pages to mobile browsers and other apps.

It is Fast, like Really Fast

AMP loads about twice as fast as a normal comparable mobile page and the latency is as less as one-tenth. Intended to provide the fastest experience for mobile users, customers will be able to access content faster, and they are more likely to stay on the page to make a purchase or enquire about your service because they know it won't take long.

An Organic Boost

Eligibility for the AMP carousal that rests above the other search results on Google SERP, resulting in a substantial increase in organic result and traffic is a major boost for the visibilty of an organization. Though not responsible for increasing the page authority and domain authority, AMP plays a key role in sending far more traffic your way.

ROI

The fact that AMP leverages and not disrupts the existing web infrastructure of a website, makes the cost of adopting AMP quite lesses than the competing technologies. In return, AMP enables better user experience which translates to better conversion rates on mobile devices.

Drupal & AMP

With better user engagement, higher dwell time and its easy to navigate between content benefits, businesses are bound to drive more traffic with AMP-friendly pages and increase their revenue.

Before you begin with the integration of AMP module with Drupal, you need to have 3 things:

AMP Module : The AMP module mainly handles the conversion of regular Drupal HTML pages to AMP-complaint pages.

Two main components of AMP module:

AMP Theme : I'm sure you have come across the AMP HTML and its standards. The one that are responsible for your content to look effective and perform well on mobile. The AMP theme produces the mark up required by these standards for websites looking to perform well in the mobile world. Also, AMP theme allows creation of custom-made AMP pages.

AMP PHP Library : Consisting of the AMP base theme and the ExAMPle sub-theme, the AMP PHP Library handles the final corrections. Users can also create their own AMP sub-theme from scratch, or modify the default ExAMPle sub-theme for their specific requirements.

How to setup AMP with Drupal?

Before you integrate AMP with Drupal, you need to understand that AMP does not replace your entire website. Instead, at its essence, the AMP module provides a view mode for content types, which is displayed when the browser asks for an AMP version.

Categories: Drupal

Configuration Replace

New Drupal Modules - 25 June 2018 - 11:55pm

Replaces existing configuration on module installation via using a "rewrite" folder in the config directory.

This can be handy, if you like to replace existing configuration (like admin user email address) without the need to use install or update hooks. You can just place your configuration YAML files into the config/rewrite directory in your module folder. Afterwards the existing configuration will be replaced on module installation.

Categories: Drupal

Savas Labs: Why your website needs HTTPS

Planet Drupal - 25 June 2018 - 5:00pm

There are many considerations for site owners on when to make the move to HTTPS. Google has just stepped up the pressure. Secure communication is especially important for Drupal site owners and the time to make the move to HTTPS is now. Continue reading…

Categories: Drupal

Pages

Subscribe to As If Productions aggregator - Drupal