Subscribe to feed Planet Drupal
Drupal.org - aggregated feeds in category Planet Drupal
Bijgewerkt: 12 min 25 sec geleden

Drupal Association News: A Great Reason to Join the Drupal Association: One Month of Free Training!

di, 2014/07/08 - 10:01pm

We’ve joined forces with several Drupal training companies to convince you that there is no better time to join the Drupal Association. And if you are already a member, here is a great reason to encourage your Drupal friends to join: free training!

This July 24th, look for announcements on:

Twitter @DrupalAssoc

IRC channels #drupal-association, #drupal, and #drupal-watercooler.

Sign up as one of the first 25 members to join after each announcement and you will receive a coupon for free online training from one of the participating companies. We’ve ensured all the trainers will provide you with training whether you are a novice or advanced learner. You will be supporting Drupal Association programs as a new member and you will learn new skills. Mark you calendar for July 24th.

Thanks to BuildAModule, Drupalize.Me, lynda.com, ModulesUnraveled, and OSTraining for generously providing training for this event.

Personal blog tags: Membership
Categorieën:

Blink Reaction: Drupal Coding Standards

di, 2014/07/08 - 8:27pm

When it comes to Drupal coding standards rules were NOT made to be broken. In this article Matt Korostoff explains the value of coding standards, specifically in Drupal.

Categorieën:

Mediacurrent: Meeting Marketing Challenges with Automation and Drupal

di, 2014/07/08 - 8:06pm

Often marketing's biggest challenges are long sales cycles, complex decision-making processes, and multiple stakeholders. There is increasing pressure on marketing professionals to find the most qualified prospects and build relationships with them before the lead is passed to sales.

Categorieën:

Acquia: Conference Organizing Distribution (COD) 7 Beta2

di, 2014/07/08 - 8:01pm
COD Beta 2

Over the Holiday weekend, over 25 tickets were solved coming out of the Alpha6 and Beta1 release of COD. Late Monday night, COD Beta2 was released! This release includes fixes to the session submission system, specifically where time-slots and tracks weren't being properly saved in some conditions. We also made changes to the administration menu paths to de-couple them from the node and be less confusing. You can see the full release notes here: https://www.drupal.org/node/2299327

Categorieën:

kevinquillen.com: Media Migration Tip in Drupal

di, 2014/07/08 - 8:00pm

If you’re doing a migration of media files, you most likely will be working with a list of URLs. Other times, you will have a local file system from which to pull in media. When working with just a list of URLs though, you’re somewhat working with a ‘blind’ import.

Categorieën:

Open Source Training: The State of Drupal 8: July 2014

di, 2014/07/08 - 7:30pm

It's been 8 months since our last overview of Drupal 8.

A good number of OSTraining members went to DrupalCon Austin or to DrupalCamps this summer and came back with questions about Drupal 8.

So, here's an update on Drupal 8 and when you can plan on using it.

Categorieën:

Greg Knaddison: Drupalcamp Colorado 2014 Preview: Large Scale Drupal

di, 2014/07/08 - 2:48pm

This year, Drupalcamp Colorado is taking on the topic of "Large Scale Drupal" - a phrase that was popularized by Dries Buytaert. We're taking that phrase and using it in a generic sense to help set a focus for our event.

Matthew Saunders wrote a great overview of the camp, so if you're interested and need more convincing to come, read that. This is an update on our tracks and some great sessions that have been accepted already.

Tracks and session submission requests

We're taking that theme as inspiration for our sessions which will be across 4 tracks:

  • Business and Open Source
  • DevOps
  • Commerce
  • Design and Front End
  • Development and Site Building

Today we are excited to announce the first 9 sessions that have been selected. Session Submission is still open until July 11th. We've currently got too many sessions in /Development and Site Building/ and not enough sessions in the other categories. So...if you have something to say in those other areas, please submit a session (note, you have to login first, and you should register too).

First sessions that have been accepted:

There are some sessions we know we're going to accept because they come from great presenters on popular topics that match our theme. Below are the 9 sessions we knew we could accept now.

