Planet Drupal

Subscribe to Planet Drupal feed
Drupal.org - aggregated feeds in category Planet Drupal
Updated: 9 min 5 sec ago

KnackForge: How to update Drupal 8 core?

Sat, 24/03/2018 - 06:01
How to update Drupal 8 core?

Let's see how to update your Drupal site between 8.x.x minor and patch versions. For example, from 8.1.2 to 8.1.3, or from 8.3.5 to 8.4.0. I hope this will help you.

  • If you are upgrading to Drupal version x.y.z

           x -> is known as the major version number

           y -> is known as the minor version number

           z -> is known as the patch version number.

Sat, 03/24/2018 - 10:31
Categories: Elsewhere

Valuebound: Drupal 8: How to create a custom block programatically

Mon, 19/12/2016 - 08:33
Drupal 8: How to create a custom block programatically Jaywant.Topno Mon, 12/19/2016 - 02:33
Categories: Elsewhere

Valuebound: Drupal 8: Custom Block Creation programmatically

Mon, 19/12/2016 - 08:33
Drupal 8: Custom Block Creation programmatically Jaywant.Topno Mon, 12/19/2016 - 02:33
Categories: Elsewhere

Drupal core announcements: Drupal 8 core release window on Wednesday, August 03, 2016

1 hour 9 min ago
Start:  2016-08-02 12:00 - 2016-08-04 12:00 UTC Organizers:  xjm catch Event type:  User group meeting

The monthly core patch (bug fix) release window is this Wednesday, August 03. Drupal 8.1.8 will be released with dozens of fixes for Drupal 8. Drupal 8.2.0-beta1 will also be released sometime during the week to begin preparation for the upcoming minor release in October. There will be no Drupal 7 bugfix release this month.

To ensure a reliable release window for the patch and beta releases, there will be a Drupal 8.1.x and 8.2.x commit freeze from 12:00 UTC Tuesday to 12:00 UTC Thursday. (The beta release window may extend later if needed.) Now is a good time to update your development/staging servers to the latest 8.1.x-dev code and help us catch any regressions in advance. If you do find any regressions, please report them in the issue queue. Thanks!

To see all of the latest changes that will be included in the patch release, see the 8.1.x commit log.

Other upcoming core release windows after this week include:

  • Wednesday, August 17 (security release window)
  • Wednesday, September 07 (patch release window)
  • Wednesday, October 5 (scheduled minor release)

Drupal 6 is end-of-life and will not receive further releases.

For more information on Drupal core release windows, see the documentation on release timing and security releases, as well as the Drupal core release cycle overview.

Categories: Elsewhere

Chromatic: YouTube Field 7.x-1.7 and 8.x-1.0-beta3 Released!

Fri, 29/07/2016 - 22:16

We're happy to announce two new releases for the YouTube Field module:

Improvements include:

Once again, it was a community effort. The module has now given credit attribution to 28 different people. A number of them have been the community member's first attributed commit! Not to mention, endless others have contributed in the issue queue. Thanks to their help, the module has now reached over 30,000 installs. That's enough to land in the top 200!

Why the "beta" label on the 8.x release?

The 7.x-1.x module includes Colorbox support, but that support has not yet been ported to the 8.x-1.x branch. We'd love help with that! We're planning on removing the "beta" label once that support is committed. The rest of the module is a direct port of 7.x-1.x and it already reports a healthy number of installs.

How else can I help?

Hop in the issue queue and have a look at the outstanding issues for either branch. As previously mentioned, any and all contributions are greatly appreciated!

Categories: Elsewhere

FFW Agency: Real Time Government Personalization

Fri, 29/07/2016 - 21:10
Real Time Government Personalization Ray Saltini Fri, 07/29/2016 - 19:10

We got a great response to our Real-Time Personalization Strategies for Government Websites session at Drupal GovCon last week. Most of the questions we received were from representatives of agencies just beginning to explore their options who wanted to know how to get started and to begin to understand how other agencies have started using personalization.

So together with other staff here at FFW we’ve begun to put together a library of personalization use cases. If you work with a government agency or quasi-public authority send us your examples so we can share our findings with your colleagues.

In the meantime we’re making our presentation slides available as a guide to personalization basics for government agencies. Once again I’d like to acknowledge my colleague Dave Sawyer for his excellent work on this topic. Feel free to contact me directly with questions at ray.saltini@ffwagency.com.

For those of you just tuning in, web personalization allows content to be tailored to the interests of the visitor, resulting in increased engagement and better experiences. Personalized content is essential to an effective digital communications strategy, but planning and implementing a personalization solution can be complex and cost prohibitive. 

This guide introduces the basics of web personalization and presents several simple ways for government agencies to get started with web personalization using Drupal. It includes:

    •    An overview of common personalization use cases
    •    A checklist of prerequisites for implementing personalization on a Drupal project
    •    How personalization for authenticated users differs from that of anonymous visitors
    •    Special privacy considerations
    •    Why Drupal is the best CMS to execute a personalization strategy

Click on the personalization tag for more information on this topic.
 

Tagged with Comments
Categories: Elsewhere

Dries Buytaert: Setting higher standards for corporate contributions to Drupal

Fri, 29/07/2016 - 18:46

Last week I made a comment on Twitter that I'd like to see Pantheon contribute more to Drupal core. I wrote that in response to the announcement that Pantheon has raised a $30 million Series C. Pantheon has now raised $50 to $60 million dollars of working capital (depending on Industry Ventures' $8.5M) and is in a special class of companies. This is an amazing milestone. Though it wasn't meant that way, Pantheon and Acquia compete for business and my Tweet could be read as a cheap attack on a competitor, and so it resulted in a fair amount of criticism. Admittedly, Pantheon was neither the best nor the only example to single out. There are many companies that don't contribute to Drupal at all – and Pantheon does contribute to Drupal in a variety of ways such as sponsoring events and supporting the development of contributed modules. In hindsight, I recognize that my tweet was not one of my best, and for that I apologize.

Having said that, I'd like to reiterate something I've said before, in my remarks at DrupalCon Amsterdam and many times on this blog: I would like to see more companies contribute more to Drupal core – with the emphasis on "core". Drupal is now relied upon by many, and needs a strong base of commercial contributors. We have to build Drupal together. We need a bigger and more diverse base of organizations taking on both leadership and contribution.

Contribution to Drupal core is the most important type of contribution in terms of the impact it can make. It touches every aspect of Drupal and all users who depend on it. Long-term and full-time contribution to core is not within everyone's reach. It typically requires larger investment due to a variety of things: the complexity of the problems we are solving, our need for stringent security and the importance of having a rigorous review-process. So much is riding on Drupal for all of us today. While every module, theme, event and display of goodwill in our community is essential, contributions to core are quite possibly the hardest and most thankless, but also the most rewarding of all when it comes to Drupal's overall progress and success.

I believe we should have different expectations for different organizations based on their maturity, their funding, their profitability, how strategic Drupal is for them, etc. For example, sponsoring code sprints is an important form of contribution for small or mid-sized organizations. But for any organization that makes millions of dollars with Drupal, I would hope for more.

The real question that we have to answer is this: at what point should an organization meaningfully contribute to Drupal core? Some may say "never", and that is their Open Source right. But as Drupal's project lead it is also my right and responsibility to encourage those who benefit from Drupal to give back. It should not be taboo for our community to question organizations that don't pull their weight, or choose not to contribute at all.

For me, committing my workdays and nights to Drupal isn't the exhausting part of my job. It's dealing with criticism that comes from false or incomplete information, or tackling differences in ideals and beliefs. I've learned not to sweat the small stuff, but it's on important topics like giving back that my emotions and communication skills get tested. I will not apologize for encouraging organizations to contribute to Drupal core. It's a really important topic and one that I'm very passionate about. I feel good knowing that I'm pushing these conversations from inside the arena rather than from the sidelines, and for the benefit of the Drupal project at large.

Categories: Elsewhere

Zivtech: How to Invest in Your Employees

Fri, 29/07/2016 - 15:05
Training as an Investment
When you start with untrained staffers, they are not billing very many hours, and they’re also taking a lot of time from people who would be billing.

You're constantly having this feeling of, "Oh God, I don't have time to help you. I have to get my work done." You have to fight that and say, "Do you know what? Helping you is more important than getting my work done." Getting work done is short-term money. Teaching someone is long-term. You have to find the balance because you have to keep the money coming in, but everyone on your team must understand that training people up is the highest priority.

