“Drupal learning curve is horrible”, “it literally made me want to die”: Drupal learning curve this, Drupal learning curve that... You must have faced with all this pain that novice Drupalists tend to experience.
Meanwhile a number or Drupal usage is growing, the Drupal Community is growing, too. The thing is, Drupal offers an incredible amount of ways to become a part of the Drupal Community. Drupal’s features make it accessible even to non-coders, such as content managers, site-builders. What’s more important, the Drupal development team is going to pay even more attention to those groups (without compromising coders, of course).
Building software is a complex and sometimes tedious process in which you make errors and mistakes. Testing for errors is mostly done by running your website / code through tests either manually or automatically.
Checking for your code style like formatting and documentation flaws you can use a code sniffer. For PHP you can run phpcs using PHP_CodeSniffer.
Drupal core provides core/phpcs.xml.dist to tell phpcs what to test for.
Jacob Rockowitz: Webform 8.x-5.x-beta14: Ajaxifying Webforms and Improving User Submission Management
Webform 8.x-5.x-beta14 has become a significant release because it addresses several important features and milestones listed on the Webform roadmap, including support for multiple drafts, Ajax-enhancing submission forms and the administrative UI.
Before I start to "show-n-telling" you about these cool new features, wanted to announce that I am targeting monthly releases and explain my goals for each release of the Webform module.
Initially,I was reluctant to publically commit to regular releases for software that I am maintaining for free. Turns out my public commitment is a good thing. Targeting regular releases motivates me to organize the Webform's roadmap and issue queue while iteratively working on fixing bugs and adding new features. I’m trying to take an agile approach with maintaining the Webform module that seeks to iteratively implement working features knowing that features and functionality can and should evolve over time.
The Webform for Drupal 8 (formerly known as YAML Form module) is a completely new codebase striving to reach reasonable feature parity with the Webform 7.x-4.x module, which is used by a half million Drupal 7 websites. I've also looked at the Webform ecosystem for Drupal 7 - gradually I’m integrating key Webform add-on modules into the core Webform module for Drupal 8.
Ajaxifying Webform Forms and User Interface
If you're a non-profit volunteer, board member, director, or staff, should you be afraid of using Drupal for your website needs?
There's been a lot of doom and gloom in the Drupal Community with Drupal 8 being more complex than ever! Other "content management systems" (a.k.a. CMS's) have long claimed that "Drupal is hard", "Drupal is expensive".
Is Drupal hard? Is Drupal 8 even "harder"? Is it "too expensive" for your non-profit?
Does Drupal suck at non-profits?
In this article, I take a deep dive, looking at what non-profits need from a website and how well Drupal can provide for those needs.
Read on to see what I think, and PLEASE, share your thoughts in the comments below!
As you may know, Drupal 6 has reached End-of-Life (EOL) which means the Drupal Security Team is no longer doing Security Advisories or working on security patches for Drupal 6 core or contrib modules - but the Drupal 6 LTS vendors are and we're one of them!
Today, there is a Moderately Critical security release for the SMTP module to fix an Information Disclosure vulnerability.
This SMTP module enables you to send mail using a third party (non-system) mail service instead of the local system mailer included with Drupal.
When this module is in debugging mode, it would log privileged information.
With the help of the D6LTS vendors, a new version was released.
If you have a Drupal 6 site using the SMTP module, we recommend you update immediately.
If you'd like all your Drupal 6 modules to receive security updates and have the fixes deployed the same day they're released, please check out our D6LTS plans.
Note: if you use the myDropWizard module (totally free!), you'll be alerted to these and any future security updates, and will be able to use drush to install them (even though they won't necessarily have a release on Drupal.org).
Meet our last intern: Brandon Reid of our Web & Drupal Developer Internship program! One of his first projects as an intern was to research High Tech Website built on Drupal, so without further ado, here are his findings:
For those who aren't familiar with Drupal. Drupal is the #1 platform for web content management among global enterprises, governments, higher education institutions, and NGOs. Drupal is flexible and highly scalable, publishing a single website or shares content in multiple languages across many devices. Technology and business...Read more
Over the last few years, many of us have seen the need to evolve community governance. Up until now, we had to focus on other priorities, but now is the time to address our needs for community governance especially in light of recent community events.
Our project has matured greatly and participation has expanded from developers and site builders to also include more content editors, designers, and marketing managers who work not only as freelancers or at Drupal shops, but also for large digital agencies or system integrators. We want all community members to be included in these community discussions so the redefined community governance serves everyone. This is an exciting time to create an even healthier future for our ever-growing community.
The Drupal Association is committed to staying in a support role as the community determines how to best evolve community governance to support everyone’s needs. We started helping by hosting Community Discussions that were mediated by Whitney Hess. There were 7 sessions at DrupalCon Baltimore and 7 virtual sessions between April and May. You can find the meeting minutes here.
The Community Discussions surfaced several common needs and identified several strategies for addressing those needs.
The most commonly shared needs of the community are (in order of frequency):
Strategies to address those needs ranged from clarifying the responsibilities and boundaries of the leadership roles throughout the Drupal project, determining how and where to communicate community decisions, improving processes for community management, and providing easier access to documentation about leadership roles and clearly communicating what is expected of Drupal community members.
In terms of next steps, the participants were in agreement that we need to come together in a Governance Summit to start architecting improvements to today’s governance structure. However, the community did not define the best way to hold this meeting. It is still unclear when and where it should be, and who should participate and facilitate. We will send out a community survey next to get input from you to answer these questions.Attend The Webinar
We invite to you attend a webinar on July 6 at 11 am ET / 1600 BST / 8:30 pm IST hosted by Whitney Hess. Whitney will review the findings from our Community Discussions in more detail. We will record the video and share it with you afterwards, along with a written transcript.
Dial in details are below:
Dial: +1 646 558 8656 (US Toll) or +1 408 638 0968 (US Toll)
Meeting ID: 589 988 397
International numbers available:
Thank you for your patience and participation as we tackle these big questions and move forward together as a stronger community.
The Drupal CLI. A tool to generate boilerplate code, interact with and debug Drupal.heykarthikwithu Wednesday, 28 June 2017 - 12:05:12 - IST, Asia/Kolkata
This blog post summarises my fourth week of the coding period of Google Summer of Code with Drupal.Code Review
The week began with iterating over previously committed code based on feedback by Colan. After making the changes and pushing them, I later merged the merge request into the 8.x-1.x-dev branch after Colan’s approval.tameeshb Wed, 06/28/2017 - 09:16 Tags GSoC Google Summer of Code 2017 Drupal Drupal Blog
In true Drupal fashion, we had a huge amount of proposals for DrupalCon Vienna on the last day, bringing us to 567 session submissions.
On the latest DrupalConsole release the Launcher aka the global executable is a stand-alone full CLI application. Yes, it was like this before, but at some point on RC releases when the per-site installation was introduced we removed global commands and most of the Launcher features, but after receiving feedback and analyzing the benefits, we decided to bring back the Launcher as a full CLI application.
Accelerated Mobile Pages (AMP) is a web mobile technology specifically designed to tackle unresponsive web pages on mobile devices like smartphones and tablets. The challenge of poor mobile user experience due to slow loading of web pages is not new. Rich media contents, including ads, often in the form of videos, images, and audios, have made the web unbearable for mobile users. So much so that, as early as 2010, Google designated the load speed of a website as a rank factor in its search algorithm. In 2014, Google added the mobile usability report to its Webmaster Tools. Running this new report identifies specific mobile usability issues on a given website as detected by Google. With the availability of this reporting tool, it was generally speculated that mobile usability would one day become a ranking factor. Speculation turned into reality in 2015 when Google announced that mobile usability is officially a rank factor in its search. Despite earlier signs and warnings from Google, this event still created quite a shock among webmasters, and was nicknamed Mobilegeddon for its magnitude of impact. In a nutshell, if a web page is deemed mobile-unfriendly by Google, (and there is no middle ground), it will be ranked lower even if its content is exceptional.
The case for mobile pages with fast load times makes business sense, and is backed by industry research statistics. About half of Internet shoppers expect a web page to load within 2 seconds. Furthermore, studies showed that 40% of desktop users would abandon a slow loading web page, while mobile users were abandoning at even a higher rate (50%), according to Consumers in the Micro-Moment, May 2015.
As a direct response to the mobile web speed challenge, Google introduced the AMP project in 2015. Gary Illyes, webmaster trends analyst at Google, reported that AMP web pages load 4 times faster than the average. Jon Parise, technical architecture lead at Pinterest, cited test results that show AMP pages use eight times less data than traditional mobile-optimized pages. Better user experience with AMP pages correlates with improved user engagement: 90% of publishers net higher CTR, while 80% of publishers are getting more page views.
In a nutshell, AMP leverages existing web technologies, and can be readily deployed on existing web infrastructure. Specifically, AMP pages can be uploaded to and served from existing web servers without custom server configuration.
Although AMP, as a technology, is only 2 years old, it has been deployed successfully with well-documented case studies from web publishers, advertisers, and e-commerce websites.
It is no surprise that, because of its origin as a Google initiative, AMP pages are featured prominently in Google Search results. AMP-enabled news stories are displayed in the AMP carousel at the top of mobile search results pages. Although AMP is not yet ubiquitous in the mobile web, it is gaining traction by being supported on LinkedIn, Medium, Pinterest, Reddit, Twitter, WordPress, and Drupal.
Drupal is a CMS that many web publishers and e-commerce vendors use to build their websites (learn here why). If you are a Drupal developer, AMP is a technology that you should definitely consider using. To make AMP adoption easier, Drupal has developed an AMP module to automatically convert regular pages into AMP pages. The rest of this article shows how to enable AMP support in the Drupal environment.
Install Drupal AMP support Overview
AMP support on Drupal requires the installation of the following components.
The AMP module manages the conversion of regular Drupal HTML pages to AMP-complaint pages. The URL of AMP pages ends with the string '?amp'.
AMP PHP library
The AMP PHP library is the engine behind HTML conversion. It validates user-entered HTML against the AMP standard, and makes the necessary corrections to ensure compliance.
The AMP theme consists of the AMP base theme and the ExAMPle sub-theme. All Drupal AMP pages must be displayed using a sub-theme of the AMP base theme. You can create a new AMP sub-theme from scratch, or modify the default ExAMPle sub-theme.
Both Drupal 7 and Drupal 8 support AMP. The following illustrates how to setup AMP support for Drupal 8 on the Linux platform.
The prerequisite is that a working Drupal system is already in place. The following install procedure uses the command-line tools Composer and Drush. If these tools were already installed on the Drupal system, they do not need to be re-installed. Unless specified otherwise, the following steps should be performed using a non-root account on a Linux system.
Download and install Composer
Composer is the dependency manager for downloading PHP packages. Download and install Composer using this command:
curl -sS https://getcomposer.org/installer | php
Move the installed program to a system directory that grants you execute permission, e.g., /usr/local/bin.
mv composer.phar /usr/local/bin/composer
Download AMP module
Download the AMP module and its dependencies, including the AMP PHP library, using the composer command below. Note that the composer command must run inside the web server's document root directory. The exact document root directory location depends on the web server and Linux distribution. For this example, the document root is /var/www.
composer require drupal/amptheme
Download AMP theme
Download the AMP theme including the default ExAMPle sub-theme to the document root directory (e.g., /var/www).
composer require drupal/amptheme
Enable AMP sub-theme
An AMP sub-theme must be enabled before enabling the AMP module. For this example, we enable the default ExAMPle sub-theme (ampsubtheme_example). Alternatively, you can enable a custom AMP sub-theme.
If Drush, the command-line shell for managing Drupal, is already installed on your system, you can enable the sub-theme using the following Drush command. Note that the Drush command must be executed inside the document root directory.
drush en ampsubtheme_example
You can also enable the sub-theme through the Drupal web interface using the following procedure:
Log in as a Drupal administrator.
2. Select the Appearance page.
Locate the ExAMPle sub-theme in the Uninstalled themes section, and click Install.
There are 2 Install options available: Install, and Install and set as default. Select Install. The sub-theme should only be used on AMP pages, and therefore must not be set as the default theme.
Enable AMP module
The AMP module can be enabled using Drush or the Drupal web interface.
To enable the AMP module using Drush, execute the Drush command below inside the document root directory:
drush en amp
To enable AMP using the web interface:
Log in as a Drupal administrator.
2. Select the Extend page.
Scroll down to the Other section, and select both the Accelerated Mobile Pages(AMP) and Token modules.
Before AMP pages can be displayed, AMP needs to be configured using the web interface.
Log in as a Drupal administrator.
Select the Configuration page.
Click AMP Configuration in the Content Authoring section.
The AMP configuration page is displayed.
Select ExAMPle Subtheme as the AMP theme, and click Save configuration button.
The top of the AMP configuration page lists the AMP status by content type. Initially, AMP is disabled for all content types, e.g., article and basic page.
Enable AMP for a content type, e.g., article, by clicking the corresponding Enable AMP in Custom Display Settings link.
The Manage Display page is displayed as a result.
Click to open Custom Display Settings.
Select the AMP view mode, and click Save.
Saving the setting returns you to the AMP Configuration page.
Click Configure AMP view mode for the content type you've just AMP-enabled.
All fields available to display for the content type are listed.
Specify AMP format for fields, and click Save.
The fields available depend on the content type. For the Body field, select AMP Text as the format. For Image, select AMP Image.
Select the Structure page.
Click Block layout.
Select the ExAMPle Subtheme tab.
This tab lists the blocks available for the sub-theme, e.g., Search, Breadcrumbs. You can move specific blocks to different regions on the page, or remove them altogether. After you make the modifications, click Save blocks.
Now, you are ready to view the AMP pages. You can view an AMP page using either of the following methods:
Edit the page.
Edit the page under Drupal, and instead of selecting Save and keep published, select Save and view AMP page.
Append AMP suffix to URL.
Browse to the regular non-AMP version of the page. Manually append the suffix '?amp' to the end of the page URL, and hit Enter. For example, http://localhost/node/2 becomes http://localhost/node/2?amp.
Summary & conclusion
Despite tangible results, AMP is but 1 of several mobile web technologies aiming to decrease page loading time. Its competitors include Facebook Instant Articles and Apple News. AMP distinguishes itself by being the only open-source platform among the three.
The decision of which technology to adopt will influence the bottom line of a company. Below, we list the advantages and disadvantages of AMP.
Although AMP per se is not a rank factor in Google searches yet, AMP pages, by virtue of faster loading time, contributes to better SEO results for mobile searches. Better search engine visibility, lower bounce rates, and higher click-through rates are all achievable benefits of AMP. Tips on how to optimize a Drupal website for SEO can be found here.
The cost of adopting AMP is generally lower than competing technologies because it leverages, not disrupt, existing web infrastructure. The return is a much better user experience which translates to improved mobile conversion rates.
Better behaving ads
Advertisers are an integral part of the AMP ecosystem. AMP ensures that ads displayed on AMP pages load quickly and do not detract from overall user experience.
Less stress on web servers
AMP pages take up less data space, and can benefit from caching on AMP Cache servers. As a result, the stress on web servers is proportionally reduced.
Potential solution for smaller sites
Smaller websites may not have the IT budget to tackle speed challenges on mobile web. AMP provides a viable solution, especially for websites hosted on a CMS such as Drupal and WordPress. AMP support on Drupal eases the conversion of regular web pages to AMP pages.
An AMP-enabled website typically has both AMP pages targeting mobile users and regular web pages targeting desktop users. This is an added level of complexity for webmasters and search engines. The 2 versions of a web page must both be visible to search engines, but, at the same time, not viewed as duplicates. Given the newness of AMP, in-house AMP expertise may not be available for most businesses. For professional consulting, feel free to contact Vardot.
AMP HTML restricts the types of HTML tags that can be used on an AMP page. All is well if an AMP page passes AMP validation. Otherwise, considerable web development expertise is required to make the necessary adjustment to pass the validation without sacrificing what you actually want to achieve. Even with the help of a CMS such as Drupal, customizing the look and feel of an AMP page requires in-depth knowledge of the AMP theme and how to craft sub-themes.
Uncertain industry-wide adoption
AMP enjoys support from a growing number of platforms, vendors, and partners. However, given the competition from industry heavyweights such as Facebook and Apple, industry-wide domination is far from certain. With the backing of Google, AMP can potentially become the industry-standard format for mobile search pages, or, like Google Authorship, just another Google experiment that does not reach its full potential.
And did you tru to set up accelerated mobile pages on your Drupal site? Share with us your experience in the comments section below.Tags: Drupal drupal 8 Drupal Planet Title: AMP Up Your Drupal Site Using Google's Accelerated Mobile Pages