I think you could attend just these 9 sessions and really have a great weekend of Drupal content and there are going to be dozens more. If you look at the titles and the presenters I think you'll see that there's a lot of people working on interesting problems as a result of dealing with "large scale" sites built in Drupal.

Categorieën:

DrupalCon Amsterdam: Session selection for DrupalCon from the inside-out

di, 2014/07/08 - 8:14am

Like almost everything in the Drupal world, DrupalCon is, in part, a labor of passionate enthusiasts who donate their time. Every year, the Drupal Association appoints a program team who work together to select sessions for upcoming DrupalCons. The program team is unique to every conference, but volunteers of past cons (called “globals”) are asked to join the committee to assist the newer members and pass on historical knowledge.

DrupalCon sessions are divided into tracks, which generally stay the same, but have evolved over the years. For Amsterdam, we have:

  • Coding and Development
  • Core Conversations
  • DevOps
  • Drupal Business
  • Frontend
  • Site Building

For Amsterdam, we’ve added two new mini tracks; Case Studies and PHP. We’ve also added Business Showcase (formerly Day Stage) and the Community track is now a full day summit on the Monday.

Each track has a Chair (or Lead) - someone who takes the lead on setting the theme of the track, generating interest and inviting speakers, and selecting sessions. Last year, I was the Track Chair for the Coding and Development track for DrupalCon Prague. This year, I was lucky enough to be asked to be a “Global” (or co-chair) for the Coding and Development track for Amsterdam. This means that I was there as support for the new track chair, Pedro Cambra (pcambra). I was helped by veterans of previous DrupalCons, Jason Yee (jyee) and Larry Garfield (Crell).

Pedro and team have done a fantastic job of canvassing for speakers and helping people with their session proposals.

There’s a lot of elements to session selection. We need to make sure that sessions are of value to a wide audience. The presenters must be engaging speakers who can interest a large crowd of attendees. We try as hard as we can to bring in new (to DrupalCon) speakers, and speakers who bring something from outside of the Drupal sphere. We want to make sure that the diversity of the community is represented and encouraged. And we need to work across track teams to ensure that one speaker is not speaking in several tracks; both for the sake of their stress and sanity in preparing the talks and to ensure that everyone who applied has the best chance of speaking. Finally, we need to make sure that sessions fit both the theme of the track and of the conference.

As you can imagine, balancing all of this can be quite challenging!

Each track team ranks their sessions as makes sense to the team. In the Coding and Development track, Pedro, Jason, and I rated each session and speaker out of 5, paying special attention to the quality and relevancy of the submission and the speaker's rapport with their audience. If we're lucky, we've seen the speaker present before, but if not, we can view any available slide decks or recordings to get a sense for their presenting ability. This is why it’s very important for prospective speakers to include speaking history in their session proposal. A speaker doesn't need to have sessions online to be selected - it just makes our job easier. We refined the 128 submissions in the Coding and Development track down to a top rated 25 or so sessions, which were then filtered to make sure that there is no overlap and that the speaker wasn’t speaking in another track.

Being so involved in the planning of content for DrupalCon is an enlightening experience. The breadth of knowledge, experience, and creativity in the Drupal community is quite literally overwhelming. The 510 sessions submitted this year illustrate just how passionate the community is.

There’s no better way to get a sense of the Drupal zeitgeist than to pore over hundreds of sessions. This discovery exposes us all to new technologies, projects, and methodologies, and at least for me has made me aware of people in the community that are doing fascinating, challenging, and important work - people I might never have found otherwise. There’s also a degree of humility to be observed when considering the diverse and very well informed views of your fellow content team members.

After two weeks of review, ranking, and deliberation across timezones, I present to you with the 90+ DrupalCon Amsterdam selected sessions.

View selected sessions

If you are interested in becoming involved in DrupalCon planning in the future, let the DA know. It's very rewarding, and the team dinner during the conference just caps it all off!

--
Cameron Tod (cam8001)
DrupalCon Amsterdam Coding and Development Co-Chair

Categorieën:

Kristian Polso: Fix Drupal Registry with Registry Rebuild

di, 2014/07/08 - 6:45am
It has happened to all of us. You mistakenly remove a module directory or migrate your site and forget to include some necessary modules. This causes your Drupal site only to show the WSOD and perhaps the following error:
Categorieën:

Drupal.org Featured Case Studies: Newstica

ma, 2014/07/07 - 10:51pm
Completed Drupal site or project URL: http://www.newstica.com

Newstica.com is an intelligent news reading application operated by a Canadian company. The website collects hundreds of news stories daily and creates a unique set of articles on each page view with the use of sophisticated algorithms that operate off individual users' preferences.

Key modules/theme/distribution used: PanelsViewsZenFeedsFeeds XPath ParserTeam members: highvrahos
Categorieën:

Mediacurrent: Using Sass Breakpoints Effectively

ma, 2014/07/07 - 10:02pm

There have been plenty of blog posts touting the reasons to use Sass as a CSS preprocessor, and if you've been doing responsive design for a while, you're probably already using the Breakpoint gem with Sass. But there are many ways to use both of these tools, so let's talk about using breakpoints effectively. 

Start with the small screen first, then expand until it looks like sh*t. Time for a breakpoint!
- Stephen Hay.

Categorieën:

Chuva Inc.: Entity Metathing what? -- A very brief introduction on entity_metadata_wrappers

ma, 2014/07/07 - 9:57pm

Are you familiar with entity_metadata_wrappers? If you’re not, oh boy, you should be!

Entity Metadata Wrapper is the right way - and, after you get the grip of it, the easiest way - for you to manipulate anything with a field when coding your module. Sure, since the old days of CCK we are used with dealing with our fields in our nodes. Except they are a little messy.

Cleaner code!

Instead of doing this:

<?php
$first_name = '';
if (!empty($node->field_first_name)) {
  $name = $node->field_first_name[LANGUAGE_NONE][0]['value'];
}
?>

Let’s condense that, shall we?

<?php
$node_wrapper = entity_metadata_wrapper('node', $node);
$first_name = $node_wrapper->field_first_name->value();
?>

Sure, the name “metadata wrapper” may be a little intimidating, but it does shortens your code and makes it clearer. Oh, and if you have an entity reference field, or a file field, you can just do this:

<?php
$image = $node_wrapper->field_image->value();
?>

And the $referenced_node is already a loaded file object, not a useless “fid”.

Wrappers for dealing with entity reference: cleaner-er code!