It's not just a distraction slowing you down from getting your work done. It is the whole future of the company. On-Ramps to Success
We found a lot of different ways that we can have employees bill and learn as they are gaining experience.

One way is quality assurance, or QA. Having staff perform testing gets them in the mix of the whole project. They are moving through the tickets; they are testing everything. They are passing things up to the client.

Documentation is another task that we can have less experienced people tackle. We're lucky enough to have a client now that comes to us just for technical documentation, and writing technical documentation is something that a smart, logical, technical, college educated person can do without five years of development experience. In the process they are learning.

We have them make training materials. You don't have to be an expert to write automated tests. In the process, you get a lot more involved in the mix of a software project.

Quality First
With all these brand new people, how do you make sure that quality remains high? I'm obsessed with quality; my worst nightmare is low quality work going out to our clients. But quality is all about process and communication. We’ve created review techniques that ensure junior staff members are safe to make mistakes. That review process provides constant feedback. People learn pretty quickly not to make the same mistake again.
Categories: Elsewhere

InternetDevels: Drupal 8 tools for meeting accessibility standards: the art of being modern

Fri, 29/07/2016 - 14:00

Among Drupal 8’s many shiny features, the support for web accessibility standards shines particularly bright, although it is not immediately noticed by everyone. However, it’s noticed by the people with disabilities (visual or audial impairment, color blindness, difficulty controlling a mouse, etc.) who make up a large segment of web audiences.

Read more
Categories: Elsewhere

Blair Wadman: Need to quickly roll back your Drupal database? Restore it with just one click

Fri, 29/07/2016 - 07:36

With a click here, and a click there, it can be really easy to mess up a Drupal site, especially if you are fairly new to it. It doesn't have to be you, in the hands of your manager or client, they can end up breaking the site. Setting the correct permissions will help reduce the risk of this, but sometimes people want more permission than they really should have. And when the site owner comes to you and says - “I broke all the things!” - you immediately wonder when the last backup was. Are backups even running? How do I restore from a backup! Help!

Fix all the things with one click

But you don’t have to live in fear of a broken Drupal site. With just one click, you can quickly and easily restore your Drupal site to its former glory. As soon as your client or boss says "I broke all the things", you can say "I just fixed all the things!". They will be amazed at your Drupal harnessing powers.

The ability to restore your Drupal site with one click comes from the Backup and Migrate module. Once you have set it up, it is as easy as pie to use (read on for how to set it up).

Categories: Elsewhere

ImageX Media: Higher Education Notes and Trends for the Week of July 25, 2016

Fri, 29/07/2016 - 00:10

Last week in higher education was all about technology impacting student outcomes and teaching methodology. This week, the buzz is around the almighty dollar. We’re seeing higher education become one of the focal points of the Democratic party’s 2016 U.S. Presidential election platform. We also found an interesting study that highlighted the usage of “open” textbooks and the impact they can have on student costs.

Did we mention higher education pays? Read on to learn more.

Categories: Elsewhere

Lullabot: Around the Drupalverse with Enzo García

Thu, 28/07/2016 - 22:00
Matt & Mike talk with Eduardo "Enzo" García about his 18 country tour around the the world! We talk about various far-flung Drupal communities, motivations, challenges, and more.
Categories: Elsewhere

Don't Panic: A blog about Drupal: Tips & tricks for Drupal and GIT

Thu, 28/07/2016 - 21:28

