Skip to Content

Drupal

Acquia: Lonestar PHP 2014

Planet Drupal - 5 May 2014 - 8:06am

I had the privilege of attending Lonestar PHP 2014 in Addison, Texas a couple weekends ago. It was an amazing event full of amazing people and valuable sessions. For those of you who know me, I typically spend a lot of time in the hallways just talking with and meeting new people, however I did attempt to attend some sessions and the calibre of sessions being presented was ridiculously high. The PHP community that attends these events is really obviously close knit. It was a bit like going to a large regional Drupal event.

Categories: Drupal

Marek Sotak: Drupal training in your area organised by you - travelling and training - 2014

Planet Drupal - 5 May 2014 - 7:58am

The title says it all. I love to travel, meet new people, experience local community and share my knowledge. This is edition 2014.
Pinpoint yourself onto the map if you are interested in any of the trainings, doesn't matter if you are an individual or a company.
If you can host me (couch), show me around your city, and find the venue for training, you will get discounts.

Categories: Drupal

Drupal Association News: "Danke" from Frankfurt!

Planet Drupal - 5 May 2014 - 6:51am

This post was written by Manuela Meier, a member of the organizational team of DrupalCamp Frankfurt 2014, and Senior Manager Software Development at Cocomore AG/Frankfurt.

---

DrupalCamp Frankfurt 2014 took place on the 12th & 13th of April atGoethe University in Frankfurt Bockenheim. Organized by volunteers of the Drupal community Rhein-Main and run under the roof of the Drupal e.V., it was the first Drupal camp in Frankfurt, which meant there was lots of work to do in advance. We, as the organizers, were really nervous and excited, and hoped that everything would run as planned.

We had about 200 visitors, and our plan to make it an international camp worked out quite well: The attendees came from 16 countries all over Europe and even from overseas. We had 35 sessions in 3 to 4 parallel tracks, and the majority of these sessions were held in English. The number of session proposals was really more than enough, and we had a hard time to decide which ones to  use and which ones to drop.

We covered a wide variety of topics, so that everyone from devs to themers to project managers to devops could find a talk that was interesting for her or him most of the time. On Sunday, we even had a fourth room with a track for Drupal novices. There were two beginner sessions, handling basic topics like setting up a Drupal, choosing modules etc. These sessions were visited really well, so thanks to Ronald and Mark for bringing new people closer to Drupal!

We also had keynotes on Saturday and on Sunday. Saturday started with MortenDK presenting “Twig - all the new awesome” and as expected it was a success. People liked it and we're really happy that Morten followed our invitation to our camp. The keynote on Sunday was by Nils Adermann, founder of Composer, and he talked about "PHP Reinvented – How Composer helped shape the new way of writing PHP." This session also was a great choice and a good example that Drupal Camps are not only about Drupal, but also about interesting or innovative topics that are related and relevant. In this context, many thanks to the Drupal Association whose funding also made it possible to invite these great speakers!

Sprinting took place throughout the weekend. On Friday we had a code sprint in the rooms of the Cocomore AG. Quite a number of people that arrived earlier in Frankfurt dropped by and discussed about how to contribute best to Drupal and its modules and it was explained how contributing to Drupal works. Some people were given their first issues on drupal.org to train contributing on real examples. On Saturday and Sunday we had a room reserved in the university for sprinting, and most of the time you could find some people there, discussing, coding and working on Drupal8.

Well, and of course, there were the socializing events. Friday evening we met with other Drupalistas at an Irish Pub for a warmup. It was a really nice evening with many well known faces as well as some new ones. Saturday evening we met for 100L of free beer at the Depot 1899 in Frankfurt, and afterwards we conquered the Clubkeller with 20-30 people. It was a long evening, with many many great people and lots of fun.

In conclusion: The weekend was awesome! As mentioned above, we were really nervous in advance, there were so many things that could have gone wrong. And in the end, we had great sponsors and supporters, 200 guests, so many sessions that we had to choose which we wanted to have, coffee machines, recording, tshirts, badges, everything in time, we had great speakers, the best weather you could imagine  and everyone had fun. It's really not too much to say that we all were relieved, happy and excited. The work paid off, and if the attendees liked it as much as we did we'd love to do it again sometime in the future. And probably the 2nd time will be easier.