Suppose you have two node types: Employee and Department. There is an Entity reference field from "Employee" to "Department" and on the "Department" node you have a field called "field_dept_phone" that stores the phone number. (for simplicity, I'm assuming that field_employee_dept is required).

If you have the $employee node, how to fetch the phone number?

Hard way:

<?php
$phone = '';
$department = node_load($employee->field_employee_dept[LANGUAGE_NONE][0]['target_id']);
if ($department && !empty($department->field_dept_phone[LANGUAGE_NONE][0]['value'])) {
  $phone = $department->field_dept_phone[LANGUAGE_NONE][0]['value'];
}
?>

And the wrapper way:

<?php
$wrapper = entity_metadata_wrapper('node', $employee);
$phone = $wrapper->field_employee_dept->field_dept_phone->value();
?>

 

Now what?

Well, this post is not intended to be a full entity metadata wrapper course, so, if I have convinced you, take 15 minutes of your day and do this:

  1. Download Entity API from http://drupal.org/project/entity
  2. Read this, now: https://drupal.org/node/1021556
  3. Your life quality will improve, proportionally to your code quality!

Photo credits: https://www.flickr.com/photos/81564552@N00/3208209972/

PHPentityentity_metadata_wrappersdrupal planet
Categorieën:

Drupal governance announcements: Shared Values and the Drupal Community

ma, 2014/07/07 - 9:50pm

Dries recently wrote a blog post about the challenges of fostering diversity and inclusivity in the Drupal community. This is the latest installment of a conversation that’s been going on for years.

In 2012, a group of Drupal community members worked together to draft a Code of Conduct that could be used to supplement the Drupal community’s Code of Conduct at DrupalCon and other in-person events.

This effort prompted a large (and sometimes heated) conversation that involved people from all corners of the Drupal community. This conversation was a difficult one, and many of us disagreed about many different things, but ultimately, we all agreed on several general principles:

We are a group of diverse people from a wide variety of ethnic, cultural, and religious backgrounds, and we embrace that.
Making all attendees feel welcome and included at DrupalCon is everyone’s job.
We treat each other with dignity and respect.
We take responsibility for our words and actions and the impact that they may have on others.

These principles informed the DrupalCon Code of Conduct, which was ratified by the Drupal Association in the summer of 2012 and has been used at every DrupalCon since.

At the last few DrupalCons, there have been a number of reported incidents, including groping, sexual harassment, physical assault, inappropriate comments made about female speakers, and more. While we are grateful that these incidents are being reported, even a single incident is too many.

In early 2013, the Community Working Group was chartered by Dries to uphold the Drupal Code of Conduct and to maintain a friendly and welcoming community for the Drupal project.

As a community, it’s important that we always keep our shared principles and values in mind when interacting with others, whether that be in person at DrupalCon, in the issue queues on Drupal.org, on IRC, or via social media. As the DrupalCon Code of Conduct states, the purpose is not to restrict the diversity of ideas and expression, but instead to ensure that there is a place for everyone in the Drupal community who agrees to abide by these basic principles.

Even when everyone has the best intentions, however, it’s inevitable that conflicts will occur. To ensure that these are addressed in a manner consistent with our shared values, the Community Working Group has worked with the community to develop a conflict resolution policy that lays out the process for addressing disagreements. This policy was developed by participants in the Community Summits at DrupalCons Prague and Austin, with additional review on Drupal.org.

This policy seeks to first and foremost empower individuals to resolve issues between themselves when possible, asking for help when needed, and only after that fails to escalate further. This approach gives people more control over their dispute and is the most likely to result in a positive outcome for everyone involved.

For matters that cannot or should not be resolved in any other way, the Community Working Group is available as a point of escalation. Incidents can be confidentially reported to the Community Working Group using the Incident Report Form. If the issue falls within the purview of the Community Working Group’s jurisdiction, we will then work with the involved individuals to find a remedy.

In her DrupalCon Austin keynote Erynn Petersen talked about how diversity is a key component of a healthy and productive community. While the Drupal community is one of the most diverse and welcoming communities in open source, we still have room for improvement. If you’re interested in joining us in that effort, let us know by responding to our call for volunteers or by participating in a Community Summit at an upcoming DrupalCon.

Actively supporting and maintaining a welcoming environment is something that every one of us in the Drupal community needs to be a part of, and it’s essential to the long-term health and growth of the project and community that we all love so much.

Categorieën:

Károly Négyesi: Prejudices

ma, 2014/07/07 - 12:23pm

At Szeged, I asked a female Drupal contributor in Hungarian (I'm glad she did not understand) what was up with the coffee maker, because I readily presumed she was staff.
I saw one of the female geek role models at Austin with her baby. I got confused for a second, because apparently I think the übergeek and mother roles can't overlap.
On IRC, I almost said "Wow, that's impressive from a girl.".
I do not know how I can avoid these thoughts, but I am aware of them, I am bothered by them, and I try not to act on them. I also try to point out to fellow Drupalers when they act on their thoughts that these are not appropriate. I'm not sure what else I can do.
If you have good ideas on overcoming prejudice, please share!

Categorieën:

DrupalCon Amsterdam: Convince Your Boss to Send You to DrupalCon Amsterdam

ma, 2014/07/07 - 9:00am

Attending DrupalCon is a great investment in skills, professional development and relationships. And it's also a lot of fun!

Here is your chance to demonstrate the value of attending DrupalCon to your employer.

We’ve developed a set of materials to help you demonstrate the value of attending DrupalCon to your employer.

Why Attend DrupalCon?
  • Learn the latest technology and grow your Drupal skills
  • Build a stronger network in the community
  • Collaborate and share your knowledge with others

Resources About DrupalCon - includes program summary, demographics, budget worksheet PDF Letter to your employer template Word or GoogleDoc Trip report template PDF Request a Certificate of Attendance Available following the conference.
Categorieën:

Károly Négyesi: Easier configuration development for Drupal 8

ma, 2014/07/07 - 12:56am

With config_devel, when you are editing a migration, you can just enter the name of the file being edited at admin/config/config_devel and on every request the module will check for changes and import the file into the active storage. The other direction works as well: say you are working on a contrib module and have a view. Provide the path of the file (this time in the auto export box) and on every change Drupal will automatically export. Once satisfied, just commit. Or perhaps you just want to follow what's in a config file as it's being edited -- provide sites/default/files/some.config.name.yml and it'll be right there on every save.

Both import and export are doable manually with the config module core provides. But I think the automatism makes life easier and I hope the module will be popular among D8 developers. Finally, let me thank beejeebus for cooking up the module originally and handing it over to me despite he knew I will rewrite it from the ground up.

Categorieën:

SitePoint PHP Drupal: The Drupal 8 version of EntityFieldQuery

za, 2014/07/05 - 6:00pm

Even though Drupal 7 core fell short of a proper way of handling its brand new entity system (we currently rely on the great Entity module for that), it did give us EntityFieldQuery. For those of you who don’t know, EntityFieldQuery is a very powerful querying class used to search Drupal entities programatically (nodes, users, etc).

It provides a number of methods that make it easy to query entities based on conditions such as field values or class properties. If you don’t know how it works, feel free to check out this documentation page or this great tutorial on the subject.

In this article I am going to talk about what we have in Drupal 8 for querying entities. There is no more EntityFieldQuery, but there’s an entity.query service that will instantiate a query object for a given entity type (and that implements the \Drupal\Core\Entity\Query\QueryInterface). We can access this service statically through the \Drupal namespace or using dependency injection.

First up, we’ll look at querying node entities and then we’ll see how to load them. The same techniques will work with other content entities as well (users, comments etc), but also with configuration entities, and that’s really cool.

The entity query service

As mentioned, there are two ways we can access the entity.query service that we use for querying entities. Statically, we can do this:

Continue reading %The Drupal 8 version of EntityFieldQuery%

Categorieën:

flink: Earl's chicken

za, 2014/07/05 - 11:27am

Here’s a little history I pieced together about, Drupal, the Views module and the human condition.

It must have been 4 years or so ago that the new Field API for D7 crystallises, requiring modifications to Views. So someone adds lines of code to make this happen. They don’t think much about those lines or the performance impact these may have. They don’t put a “hook” in to allow developers to alter the behaviour of those lines. Why would they? It’s a pretty trivial change. In fact it never crosses their minds to add the CPU cycles spent by that code to the view's performance stats.

4 years go by.

Nobody is aware that if you piled up the seconds collectively wasted in that code across all Drupal sites using Views over a period of 4 years, it would amount to like,…. like higher than the Eiffel tower. So to speak…

Until a couple of weeks ago some RdeBoer employs XHProf to find out why a client’s site is a little sluggish. And he finds those lines of code. And although there’s no hook as such to bypass those lines, he finds a way without hacking the Views module to neutralise those lines, offering a simple switch on the UI. Like a Turbo button, it makes selected Views run faster.

The customer is delighted. Now their site is finally speedy enough to go live! Another client quotes the results as “amazing”.

Encouraged by the happy customers RdeBoer tarts up his module to share it with the Drupal community. Now everyone can enjoy similar speed improvements. He writes a little blog post about it.

In a comment to that post @merlinofchaos confirms that those lines were indeed added with the introduction of the Field API. And that not showing how much time is spent in those lines is an oversight.

RdeBoer smiles. Takes a sip of his wine. 4 years... Isn’t life funny?

@merlinofchase goes back to the garden and throws another shrimp on the barbie. Metaphorically speaking. Might have been chicken. Have you seen Earl’s chicken? The photo above that’s his chicken. He cooked that last week. I would love a bit of that chicken. With its juices dripped over the veggies. Yummo!

Meanwhile @someViewsDude has a not-so-constructive go via Twitter, email and the module’s issue queue ...

My friend and colleague Susan concludes her writings with a beautiful phrase: “Breathe and do the next right thing”.

Maybe we can all sit around Earl's barbie. Try his chicken. It looks delish.

File under: Planet Drupal
Categorieën: