How Drupal handles the page request: Bootstrap Process

Posted by Valuebound on November 9, 2016 at 4:32am

This is an interesting topic to get to know more about Drupal core activity. We will be looking into ‘how to use drupal echo on request?’ and ‘how many process it has gone through?’ Basically the process flow of Drupal Pipeline to interpret the steps & finally respond to the end users. Which is called as Bootstrap Process.

Having a little bit of knowledge on bootstrap could help us to develop & customized complicated area of drupal development.

Sample:
When we hit URL in browser: https://domain.com/node/234. which is a standard node page created under any of the Bundle.

Membership campaign recap from September-October 2016

Posted by Drupal Association News on November 7, 2016 at 10:48pm
Thanks to all who helped

Many people contribute to our membership campaigns and the recent campaign is no different. Thanks to Andrey, Ricardo, Martha, Ivo, and Tom, for sharing your stories. To everyone who joined or renewed, thank you for your support. And, to our members and supporters who answered the call to share our message, thank you too.

You not only help the community by growing our membership, you give us motivation too.

Focus on grants

Members fund our Community Cultivation Grants program. The grants help grow communities and build local relationships for Drupal. This connection made the grants program an appropriate focus for a membership campaign.

This campaign was based on an idea: you feel more connected within the Drupal community when you receive a grant. Participants told their stories because this idea resonated with them. We shared their stories about feeling connected and how the member-funded grant inspired them to make a local impact for Drupal.

Results

We didn't meet the specific goals of 265 new members and $10,918 in revenue. New member growth did not happen to the degree we wanted for this campaign. We got to 45% of goal for number of new members who joined. Our revenue from the new members made it to 73% of our goal for funds raised. However, this is accounting for all new membership in the time period, and not specifically attribution to the campaign itself.

The breakdown went like this:

  • 120 signups by new members (100 Individual Members/ 20 Organization Members)
  • $8,050 revenue raised ($3730 Individual Members/ $4330 Organization Members)

For more details, see the data here.

We had three other concurrent places for sign ups. Our main ADO page, DrupalCon Dublin registration, and a page for DrupalCamp Atlanta were available. Thanks Eric, Dave, Shellie, and the whole Atlanta team for the pilot run.

During the 52-day period, 520 members joined or renewed and we raised $35,348 in total revenue. So if the goals I had set were for new, renewing, and reactivated members, we'd have been successful. Call this a good lesson in goal setting!

The first landing page on drupal.org

We had a team effort to create a well-designed landing page for this campaign. We used new design tools to create the first landing page for membership on drupal.org.  We'll use the tools again to add visual interest to our campaigns and we'll continue testing to find what works and what doesn't.

Landing page header with grey backgroundsecond section of landing page with Ricardo story and photo

More testing is needed

In our last campaign, the landing page on assoc.drupal.org had 16K pageviews. This campaign had only 25% of that traffic. This disproved the hypothesis that drupal.org would bring more traffic to a membership landing page.

We can see the banner launch and takedown had an impact on page traffic based on the data below. The hill showing on the graph shows the period we ran the banner (September 9-17). However, when we reintroduced the banner on September 28 through October 29, we saw no significant bump in traffic.

Google analytics show a single traffic bump during first run of the banner only
Traffic was 25% of the previous campaign landing page.

Social sharing makes a difference

Traffic spikes occurred around days we emailed to ask members to share the campaign. Not only do we see engagement from members, but there were spikes in membership sign-ups too.

Google analytics graph shows traffic bumps

Membership sales spike around the time of traffic bumps

We used a story-based approach

I used a storymapping exercise to think through this campaign concept to ensure we were telling a story that left readers satisfied. A story moves along a bell curve from exposition, to problem, to rising action, crisis, resolution, and falling action before the end. I'll try this again for the next campaign. The story-based approach helps to get our narratives into the bigger world and people are left with something they can remember and share.

Coming next

We are taking a deep look at how the drupal.org engineering team has made an impact in the community for our next campaign. We begin with the premise that the work the team does has helped increase the velocity of the innovation of Drupal. The team reduces the friction in the contribution journey and by doing so, we all benefit from their work. More on this to come on drupal.org in a few months.

Personal blog tags: Membership

Cracking the Shell at BADCamp

Posted by Mediacurrent on November 7, 2016 at 9:26pm
Illustration of Drupal logo on a blackboard

On October twenty-third I had the pleasure of speaking at BADCamp X, the tenth Bay Area Drupal Camp in Berkeley California. BADCamp is my favorite Drupal event not only because I can drive to it, but also because of the great people and quality of the camp, I never miss it.

Using Display Suite in Drupal 8: How to Use Display Suite Fields

Posted by Web Wash on November 7, 2016 at 9:00pm
In the previous tutorial, you learnt how to customize content pages by using a Display Suite layout. Today, I want to show you how to use Display Suite fields. Display Suite fields shouldn’t be confused with the standard field system. The best way to think of a field in Display Suite is as just a fancy formatter. The field will only render content. You can’t use it to store values or define a widget like you can with the standard field system. You’ve already seen this fields in action. If you select a layout you’ll notice a bunch of new fields appear. These are Display Suite fields which are implemented by the module. A field can be created in two fields: in code or through the Display Suite user interface (UI). Today we’ll look at how to create fields using the Display Suite UI. In a future tutorial, you’ll learn how to implement a field in code.

Migrating my blog from Drupal 6 to 8

Posted by Kris Vanderwater on November 7, 2016 at 7:52pm
Migrating my blog from Drupal 6 to 8 Kris Vanderwater 7 November 2016

Drupal 8 has been out for over a year at this point. I worked extensively on helping to improve portions of core during the Drupal 8 cycle, but maintaining your own site is radically different from trying to develop the platform that site(s) will reside upon. Upgrading my blog is especially exciting for me because I was still on Drupal 6. Getting to jump directly from Drupal 6 to Drupal 8 is a pretty big win and the fact that Drupal 8 supports this out of the box was amazing. Now granted this is just my blog, it's not even 100 nodes, but still...

Meet Paul Johnson, the face behind @drupal, #celebr8d8, and more

Posted by Acquia Developer Center Blog on November 7, 2016 at 5:51pm
Drupal social media lead, Paul Johnson, and Jeffrey A. "jam" McGuire talk Drupal social media, community, and more.

I sat down with Drupal Social Media Lead, Paul Johnson at Drupal Camp London 2016, a few weeks after DrupalCon Asia in Mumbai. Paul runs the official community social media accounts on Twitter and elsewhere. I feel Paul is a kindred soul, since he and I both love highlighting and celebrating the Drupal community's stories and achievements.

The @drupal Twitter account alone has more than 65 thousand followers and Paul uses his powers for good. "I get so much satisfaction out of it. There's nothing I like more than to hear that it's made a difference to somebody, or I've heard something and made other people aware of it privately and that's maybe solved a problem. Social media is used for quite a lot of things ... It's not just a marketing channel."

Our conversation

Follow Drupal on social media!

Here are the accounts Paul runs:

Here is the Drupal Association Social Media Request Form that Paul mentions during our conversation.

And here is the full, official Drupal social media directory.

Mentioned in the conversation
Celebrate D8!

Images used in the podcast video
Podcast series: Drupal 8Skill Level: BeginnerIntermediateAdvanced

Using Configuration Management and Git in Drupal 8

Posted by Evolving Web on November 7, 2016 at 2:55pm
How to export and track Drupal 8 configuration on Git

Drupal 8 Configuration Managment (CM) is a "killer feature" for a web Content Management System (CMS). When setting up a Drupal site, we spend a lot of time on site configuration: Roles, Permissions, Content Types, Menus, Vocabularies, etc. In most CMS's, all these changes are stored in their databases, making it hard to deploy, track, reuse and rollback important changes.

read more

Dropcast: Episode 25: The Good, The BadCamp and The Ugly

Posted by Mediacurrent on November 7, 2016 at 1:48pm