As already said at other places: Thank you all a lot, you're the best!

Categories: Drupal

YesCT: Sustainable Drupal Core development? Drupal Core Gittip Team, a new funding effort.

Planet Drupal - 5 May 2014 - 2:57am

On May 2, 2014 the Drupal Core Gittip Team was somewhat quietly launched. There was a helpful quick round of questions on twitter and in IRC, and more details were added to the Drupal Core Gittip Team profile page and the @DrupalCoreGT twitter account. This post is a follow-up with even more details. We hope this answers more questions people have, and continues the discussion.

We are just getting started, so some of this information will probably change as we gain experience and more feedback.

We recognize that the most significant contribution to Drupal has always been and will continue to be the unfunded voluntary contributions of the many. Our hope is that the Team can play a part in making Drupal core development sustainable.

Thanks, Cathy and Alex

Who are you?

We are making the world better by working on Drupal Core.

Drupal Core contributors need consistent, reliable sponsorship without having to be experts in fundraising, and would-be sponsors need a central place to contribute that they can have confidence in. The Drupal Core Gittip Team hopes to be part of meeting these needs.

This team is run by Drupal Core mentor and contributor @YesCT and Drupal Core committer @alexpott. Contact us to join the team. We are looking for people who reliably work on Drupal Core and want help meeting their funding goals.

Read more about how Gittip teams work.

For a bit of history you can read my blog post on fundraising or listen to the DrupalEasy funding podcast.

How do I apply to join the Drupal Core Gittip Team?

Ping @YesCT or @alexpott on IRC or twitter. Tell us about your contribution, your current funding, and your funding goal (if you have one).

I contribute to Drupal Core - do I qualify to join the Drupal Core Gittip Team?

The team is for funding people who are reliably working on Drupal Core. If you are listed in MAINTAINERS.txt or have more than ten core commit mentions within the past six months, then you should be automatically eligible. If you do not meet those criteria but feel you have been contributing reliably to Drupal core, then give more detail about your contributions and the admins will review this. (If an admin rejects membership, an applicant can ask it to be put to all members for discussion and a ballot, with a simple majority needed.)

Over time, members of the Gittip team will be periodically reviewed. Team members who have stopped contributing to core for a significant period of time, or are suspected of abusing the criteria for membership (for example a shared Drupal.org/gittip account) may have their team membership revoked.

How much money do members get?

Gittip Teams are set up by Gittip such that each member chooses how much money they claim, starting at max US$1, which they are able to double each week, with new members getting priority. Who receives money and the amount each member receives is publicly available on the members tab on Gittip.

We have set some additional guidelines and will review these over time.

What other agreement is there among Team members for deciding who gets how much money?

If your company pays you for all of your time contributing to Drupal Core, please do not also ask to be funded through the Drupal Core Gittip Team. The Gittip team is a way for companies and individuals to support people who are contributing their own time, without compensation, to Drupal Core development.

Preliminary claim guidelines:
  • (After May 8, 2014) Members when they join are asked to set their claim to US$1/week, when they meet the criteria for reliable Drupal Core work.
  • It is ok to be a member of the group and claim less than US$1.
  • An initial goal is for members, who have some of their hours working on Core not funded, and want to have it funded, to get at least one hour a week of funds.
  • Until we have enough weekly contributions coming in to fund more than one hour for members (who want it, and meet the criteria), please do not set your claim higher than max (US$64, $total_funds/$number_people_wanting_funds).
  • When we have enough money to give everyone who wants (and meets the criteria), we will announce letting people claim up to 4 hours a week.
  • Members wanting to claim more than US$256 or 4 hours a week, should publish a summary (short: 140 characters) of what they worked on and share it with the team each week. People can up their claims, maxing out at 8 hours a week.
When should a member reduce their claims?
  • Vacation? If the vacation is less than 2 weeks (per 20 weeks) there is no need to reduce your claim.
  • Members should reduce their claim when they have gone more than 2 weeks with their work funded from some other source.
  • Partial reducing is encouraged, if for example they picked up partial funding from other places, but still have some work unfunded.