Ever since Drupal 7 I've used GIT to keep track of both my personal repos as the ones the company I work for manage. In short, I use GIT quite a lot. A colleague of mine use GIT to keep track of his computer setup so he easily can pull down his settings and .profile whenever he chooses to reinstall his computer or get a new one. I've heard of a guy (or girl, can't remember) who use GIT to keep track of all his documents. That seems a bit handful, but GIT is wonderful to keep track of the changes in your, for example, Drupal repo.

And even if I've used GIT for so long, I'm still learning new stuff about GIT and it makes my daily work even better and more streamlined. Below I'll share some of my discoveries when working with Drupal and GIT.

I've updated many modules, but I want to commit them one by one

I've done a total update perhaps, or anyway updated more than one module, but I want to make separate commits due to OCD or company guidelines, well as long as the module is located in it's own folder (which they are), that's no problem.

Example: I've updated two modules, Token and Metatag, and now I have a list of 40+ files which are listed as either modified, deleted or new. Instead of doing a total commit of them all, I simply add the folders, one by one, and do separate commits of them.

$ git add sites/modules/token $ git commit -m "Updated Token module" $ git add sites/modules/metatag $ git commit -m "Updated Metatag module"

Two modules, nicely committed one by one. Now you can sleep without any OCD nightmares.

Add all files, but not all!

This is one of the latest I learned. Sometimes, when I update Drupal Core I want to add all files, but for some reason I want to exclude one or two files.

Example: I've updated Drupal core, which led to 60+ modified, deleted or new files but among them I have my settings.php and an updated module (let's choose Metatag again) that I want to exclude. I could do a separate git add for the module folder if I want, but perhaps I don't want to commit it at all, and that's where this comes in handy.

$ git add -A // Add all the files $ git reset -- sites/modules/metatag** // "un-commits" the metatag module folder $ git reset -- sites/default/settings.php // "un-commits" the settings.php $ git commit -m "Updated Drupal Core like a pro!" I've made changes to a file, but want the original file back

This happens a lot. You try something out, go wild, and then suddenly want your original file back. No worries. Just use this to make the changes disappear and the original file will magically appear again.

git checkout [filename]

You can even make all the changes disappear, going back to square 1 on your repo.

git reset --hard

That command will not erase new files, though, so you might be standing with a bunch of new files that GIT won't ignore. You can either delete them, file by file, or you can use the following command to erase all the un-committed files:

git clean -d -x -f There's changes in my file? What changes?

Sometimes when you upgrade a module or if you just come back to a project and you can't remember what you've done, there's a quick and easy way to see the differences in a file. If you do a git status and a file comes up as changed you can type git diff followed by the filename or complete path to the filename and you'll see the changes. If there are a lot of changes you might want to check out other ways of analyzing the changes. If you're using Sublime Text Editor I can recommend Git Gutter.

$ git status // Lists all changed files $ git diff .htaccess // Shows the changes in the .htaccess-file

That's a few examples of what you can do with GIT, use it for. As I discover more, I'll write them down here so we can spread the knowledge.

Categories: Elsewhere

Axelerant Blog: Drupal Cache Case Study: Boosting Performance

Thu, 28/07/2016 - 20:00

This Drupal cache case study began on a pleasant January afternoon in beautiful Goa. The entire company flew in for our annual retreat, enjoying the scenic beauty of the sandy beaches and the cool breeze. Between the fun times, we were ducking into our remote workspace, poring over a cachegrind report sent over by our client.

This report was generated for ajax responses coming from a product page on an e-commerce website. We could clearly see that the page was extremely slow to render and that this was true for all ajax responses.

The Cachegrind report as sent by the client – Drupal Cache: A Case Study

Free Open Source Staffing Guide hbspt.forms.create({ portalId: '557351', formId: '0e484b0e-3475-47ed-b8f5-49fa6b4cacab' });

Progressive Doping:

Digging deeper to figure out what was causing the performance bottleneck, we use XDebug to generate cachegrind files, which we could then analyze to determine what functions were costing us the most, or where there were functional paths that could be truncated via caching. Performing this process iteratively we came up with a list of major pain areas. This list was very specific to our project.

  1. Function “get nid from product_id” was being frequently called with a resulting resource consuming data query.
  2. Function “hook_commerce_checkout_pane_info_alter” was being executing on each request.
  3. Product filtering for a particular type of user was a resource consuming activity
  4. Function “get product_id matching attributes” was being frequently called, with a resulting resource consuming query.
  5. The theme function “theme_extra_bundles_radio” was processing some resource consuming business logic.
  6. A lot of calls were made to the “entity_load” function.
Drupal Cache

It is a widely accepted fact that as great as the Drupal 7 core can be, it doesn’t scale well for Web sites with a lot of content and a lot of users. To extract the best performance under such scenarios, it’s necessary to make use of several strategies, tools, and techniques. Keeping this in mind, we settled down with the following strategies:

  • Basic Drupal caching:

Drupal offers basic performance settings at:

Administration > Configuration > Performance > Development > Performance (admin/config/development/performance)

Here we enabled block and page caching which cached the dynamic complex SQL queries of Drupal for quick retrieval of content. We also enabled the Compress cached pages, Aggregate and compress CSS files and Aggregate JavaScript files which further helped in bandwidth optimization by reducing the number of HTTP calls.

  • Panel Caching:

    We developed a custom ctools plugin to provide two extra options for panel cache methods.

    • Complex cache
    • Lineup/Dealership cache

Lineup/Dealership cache – Drupal Cache: A Case Study

You can also define your panel cache method for your particular use case and cache the panel content.  First, define a ctool plugin like:

<?php // Plugin definition. $plugin = array( 'title' => t("Example cache"), 'description' => t('Provides a custom option to cache the panel content.'), 'cache get' => 'my_module_cache_get_cache', 'cache set' => 'my_module_cache_set_cache', ); /** * Get cached content. */ function my_module_cache_get_cache($conf, $display, $args, $contexts, $pane = NULL) { $cache = cache_get(‘my_panel_data', 'cache_panels'); if (!$cache) { return FALSE; } if ((time() - $cache->created) > $conf['lifetime']) { return FALSE; } return $cache->data; } /** * Set cached content. */ function my_module_cache_set_cache($conf, $content, $display, $args, $contexts, $pane = NULL) { cache_set('my_panel_data', $content, 'cache_panels'); } ?>
  • Custom caching:

After looking at few more cachegrind reports, we identified some custom functions that were causing a performance problem and thrashing the database to perform complex queries and expensive calculations every time a user viewed specific pages. This prompted  us to use Drupal’s built-in caching API’s

The rule is never to do something time-consuming twice if we can hold onto the result and reuse them. This can be depicted in a simple example:

<?php function my_module_function() { $data = &drupal_static(__FUNCTION__); if (!isset($data)) { // Here goes the complex and expensive calculations and populate $data // with the output of the calculations. } return $data; } ?>

The drupal_static function provides a temporary storage to functions for data that sticks around even after they are done executing. drupal_static adds the magic to this function. It returns an empty value on the first call and preserves the data on next call in the same request. That means our function now can determine if the variable is already populated or not. If it has been populated, it will return the value and skip the expensive calculations.

The static variable technique stores data for only a single page load. To overcome this situation Drupal cache API persists the cached data in a database. The Following code snippet illustrates the use of Drupal cache API

<!--?php function my_module_function() { $data = &drupal_static(__FUNCTION__); if (!isset($data)) { $cache = cache_get('my_module_data', 'cache_my_module') if ($cache && time() < $cache->expire) { $data = $cache--->data; } else { // Here goes the complex and expensive calculations and populate // $data with the output of the calculations. cache_set('my_module_data', $data, 'cache_my_module', time() + 360); } } return $data; } ?>

This version of the function uses database caching. Drupal caching API provides three key functions –  cache_get(), cache_set() and cache_clear_all(). The initial check is made to the static variable, and then this function checks Drupal’s cache for data stored with a particular key. If data is found the $data is set to $cache->data.

If no cached version is found, the function performs the actual work to generate the data and saves it to the static variable at the same time which means that in the next call in the same request, it does not even need cache_get.

Finally, we get a slick little function that saves time whenever it can—first checking for an in-memory copy of the data, then checking the cache, and finally calculating it from scratch.

Conclusion:

After putting all these together, we were able to reduce the total number of functions call to 741 and the execution time reduced to 665ms. Hence we get the ~1500% of performance boost.

Cachegrind Report Generated After Implementing Drupal Cache. – Drupal Cache: A Case Study

Want to learn how to set up RESTful Drupal Caching? Check this out. jQuery(document).ready(function() { var cta_579a5eee2ab2b = false; jQuery(document).scroll(function() { if ( typeof ga !== 'undefined' && typeof isScrolledIntoViewPort !== 'undefined' && jQuery.isFunction( isScrolledIntoViewPort) && isScrolledIntoViewPort('.cta_579a5eee2ab2b') && cta_579a5eee2ab2b == false ) { cta_579a5eee2ab2b = true; ga('send', 'event', 'cta-wide', 'view-how-to-set-up-drupal-restful-caching', 'Check this out'); } }); });

References:

This article was originally published in April 2015.

This article Drupal Cache Case Study: Boosting Performance by Abhishek Dhariwal first appeared on Axelerant - Axelerant: Expert Drupal Development, Support, & Staffing.

Categories: Elsewhere

Drupal Association News: Drupal Association's 12 Month Focus

Thu, 28/07/2016 - 19:10

At the end of May, I shared how The Drupal Association went through some hard staffing reductions so we could better align our expenses with revenue, making the organization much more sustainable. While this is a challenging transition, it allows The Association to serve our mission long into the future.

Part of this transition includes deciding where to focus our smaller team and, unfortunately, identifying work we can no longer take on. I want to give transparency into these decisions so we can best set expectations and invite the community to take over programs and work efforts we can no longer do. 

Our Focus

Our mission is to unite the community to build and promote Drupal. As I mention in my blog post, now that Drupal 8 is out, our focus is to put more energy into the “Promote Drupal” portion of the mission.

We will do this by improving the adoption journey within Drupal.org and DrupalCon. By adoption journey, I’m referring to the decision making path someone takes to chose a new content management platform for their organization. These decision makers narrow their choice by talking to industry peers and service providers, reading analyst reports, and gathering information online and at conferences. When decision makers visit Drupal.org or attend DrupalCon as part of their fact finding mission, we want to make it easier for them to see that Drupal is the right choice. We will curate content that highlights the power of Drupal solutions, amplifies success stories, and connects the decision makers with Drupal service providers and industry peers. 

It’s important that we play our role in growing the number of organizations using Drupal because gaining more Drupal customers is good for the project. They employ Drupal developers, contribute back code, and provide financial support. Plus, highlighting Drupal successes on Drupal.org and at DrupalCon creates a rallying point for our community. Let’s celebrate the many amazing ways organizations are using our community-built software. 

I do want to point out that the community will still have the great resources they need to continue building and releasing the software. We will still level up developer skills and host large sprints at DrupalCon. And, Drupal.org will continue to provide the tools and resources the community needs to release new versions.

What we can’t do right now is invest in new ways to improve the contribution journey. By contribution journey, I am referring to the path a person takes to join the community online and in person, to collaborate with others and contribute code, documentation, camp organization, etc. So right now, we are not spending resources to improve this contribution journey. However, we are studying what improvements are needed so we can invest in them again as we become financially stronger.

As we serve our mission, we will also focus on strengthening The Association’s sustainability. Naturally aligning expenses with resources is the biggest step in that direction. Now we will focus on strengthening our financial health by prioritizing revenue-generating initiatives as thoughtfully as we can. We’re starting this effort by finding out how to add value to each segment of our community so we can update our programs, making them even more attractive for people and companies to invest in.

There are many segments that make up our community from the individual to the business community of Drupal Shops, hosting companies, and technology companies. Each segment funds our mission work by buying Drupalcon tickets and sponsorships, by becoming Members and Supporting Partners, finding talent on Drupal Jobs, and buying Drupal.org digital opportunities. We will talk with members in each of these segments and see how we can make these programs better and more valuable to them.

Plus, our community has grown over the years and we need to welcome newcomers and find out how we can provide them with value that they are willing to pay for. Specifically, system integrators like Tata Consultancy Services and WIPRO and digital agencies like WPP and Digitas are now using Drupal to build ambitious digital experiences for their clients. By interviewing these organizations throughout the summer and fall, we will have a much better understanding of how to best support these kinds of organizations.

More Details

While the details I provided above are high level, The Drupal Association staff are operating from a 12 month execution plan that includes roadmaps with milestones and metrics. As we selected the work in our roadmap, we applied three imperatives:

  • Strengthen our financial health: Simply put, we will thoughtfully prioritize revenue generating opportunities that rebuild our cash reserves so we are more stable and do this in ways that add value to the community.
  • Execute well: We are picking a few areas to focus on so we are able to deliver results and make an impact. We are using good old fashion project management best practices to properly scope work and get stakeholder input to make sure we set ourselves up for success.
  • Determine strategic direction for future planning: While we are heads down working on our execution plan for the next year, we need to know where to focus next to best serve the community. The Drupal Association board and staff will spend time this year determining that strategic direction.

We want to share details of the work we will do this year, but rather than make this blog post even longer with all of that detail, we will do a blog series from the Events, Engineering, MarComm, Revenue, and Operations departments.

Each department will explain what their focus is in more detail and it will explain what work we are not able to do given our smaller size. Plus, we will highlight where community members can get involved to take on the work we can no longer do. If you are interested in volunteering your time to work on community programs, please contact me. We would love to work with you!

About Megan

As the Executive Director of The Drupal Association, I am inspired by the community values of kindness, collaboration, learning, and doing our best. The Drupal community is a bright spot in a complex world and I am personally motivated to protect its health and longevity.

Outside of work, you can find me exploring nature with my family and friends or working out with my bootcamp squad doing 100 burpees in the 100℉ / 38℃ heat of Tucson, Arizona, USA.

Categories: Elsewhere

Ben's SEO Blog: How Marketers Use Drupal’s AMP Module to Improve Google Search Rankings

Thu, 28/07/2016 - 18:00

Mobile users are not patient! More than 71% of mobile users delete emails immediately that don’t render well on a mobile device, 74% will only wait 5 seconds for a web page to load on their mobile device before abandoning the site—and nearly half won’t return.

Not only is mobile responsiveness important for your customers’ experience, it is important for Google search rankings as well. Google favors sites that are mobile-friendly and fast. In fact, they are backing the Accelerated Mobile Pages (AMP) project to help websites become optimized across all devices. Drupal’s AMP module delivers pages that comply with the AMP standard and drastically improves the performance of mobile content.

What Marketers Should Know about Drupal AMP to Sound Smart

The Accelerated Mobile Pages (AMP) project is an open source initiative that allows content to be optimized for mobile once and loaded instantly everywhere. AMP is a way to build web pages for static content that render quickly for mobile devices. It includes HTML standards, custom tags, and cache for building rich content with reliable performance and fast page loading speed.

The Drupal AMP module converts Drupal pages to comply with the AMP standard. It provides special AMP formatters for text, image, and video fields. It includes:

  • AMP Theme which produces the specific markup that the AMP HTML standard requires. It works just like any other Drupal theme with flexibility and customization on page displays and can place AMP ad blocks.
     
  • AMP PHP Library which analyzes the HTML entered by users and makes corrections, where possible, to make it compliant with AMP HTML. It automatically converts images, iframes, Tweets, Instagram, and YouTube HTML into their AMP HTML equivalents.
What Marketers REALLY Need to Know about Drupal AMP

So why should a marketer care about Drupal AMP?

AMP web pages are fast. Using AMP HTML makes the web fast with smart caching, predictable performance, and modern, beautiful mobile content. When Pinterest tested publisher AMP pages in their iOS and Android apps, they found that AMP pages loaded four times faster and used eight times less data than traditional mobile-optimized pages. Because it increases page loading speed, it is likely to provide a ranking boost. While AMP isn’t the only way to improve page speed, it is one way that Google recognizes and supports.

Advertisements are more effective. Businesses using AMP ads are seeing greater revenue. According to ampproject.org:

  • 80% of publishers are realizing higher viewability rates
  • 90% of publishers are driving greater engagement with higher CTRs
  • The majority of publishers are seeing higher eCPMs

Google favors AMP pages. Google began integrating AMP pages into its search engine in February. For mobile results, Google is holding the News carousel (with AMP content) above-the-fold—which means organic search results are pushed down, resulting in fewer clicks, impressions, and click-through-rate, which, in return, affects SEO rankings.

AMP pages will help improve SEO. Google has made it clear that mobile-responsiveness and page speed are important for high search engine rankings. Some speculate that AMP pages will automatically get a “fast” label designation. In the future, AMP may even become a ranking signal. If you have news-type content or blogs, you can expect to see better rankings when you use the Drupal AMP module.

The Drupal AMP module is an important addition if you are looking to improve your Drupal SEO efforts. If you would like to be sure your website is following all of the latest practices for high Google rankings, check out our Drupal SEO services and give us a call at (512) 989-2945.

Why AMP is Important for the Marketerdrupal 8, drupal marketing, drupal seo, Planet Drupal
Categories: Elsewhere

Web Wash: How to Print Variables using Kint in Drupal 8

Thu, 28/07/2016 - 13:10

While developing a module or modifying a template in Drupal you'll often print variables, especially if you're in a preprocess hook.

You learn early on how to use var_dump and print_r function. But these functions can sometimes display too much information and can be hard to filter through the arrays or methods in the variable.

In Drupal 7, with the Devel module, you could use the dpm or dsm function. When used, these functions will print variables at the top of the page or in the message area using Krumo.

Now in Drupal 8, Devel has adopted a new library to print variables and it's called Kint.

Categories: Elsewhere

DrupalEasy: World-wide and World-class Drupal Training

Thu, 28/07/2016 - 12:52

DrupalEasy is proud to announce another cavalcade of training events in the coming months, both online and in-person. We have numerous opportunities for you to take advantage of our proven Drupal 8 module and theme development courses as well as our flagship technical education program for those seeking comprehensive training to become developers; the 12-week Drupal Career Online.

The primary instructor for all courses is Mike Anello (ultimike), an expert instructor and experienced, practicing Drupal developer. All DrupalEasy training is taught by only expert developers to ensure that lessons are taught accurately, reflect best practices, and draw on how real-world Drupal sites are built. Mike has been active in the Drupal community for over 10 years, is a core contributor, a Drupal Association member, and one of the leaders of the Florida Drupal Users' Group.

12-Weeks of Career Training
Drupal Career Online starts on September 26, and runs every Monday and Wednesday afternoon from 1-4:30pm EDT. In addition, there is a 4-hour co-working lab, which is scheduled by the students. Class is held online using GoToMeeting, and use of webcams and microphones keeps the classes highly interactive, with instructor and student-led demos and discussions. The live online classes are supplemented with reference and lesson-guide handouts, as well as screencasts that cover each and every lesson. Each student is assisted by a community mentor to help kickstart their personal Drupal network. Our goal is to provide the most holistic, sanely-paced, best-practice-focused, long-form Drupal course in the world.

Interested in learning more about 12-week Drupal Career Online course? We are offering two free Taste of Drupal webinars that outline the entire course, set expectations, and give potential students the opportunity to ask questions. Past students have included Drupal newbies, hobbyists, and content admins looking to learn how to become full-fledged Drupal developers.

5 Options for D8 Theme and Module Development

First, if you're headed to DrupalCon Dublin, we're excited to announce that we've been selected to be one of the official training providers! We'll be offering our Introduction to Drupal 8 Module Development workshop live, and in-person. You'll learn through our stellar curriculum, and have follow-on access to all of the handouts and screencasts, with the added bonus of the synergy (yes, we just used that word) of a live classroom.

We're also offering the popular Introduction to D8 Module Development online, as well as our Introduction to D8 Theme Development workshops (https://www.drupaleasy.com/training/workshops/upcoming) multiple times in August and September. The module development workshop is 8 hours, split over two half-days, and teaches the fundamental concepts of Drupal 8 module development, including using Drupal Console as an aid for module development. Our theme development workshop is 12 hours long, split over three half-days. This super-sized workshop teaches the fundamental concepts of Drupal 8 theme development including building template files with Twig, creating custom subthemes (using Bootstrap as the base theme), and setting up a professional-level front-end development toolchain using Node.js and Gulp. Both of these courses include a live instructor, PDF handouts, and screencasts for all in-class examples.

We are committed to providing the highest quality Drupal talent development, from beginner to advanced programs; which is why our trainings work. We've taught the 12-week DCO ten times (including twice as part of Acquia U) and our 1 and 1.5 day workshops always get great reviews, just see what our graduates have to say!

Categories: Elsewhere

hussainweb.me: Efficient Drupal / PHP development on Windows using cygwin and Cmder

Thu, 28/07/2016 - 05:50
In this post, let's cover how you can set up your Windows machine for optimal Drupal development (or PHP in general). I'll be covering Windows 10 but this could very well apply for other versions.
Categories: Elsewhere

Cocomore: The central data hub of VDMA - The VDMA E-Market

Thu, 28/07/2016 - 00:00

Products of different manufacturers can be found in the E-Market of the Association for German Machinery and Plant Engineering (VDMA). We are introducing the E-Market’s special features in the sixth part of our blog series “The Central Data Hub of VDMA”. 

Categories: Elsewhere

Pages