Recorded October 26th

This episode we are all back in the ‘studio’ to talk about the great time most of us had at BADCamp the weekend prior. Ryan didn’t go so he won’t have much to say, but he will of course have his Final Bell, along with some Blog Mentions, Drupal News and a variety of failed humor.

Habitat for Humanity launches new website in Drupal 8

Posted by Mediacurrent on November 7, 2016 at 1:38pm
Mediacurrent launches new Drupal 8 site for Habitat for Humanity

Habitat for Humanity wanted to explore new ways to further highlight volunteer opportunities, broaden international reach, increase donations, and build an engaging desktop and mobile presence through its website, Habitat.org. Habitat undertook a new digital and content strategy to better help users find the information they are looking for to achieve these goals. The new Habitat.org recently was launched using Drupal 8 as its content management system.

Things I Learned from the DrupalTwig Slack: Volume 2

Posted by Annertech on November 7, 2016 at 1:15pm
Things I Learned from the DrupalTwig Slack: Volume 2

Welcome to Volume 2 of my adventures in learnings from the DrupalTwig Slack, a resource that continues to be the best source of (frontend) knowledge for Drupal. Again, if you haven't joined, do so. (Volume 1 is here.)

And without further ado, here's some things I've learned (or helped others to learn):

Drupalcon - My First Encounter

Posted by Ixis.co.uk - Thoughts on November 7, 2016 at 11:05am

 

 

 

Palantir.net's Guide to Digital Governance: Organization

Posted by Palantir on November 7, 2016 at 3:09am
Palantir.net's Guide to Digital Governance: Organization Palantir.net's Guide to Digital Governance brandt Sun, 11/06/2016 - 21:09 Scott DiPerna Nov 7, 2016Illustrated collage of website icons

This is the seventh installment of Palantir.net’s Guide to Digital Governance, a comprehensive guide intended to help get you started when developing a governance plan for your institution’s digital communications.

In this post we will cover...
  • Why organization is important to site visitors
  • Questions you should consider regarding your main site and subsites
  • Some tools for creating good test-driven information architecture

We want to make your project a success.

Let's Chat.

A website’s organization is one of the most important factors in determining how effective and useful the site is for its visitors. Sites that are well-organized, in a manner that visitors intuitively understand, will be more effective and useful than those which aren’t. Therefore, it is important to define for your institution who will have the authority and responsibility to determine your website’s organization, and how they will make those decisions.

Here are some questions to consider with regard to main websites and subsites within the main site.

Main Website

  • Who determines the overall organizational hierarchy of the main website?
  • Who determines the top-level menu options? How are those decided?
  • Who determines the subsequent levels of navigation, order, labeling, etc.? How are those established?
  • Who determines other navigational structures, such as utility menus, topic-based menus, etc.?
  • Are there site-wide taxonomies to be maintained? Who determines and edits those?
  • What role does usage data, analytics, and user-testing play in those decisions?
  • Are there limits to the size, quantity, or depth of navigation?
  • Are there any site-wide standards for how navigation and sub-navigation are displayed?
  • Is there a process for addressing concerns or proposed changes to the site’s organization?
  • Who has the ability to make changes to the website’s overall structure?
  • Is there a review or approval process that needs to be followed?

Subsites

  • Who determines the organizations of sub-sites within the larger website?
  • Are there any guidelines or services for website owners who must create their own site organization?
  • Are there limits to the size, quantity, or depth of navigation?
  • Are there any site-wide standards for how navigation and sub-navigation are displayed?
  • Are there any site-wide standards for where navigation and sub-navigation are displayed on sub-site pages?
  • Are there rules for the labeling of navigation?
  • Are there sub-site specific taxonomies? How are those determined and edited? Must they conform to any site-wide standards or rules?

These questions cover only the definition of responsibility surrounding website organization, which presumes that you have good information architecture in place already. For more information on creating good, test-driven information architecture, Optimal Workshop has both advice and tools for conducting your own card sorts (OptimalSort) and menu “tree” tests (TreeJack). We use these tools regularly in our work.

 