Who are the admins and how are they selected?

Currently YesCT and alexpott can add members via the twitter account. Admins are selected by … them volunteering to take on admin responsibilities, and being a member of the group for at least 7 weeks. New admins will be appointed by the current/outgoing admins, when an open admin slot is available.

Who are you to try and tackle the funding situation?

We are Drupal Core contributors that have tried to fund our work, have talked with others who have attempted to get their work funded, and are trying to move forward with something we think has potential.

What Drupal Core work does this fund?

It funds people who meet the criteria. On receipt of funds people are free to do what they want. This is tip - the work is already done.

Why a Gittip Team?
  • Gittip because: Gittip can maximise fundraising efforts using a fundraising platform well known to the community - over 500 Drupal people are already there.
  • A team because: donors will not have to move their sponsorship as the funding needs change for the people who work on Drupal Core. And people who work on Drupal Core do not have to do new fundraising as their sponsors change.
  • We hope the team provides a central, consistent, and trusted space to raise funds for Core development.
  • We hope through the community controlled membership the funds are targeted in the best way possible, to those that deserve and need it.
  • Core development is driven primarily by individuals working across a large number of different patches/subsystems, as opposed to specific fixed-scope projects. Funds with no specific development targets attached support this.
  • Core is bigger and more complex than ever. This is one solution to help individuals continue to contribute time, especially if they are not supported by the company they work for.
  • There are individuals and companies who can not donate development time to core this provides a way for them support core development.
Why not the Drupal Association?

Current charter says the DA must not direct Core. This is felt by many to preclude the Drupal Association from fundraising for core development. The Drupal Core Gittip Team plans to work with the Drupal Association on the issue of Core sustainability and funding.

What is your funding goal?

US$5000 per week.

Why so much?

Depending on cost of living assumptions, that is the equivalent of 2 full time people.

Why so little?

Yeah, it will take a lot more than that to make Drupal Core funding more sustainable, but it is a start.

Comments

YesCT

Mon, 05/05/2014 - 14:24

[moved these comments out of the post and here] Note, since members start at US$1, and can only double every week, it would take 7 weeks before anyone could get to US$64. This gives us more time to think through the claim agreement.

Note, we do not, as yet, have enough money to worry about the following, but this documents some ideas.

Elijah Lynn (not verified)

Mon, 05/05/2014 - 23:00

This is great news, I just pitched in $5/month! I will start spreading the word!

YesCT

Tue, 05/06/2014 - 11:17

In reply to by Elijah Lynn (not verified)

... careful, Gittip is per week. :) Add new comment Your name Subject Comment* More information about text formatsRestricted HTML
  • Allowed HTML tags: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd> <h4> <h5> <h6> <p> <br>
  • Lines and paragraphs break automatically.
  • Web page addresses and e-mail addresses turn into links automatically.
Categories: Drupal

Acquia drops non-compete clauses

Dries Buytaert - 2 May 2014 - 8:22am
Topic: BusinessAcquia

In a world where innovation is only accelerating, shackling employees with non-competes doesn't make sense anymore. At Acquia, we believe that innovation is about openness and collaboration, and that working together is based on trust and loyalty, something that was born out of our Open Source background. It's been a long time coming but we decided to kill our non-competes. It is the right thing to do. Here is what we just sent to all Acquia employees:

From: Tom Erickson <tom@acquia.com> To: Everybody at Acquia Date: Friday, May 2, 2014 Acquians, We have an amazing team, it's the thing I am personally proudest about. When asked by others what's the best thing about our company, I don't hesitate to answer "our team". There are many things to value in each of you, from your commitment, your integrity and certainly your passion! The goal that Dries and I have always set was to have a company where everyone is challenged, has the opportunity to grow and has some fun along the way. Most of the time we're successful at that as a company, though sometimes we fail. Yet even when we fail, we want everyone to continue to do the right thing and sustain mutual respect. To this end, the exec team has decided to eliminate non-competes from our employment agreements. We believe its the right thing for our team members, for the company and for the industry. There are many reasons why companies have used non-competes in the past, but we believe that times have changed and individuals today value the companies who value them. This may seem contradictory .. "value me, but let me go to a competitor" .. but we believe that a company who respects our team members in this way will actually be a better magnet for talent. While we are getting rid of non-competes, we are not eliminating other terms, notably the non-disclosure. So while we do not want to restrict free movement of talent, it's important that company confidential information remains just that, confidential. We do not plan to change existing employment agreements, as that would be an administrative burden, and we have many other issues to deal with. This email should suffice as an assurance that existing non competes below the executive leadership level will not be enforced. All new hires, with certain exceptions at the executive level, will not have non-competes. Viva Acquia! Tom
Categories: Drupal