This post is part of a larger series of posts, which make up a Guide to Digital Governance Planning. The sections follow a specific order intended to help you start at a high-level of thinking and then focus on greater and greater levels of detail. The sections of the guide are as follows:

  1. Starting at the 10,000ft View – Define the digital ecosystem your governance planning will encompass.
  2. Properties and Platforms – Define all the sites, applications and tools that live in your digital ecosystem.
  3. Ownership – Consider who ultimately owns and is responsible for each site, application and tool.
  4. Intended Use – Establish the fundamental purpose for the use of each site, application and tool.
  5. Roles and Permissions – Define who should be able to do what in each system.
  6. Content – Understand how ownership and permissions should apply to content.
  7. Organization – Establish how the content in your digital properties should be organized and structured.
  8. URLs – Define how URL patterns should be structured in your websites.
  9. Design – Determine who owns and is responsible for the many aspects design plays in digital communications and properties.
  10. Personal Websites – Consider the relationship your organization should have with personal websites of members of your organization.
  11. Private Websites, Intranets and Portals – Determine the policies that should govern site which are not available to the public.
  12. Web-Based Applications – Consider use and ownership of web-based tools and applications.
  13. E-Commerce – Determine the role of e-commerce in your website.
  14. Broadcast Email – Establish guidelines for the use of broadcast email to constituents and customers.
  15. Social Media – Set standards for the establishment and use of social media tools within the organization.
  16. Digital Communications Governance – Keep the guidelines you create updated and relevant.

Stay connected with the latest news on web strategy, design, and development.

Sign up for our newsletter.

Building a layout system for Paragraphs

Posted by PreviousNext on November 6, 2016 at 10:37pm

A recent Drupal 8 project of ours had some great requirements around it’s landing pages, aimed at reusing existing components in a range of layouts and combinations. Paragraphs quickly established itself as the site-building tool of choice and Flexbox always wins for me as the CSS grid/layout approach, so we looked at how the two could be combined to give the client the flexibility they needed, without over-complicating the editor experience.

Writing Drupal 8 Code for Drupal 7

Posted by OhTheHugeManatee on November 5, 2016 at 11:05am

A year ago I proposed a session for Drupalcon Mumbai and Drupalcon New Orleans, called “The best of both worlds”. It promised to show attendees how to write Drupal 8 code for Drupal 7 sites. I never ended up giving the session, but this week I got an email asking for more information. So in case it ever comes up again, here’s my own collection of resources on the subject.

The big improvement that’s hard for D7 developers to get used to is injected services. The service container module makes that possible in D7. The brilliant FabianX wrote it to make his life easier in writing render cache, and his is always a good example to follow! This module creates a service container for D7, which you use just like the container in D8. You can write independent, OO code that is unit testable, with service dependencies declared in a YAML file. Note that you will also need the registry autoload module to get PS4 namespaced autoloading!

I just mentioned unit testable code as a benefit of the service container. To be honest this is a little tricksy in Drupal 7. For my own custom work I tend to isolate the test environment from the rest of Drupal, so I don’t have to deal with everything else. Again, I followed Fabian’s example there by looking at how render cache does it’s tests. If you do want better integration, there is a good lullabot post that talks about (more) proper PHPUnit integration. https://www.lullabot.com/articles/write-unit-tests-for-your-drupal-7-code-part-1 .

Next on my list is Composer-managed dependencies. The Acquia developer blog has a great post about using Composer Manager for this in D7. This is a huge win for a lot of custom modules, and very easy.

Last is plugins. The rest of this list is in no particular order, but I left plugins for last because I think this isn’t actually necessary in D7. Personally I use modules’ own hooks and just autoload independent classes. You might consider using plugins instead if you’re going to write several plugins for the same module. In any case, Lee Rowlands has the go-to blog post about this.

All together, you can combine these approaches to write code for D7 with the biggest Dx features of D8: service injection, phpunit testing, composer libraries, and plugins. Note that each of these blog posts assumes different workarounds for all the other functionalities… but they should help you get an understanding of how to use that particular Dx improvement in 7.