S. M. Bjørklund: How to programmatically create a field in Drupal 7

Planet Drupal - 1 May 2014 - 1:25pm
Tags:

Ever had a site not controlled by the features module or felt that using it, add to much administrative overhead? Or you simply want to learn how to use Drupal field API? This is for you.

In this example I will try to keep the amount of code to the very minimum. Putting too much features into a example have a tendency to put some people off with the amount of code it create. The example will not explain how you create new field types, but rather use one existing provided by Drupal core.

Scope of example
  • Create a custom module named demo_field.
  • Enabling the module create a text field and add it to a content type named article.
  • Disable it remove the field from the content type and delete the field.
demo_field module

Not testing for exiting field name or that the node type (story) actually exist. Make sure field name does not collide and that you have a content type named story. If not, alter the code to match your installation.

demo_field.info

name = demo field
core = 7.x
dependencies[] = field

demo_field.module

<?php
?>
That's right, it is a empty module. The real code is found in til file module_name.install.

demo_field.install

<?php

/<strong>
* Implements hook_enable().
*
* Create a field. Fields can be created without any needs to attach them to
* entities.
*/
function demo_field_enable() {
  $field = array(
    'field_name' => 'demo_field',
    'type' => 'text',
  );
  field_create_field($field);

  /</strong>
   * Bind field to a entity bundle.
   */
  $instance = array(
    'field_name' => $field['field_name'],
    'entity_type' => 'node',
    'bundle' => 'article',
  );
  field_create_instance($instance);
}

/**
* Implements hook_disable().
*
* Remove field from node bundle (content type) and then delete the field.
*/
function demo_field_disable() {
  $instance = array(
    'field_name' => 'demo_field',
    'entity_type' => 'node',
    'bundle' => 'article',
  );
  field_delete_instance($instance);
  field_delete_field($instance['field_name']);
  print 'Removed ' . $instance['field_name'] . "\n";
}
?>

This is all code you need to create a field, add it to a content type. Sharing the field with another content type will only require that we add a single line.

Code breakdown

First thing we do is to define a field:
<?php
$field = array(
  'field_name' => 'demo_field',
  'type' => 'text',
);
field_create_field($field);
?>

The very minimum you need to pass to field_create_field() is a name for the field and the type of field. Created fields in Drupal does not have to added to a content type (entity) right away though when you create them through the UI you do not have a choice. The field API on the other hand give you all the flexibility you need. The text field get Drupal default setting since for the sake of simplicity choose to omit any field settings.

<?php
$instance = array(
  'field_name' => $field['field_name'],
  'entity_type' => 'node',
  'bundle' => 'article',
);
field_create_instance($instance);
?>

This add the field to the node. The very minimum you need to pass to field_create_instance() is the name of the field you plan to attach, the entity type, and the name of the bundle.

Grab the demo_field code

Code can be found in my github repo.

Categories: Drupal

Bluespark Labs: A Beautiful Friendship: How Bluespark and TripAdvisor put relationship best practices to work, and how you can, too.

Planet Drupal - 1 May 2014 - 2:08am

If you’re a consulting company, as Bluespark is--our international team specializes in building beautiful web sites using the Drupal CMS, with an emphasis on powerful user experience and design--you know that excellent work is necessary but not sufficient to achieve a great (or even a good) relationship with your client.

Ultimately, no matter how hard you work, it’s the relationship that will decide whether the project is a success -- or, more to the point, whether your client believes it was a success.

You’re probably already an expert at listening not just to what clients say, but what they don’t say. You’re an accomplished reader of subtext. You work to build trust because if your client isn’t comfortable, you know it’s going to be a lot harder to sell them on your ideas.

You also know that a great relationship doesn’t happen just by chance, and it’s not just because “they don’t question our bills and they pay on time” (though of course that’s something any service company wants).

No, a great relationship is the result of specific acts. And as you might imagine, it’s a two-way street. When it happens, it’s worth looking at what you and your client have done to make it happen.

So we have some ideas for you, whether you’re the client or the vendor.

FOR VENDORS

Become an extension of your client’s team.

People like to talk about this, but it doesn’t happen much. Why? Because vendors have strong ideas about what’s best for their clients. They have experience not only in their client’s industry but most likely in others as well, and they’re more up to date on the best technologies to achieve client goals. They know more (they assume) and so they’re prone to pressing the point on their ideas rather than finding a way to meet clients where they are.

When TripAdvisor, the world’s largest travel site, approached Bluespark looking to improve their existing Wordpress solution for communications with business owners, we felt sure that a Drupal-based solution would best achieve their aims. This was after all a marketing platform with heavy content management requirements reaching a global audience (and they wanted to increase the number of languages supported from 7 to 20).

We weren’t just thinking Drupal because that’s our core platform; we truly believed from the start that it was the best way to go. Nevertheless, we engaged in a comprehensive evaluation with TripAdvisor, providing any information they asked for, and we were willing to talk about Drupal’s limitations in the context of their goals, not just its advantages.

After this process, we jointly agreed that moving to Drupal would provide us with a more flexible framework to meet current and future needs. This wasn’t just performing listening exercises to stroke the client. This was serious work, and in the process we got to know their team, their various concerns, and the way they liked to communicate.

Once we got started on defining the actual project, we were already a tight knit team. We’d earned their trust by being honest. We continued to offer them all the resources they needed.

Be flexible on who does what.

TripAdvisor’s technical team handles implementations concerning the existing TripAdvisor stack, and they also handled the visual design. We brought to the table our UX expertise and the actual Drupal development. We constantly looked for ways to fit what we were doing to their needs.

Be responsive.

This may seem to be a given, but it’s not. One of the most common questions we field when talking with prospective clients, especially ones that have been burned by bad vendor relationships in the past, is, “How fast is your response time?”

Bluespark is an international, distributed team. This presented some challenge in terms of coordinating the regular progress meetings (at least weekly, sometimes more), but it also gave us an advantage--quite simply, we covered more of the clock. Team members in Europe had a head start on the US business day, which came in handy where updates were concerned.

Make your process transparent.

During the project lifecycle, some clients want more of a hands-on role than others. TripAdvisor, with its talented technical and design teams, had the wherewithal and the desire to be deeply involved in everything we worked on together.

So every step of the way, we figured out together how to do the work. We made no assumptions. We  didn’t try to impose our process on them, but we were always willing to talk about how we work and what to expect.

With a project of this scale, even when every player on the team is extremely skilled, coordination and communication is what will ultimately determine success.

FOR CLIENTS

Demand the same level of organization from your own team that you expect from your vendor.

Let’s face it, TripAdvisor didn’t get to be the world’s largest travel site by hiring slackers. Their team is at the top of their game. They communicate expectations really well. They are always focused on keeping things on track. They are always, always prepared for meetings. There’s no drama and no one who has to be coddled.

In short, they demand the best--not just from us, but from themselves.

Know who the product owner is.

Do you know what can do the worst to a relationship--and a project? Lack of clarity with respect to who the ultimate decision maker is. Who gets to break the tie? Who bears final responsibility?

TripAdvisor always knows who this person is. After the TripAdvisor designers sign off on the visuals, we have someone who is clearly in charge to take the project from there. They are empowered to make decisions, or they are able to quickly come back to us with an answer.

Opt for a smaller core team.

TripAdvisor is a big company, and the work we’re doing with them reaches a global audience. But the total number of their people with whom we interact on a regular basis is three.