When I wrote that session proposal, I thought of this as a good way for D7 developers to learn D8 practices gradually, one at a time. I no longer think that’s true. Mostly, there are so few working examples of D7 code using these practices, that it’s quite hard to get your stuff working. This is particularly hard when you’re just learning about the concept in the first place! Personally, I could mess around with this stuff and make my life harder with it in D7. But I couldn’t really get the best advantage out of them until I had better examples. My best learning aids were the examples in D8 core, and the code scaffolding available through Drush and Drupal console.

But now that I’m comfortable with the concepts… I would absolutely use these approaches in D7 work. You know, if I’m FORCED to work in the old system. :)

One last aside here: it is easy to fall into the mindset that Drupal 8 practices are better just because they’re newer. This is simply not true. These practices are not handed down from heaven, after all! When you have the rest of the D8 architecture in place, certain kinds of code tasks are much easier. That’s why we like developing for it so much more. But other (less common, IMO) tasks are harder. And doing any of this in D7 means you have to put the architecture in place, too. That’s a lot of time, and it’s only worthwhile if you’re going to use the particular strengths of these practices.

So if it looks like one of these D8 practices will make your life easier for a particular task in D7, then by all means use these approaches to get there. Composer manager has a particularly low bar – it’s so easy to use, and makes so many tasks easier, it’s a good approach to many tasks. But if I ever catch you implementing service container to get two lines of code into a form_alter, I will come to where you work and slap your hands off the keyboard.

Happy coding!

¿Cómo agregar tamaño y tipo de fuente a CKEditor?

Posted by MTech, LLC on November 4, 2016 at 6:02pm
How to add size and font family to CKEditor?

As already discussed in a previous blog post, CKEditor is a very useful module for creating and editing content. In my work editing content, I found the need to occasionally change the font size and type to avoid using css.

Here I will explain how to extend the CKEditor module using the CKEditor_font module, using composer, bower and gulp.

In our terminal, use the following command to download the most stable version of the module:

Charlotte León Fri, 11/04/2016 - 12:02

Writing "good code" is an art!

Posted by Isovera Ideas & Insights on November 4, 2016 at 3:36pm
What is "good code"? This question is very subjective and is opened to ones interpretation. I personally think "good code" is code that is: readable, efficient, and modular. These three key points all play their part in keeping your code maintainable.

Migrating Ixis.co.uk from Drupal 6 to Drupal 8

Posted by Ixis.co.uk - Thoughts on November 4, 2016 at 3:25pm

This is a summary of the process we undertook to migrate the Ixis site from Drupal 6 to Drupal 8 including some of the issues we came across.

Our Journey To Drupal 8

Posted by Ixis.co.uk - Thoughts on November 4, 2016 at 2:05pm

Our company site has usually been the testing ground for a new Drupal CMS update, starting as far back as 2004 with Drupal 4.5. As Drupal 7 launched we missed the window of opportunity to migrate our site and became caught up in the inevitable day to day client work throughout the life of Drupal 7.

 

 

Third & Grove hosts pinball at BadCamp

Posted by Third & Grove on November 3, 2016 at 4:39pm
Third & Grove hosts pinball at BadCamp antonella Thu, 11/03/2016 - 12:39

Contribution Stories: The Lightning Distribution, Supporting Faster, Better Site-building

Posted by Acquia Developer Center Blog on November 3, 2016 at 4:36pm

Drupal gets better when companies, organizations, and individuals build or fix something they need and then share it with the rest of us. Our community becomes better, stronger, and smarter when others take it upon themselves to make a positive difference contributing their knowledge, time, and energy to Drupal. Acquia is proud to play a part, alongside thousands of others, in some of the stories making tomorrow’s Drupal better than today’s. One of them is about the Lightning Drupal 8 Distribution.

Tags: acquia drupal planetlightningcontributionspeedrun

Pages

Subscribe with RSS Subscribe to Drupal.org aggregator - Planet Drupal