Aside from the designers, there are six or seven others with particular knowledge or expertise that will cycle in and out depending on current project needs.

On our end, it’s the same number--our Chief Technology Officer, Technical Director, and a Senior Developer. Other members of our team are brought in to handle specific pieces of work as needed.

So with two international companies (TripAdvisor being a bit bigger than we are, perhaps!) there is a core group of six people making the decisions and performing the work that reaches millions of people globally.

Conclusion

All this may come off as a love letter of sorts, and we’re OK with that. We love our work, and we love working with TripAdvisor, as well as all our other great clients (expect more love letters in the future).

Our hope is that you can put these ideas to work in your own client or vendor relationships.

Great relationships reinforce what’s best in you and support you in stretching your best even further. TripAdvisor has done that for us, and we like to think we’ve done the same for them.

Tags: Drupal PlanetBest PracticesProject Management
Categories: Drupal

Achieve Internet Blog: A Drupal Developers Guide to Responsive Web Design

Planet Drupal - 30 April 2014 - 8:36pm
The Achieve Internet Standard for RWD
Categories: Drupal

Drupal core announcements: This week in Drupal Core - April 30th 2014

Planet Drupal - 30 April 2014 - 3:26pm
What's new with Drupal 8?

This week saw the release of Drupal 8 alpha 11 and two major patches - one adding PSR-4 autoloading support and another containing the Drupal 6 to Drupal 8 migration path.
The PSR-4 patch added PSR-4 support alongside PSR-0 but it is planned to remove PSR-0 support for module classes before the first beta. We will continue to support PSR-0 for external libraries provided by modules. For more information read the change record.
The Drupal 6 to Drupal 8 migrate path was a huge patch, congratulations to all those involved. For more information keep watching This week in Drupal Core and the Core group. You can take it for a spin with the latest version of drush and drush migrate-manifest.

Where's Drupal 8 at in terms of release? Just last week!

Last week, we fixed 12 critical issues and 16 major issues, and opened 10 criticals and 16 majors. That puts us overall at 118 release-blocking critical issues and 517 major issues.

7 beta-blocking issues were fixed last week. There are still 28 of 165 beta blockers that must be resolved before we can release a Drupal 8 beta.

How close are we to Beta 1?

It's the end of April, and we are down to just 28 beta-blocking issues. For context, here's how that count has changed over the course of 2014. We started 2014 with 140 known beta blockers and missing change records combined, with 123 of those issues still unresolved. We've identified additional beta-blocking issues along the way, so as we get closer, the picture becomes more complete. In total, we've already fixed 137 beta blockers and completed more than 70 missed change records. The 28 issues that remain are a fraction of more than 200 total.

That said, we need your help. Many of the beta blockers that remain include significant changes, and the community's support and focus on these issues now will pay off at DrupalCon Austin sprints and after. Or, help with one of the approachable tasks for beta 1 we shared last week. (Also see the "Where can I help?" section below.)

...So then when is it released?

We release the first Drupal 8 release candidate when there are 0 critical issues remaining. Right now there are 118 (including the 28 top-priority beta blockers). The number of criticals has been dropping steadily since DrupalCon Prague thanks to 900 Drupal 8 patch contributors during that timeframe alone. (In total, 2035 people have contributed to Drupal 8 patches over the past three years!)

That still looks like a lot of remaining criticals -- and it is. However, when we compare it to the total work that's already been done in the cycle, including more than 700 critical issues already fixed, it becomes clear we are in the final phase of Drupal 8's development. (Yep... keep scrolling...)

If you're as eager to build amazing things with Drupal 8 as we are, please devote what resources you can to resolving the remaining release blockers, or support the indefatigable contributors who continue to shape Drupal 8 directly.

Where can I help? Top criticals to hit this week

Each week, we check with core maintainers and contributors for the "extra critical" criticals that are blocking other work. These issues are often tough problems with a long history. If you're familiar with the problem space of one of these issues and have the time to dig in, help drive it forward by reviewing, improving, and testing its patch, and by making sure the issue's summary is up to date and any API changes are documented with a draft change record.

More ways to help Notable Commits

The best of git log --since "2014-04-21" --pretty=oneline (90 commits in total):

  • Issue #1874640 by xjm, Wim Leers: Rename edit module to quickedit.
  • Issue #2225955 by tim.plunkett, Berdir: Improve the DX of writing entity storage classes.
  • Issue #2231413 by blueminds, tim.plunkett: Link field does not accept a valid path alias.
  • Issue #2218039 by dawehner, sun: Render the maintenance/install page like any other HTML page.
    Removes some of crazy installer-specific logic
  • These three issues move us closer to Symfony 2.4's structure and away from custom code:
    Issue #2223615 by znerol: Use request stack in local task/action manager.
    Issue #2223593 by znerol: Decouple the router.request_context service from the request service.
    Issue #2236207 by znerol: Use router request context instead of request service in system breadcrumbbuilder.
  • Issue #2244185 by damiankloip: Remove cURL dependent options from HTTP client - Removes dependency on cURL
  • Issue #1067408 by alexpott, Jalandhar, jessebeach, Désiré, neetu morwani, dawehner, sun Themes do not have an installation status. Treat themes like modules so we can determine if they're actually used, only enabled themes get loaded / functions get executed, they can manage their data, translations can be imported, etc. One more DrupalWTF removed; DX++
  • Issue #2198429 by alexpott: Make deleted fields work with config synch. Makes field data purging compatible with syncing a module uninstallation.
  • Issue #2225955 by tim.plunkett, Berdir: Improve the DX of writing entity storage classes. Removes a lot of boilerplate code related to storing entities. DX++
  • The PSR-4 patches - these are the big one.No more super-nested directories (lib/Drupal/your_module/FooClass.php becomes just src/FooClass.php)
    Issue #2083547 by donquixote: Implement PSR-4 for module-provided class files.
    Issue #2083547 by donquixote: Introduce core/scripts/switch-psr4.sh, to move module-proided class files to their new PSR-4 location.
  • Issue #2245249 by tim.plunkett: Convert installer forms to FormInterface. Makes the installer less of a special-case; more like other forms
  • Issue #2228261 by beejeebus, kim.pepper, alexpott, Wim Leers: Add a local, PhpStorage-based cache backend.

You can also always check the Change records for Drupal core for the full list of Drupal 8 API changes from Drupal 7.

Drupal 8 Around the Interwebs

Blog posts about Drupal 8 and how much it's going to rock your face.

Drupal 8 in "Real Life"

  • May 2: DrupalJam in the Netherlands has a session on Drupal 8 patterns (plus maybe a streamed Q&A with Dries!)
  • May 2-4: DrupalCamp Toronto doesn't have a set schedule yet, but there are numerous Drupal 8 session proposals.
  • May 16-18: DrupalCamp Spain has several great D8 session proposals and even a sprint on several Drupal 8 topics.
  • May 31-June 8: DrupalCon Austin and extended sprints. This year's North American DrupalCon will include many Drupal 8 sessions, trainings, and sprints. The conference is June 2-6 with the community sprint on Jun 7, and there are plans extended sprints the weekends before and after the conference. See the signup sheet for Austin's extended sprints. Austin will be critical to make progress toward Drupal 8's release, so please plan to participate in the sprints if you can!
  • Whew! That's a wrap!

    Do you follow Drupal Planet with devotion, or keep a close eye on the Drupal event calendar, or git pull origin 8.x every morning without fail before your coffee? We're looking for more contributors to help compile these posts. You could either take a few hours once every six weeks or so to put together a whole post, or help with one section more regularly. Contact xjm if you'd like to help communicate all the interesting happenings in Drupal 8!

    Categories: Drupal

    duraTurk: Update Manager with SSH

    Planet Drupal - 30 April 2014 - 11:43am

    This gonna be short and sweet.

    If you need/want the Drupal Update Manager to work through SSH then you need to install the “libssh2-php” php package on your Ubuntu server. You know the Update Manager; it’s the admin interface when you install a module or theme, or more importantly if you are doing system-wide updates.

    If you do not have the “libssh2-php” package installed then the only option you will have is FTP.

    Unless you have a very specific reason, you do not want to run an FTP server on your Ubuntu server. Especially, when you have alternatives like SFTP and SCP for transferring files and they are based on SSH.

    Now to enable the SSH option on the Update Manager page, you need to install the “libssh2-php” package and reload your apache server.

    apt-get install libssh2-php service apache2 reload

    Now you have the SSH option on the same page.

    Well, that being said, using Drush would be a better choice for these operations but there might be times where you need this.


    Filed under: Drupal, Php 5.5, Ubuntu Tagged: Drupal Planet, libssh2-php, SSH, Update Manager
    Categories: Drupal

    Open Source Training: Custom Formatters for Easy Drupal Embeds

    Planet Drupal - 30 April 2014 - 7:15am

    Many websites want to allow users to submit videos, audio files, documents and the like.

    However, if those files are stored on other sites, it can be difficult to display that content consistently. For example, if you allow people to submit YouTube videos, there are multiple different types of embed code.

    One of our members wanted to allow users to submit Google docs that would automatically be shown inside iframes.

    The solution to all these problems is the "Custom Formatters" module. Here's how to use Custom Formatters:

    Categories: Drupal

    Frederick Giasson: Configuring and Using the OSF Search API (Screencast)

    Planet Drupal - 30 April 2014 - 5:40am

    In this screencast, I will show you how you can leverage the semantic power of the OSF Search endpoint into Drupal using OSF for Drupal. You will see how you can configure the OSF SearchAPI module, how you can turn any property into a filtering facet and how you can display the facets into blocks.

    Then I will briefly show you how you can create new search results templates and how the template selection works using type inference.

    Finally I will show you how you can enable and disable inference in the search feature, and how you can leverage the semantic structure of your data to change the relevancy of the search results returned. You have all the leisure to boost different characteristics of your data to return more relevant results to your users.

     


    Categories: Drupal

    VM(doh): Webform Options by Bundle

    Planet Drupal - 30 April 2014 - 2:01am

    At one time or another, most Drupal developers have worked on a site with one or more Webforms that used a select list that pertained to some other entity on the site (such as a store location, law firm practice area, etc). And especially on sites with multiple forms, site administrators sometimes forget to update one of the lists.

    The Webform Options by Bundle module fixes that for you. Webform has an feature on select lists for you to populate the options from a pre-built list such as countries or days of the week. This module uses a hook in Webform to let you populate the options with the labels of your entities. (Just to be clear, nodes are also entities. "Content Types" are bundles for the Node entity type. "Title" is the "label" for a Node entity.)

    We've tagged a release as 7.x-1.0-rc1. You can download an archive from Github. (Yes, it's also available on Drupal.org - but sandboxes don't allow releases).

    After downloading and installing the module, you first need to tell it what bundles to expose to Webform. This is very important. You do not want to use a bundle that has thousands of nodes. That would not be a good idea. So don't be that guy that tries to add 1,000,000 Article nodes to a select list.

    Once you've done that, you can setup a Webform with a select list. All you have to do is tell it which bundle you want to use. For example, if you had your store locations as "Location" nodes, you'd select "Node: Location".

    By the way, because the module populates the list using EntityFieldQuery and checking user access to each entity, your users will only see the entities that they have permission to view when they go to fill out the form.

    Categories: Drupal

    drunomics: Survey results for Blocks & Layouts from D7 to D8

    Planet Drupal - 30 April 2014 - 12:27am

    For my Blocks & Layouts presentation at our local Drupal Austria Meetup, Drupal Dev Days Szeged & recently at DrupalCamp Donetsk, I have reached out to the community to gather some data. 60 participants provided their input on favorite Drupal 7 layout tools and what they expect from Drupal 8. It's time to share the results:

    Which approaches are you using for realizing layouts in Drupal 7? This is my favorite blocks & layouts related module

    What are you most excited about or wish for Drupal 8

    I have posted some further thoughts on Blocks & Layouts in D8 at my Drupal Dev Days Szeged wrap-up, and will cross-post a link to the survey results on the g.d.o survey post. Also check out my slides, download the raw survey data and let us hear your thoughts.

    Categories: Drupal
    Syndicate content


    Google+
    about seo