Planet Drupal

Syndicate content - aggregated feeds in category Planet Drupal
Updated: 3 min 8 sec ago

Into my Galaxy: GSoC’ 16: Coding Week #2

Tue, 06/07/2016 - 09:05
pa href= summer of code (GSoC)/a seems to be a venue for students to get in touch with new technologies and be a part of many interesting open source organisations. Thanks to google for co- ordinating this initiative./p pThe last week was really a productive one for me in all aspects. I could manage time better to focus more towards my project. The climate here seems to have improved a lot. It#8217;s now rainy here which has reduced the hot and humid climate to a large extent. My geographical location, Kerala, the southern part of India usually faces a fair climate./p pIf you are searching for a flashback of my previous GSoC#8217; 16 ventures, please have a look at these a href= pSo, as you were expecting, now let#8217;s talk about my activities in the second week of GSoC. The second week commenced with a bit more elaborative planning of the tasks to be carried out in the coming days. My main intention for the week was to discover more Drupal hooks and adapt it to my project code./p pWondering, what are hooks?/p pa href=!, in the simple definition, are PHP functions which have an inbuilt meaning given by Drupal to interact with modules. They also give us the freedom to extend the functionalities. The a href= gives wonderful explanations about the various hooks in action and their modifications that have come in the different Drupal versions./p pstrongTopics I have covered:/strong/p pI would like to take this opportunity to share with you some of the concepts I could grasp from the previous week of GSoC./p ul lia href= ul liThis performs the setup tasks when the module is installed./li /ul /li lia href=!system!system.api.php/function/hook_schema/7.xhook_schema/a ul liThis hooks the database schema for the module. This is invoked once the module is enabled. This resides in the .install file of the module./li /ul /li lia href= ul liThis is for enhancing the module#8217;s theme implementations./li /ul /li lia href=!system!system.api.php/function/hook_permission/7.xhook_permission/a ul li This hook defines the user permissions of the module; granting and restricting permission to the roles./li /ul /li lia href= API/a ul liThe Drupal variables are replaced by the configuration API.  You need to define the properties and a href= values/a in the new format./li /ul /li /ul pHoping to learn more Drupal concepts in the days ahead. I will be posting the updates regularly. Stay tuned for more Drupal concepts./pbr / a rel=nofollow href= alt= border=0 src= //a img alt= border=0 src=;blog=66123643#038;post=408#038;subd=geojoyce#038;ref=#038;feed=1 width=1 height=1 / The Gizra Way Webinar: Budget Goggles and the Time-Boxed Project

Tue, 06/07/2016 - 06:00
pToday we held our inaugural a href= webinar. The web series is intended to showcase some of ldquo;The Gizra Wayrdquo; principles - a set of best practices and methodologies, borrowed from the Open Source development world and applied to operations, workflow, and overall company culture./p pFor the first in the series, we chose the topic of price estimations because it provides a real - and perhaps radical - example of how transparent communication from the beginning about a projectrsquo;s needs alongside its budget can turn the process on itrsquo;s head. In the video below Amitai Burstein discusses how a budget-and time-driven discovery process gets a project off on the right foot./p div class=embed-responsive embed-responsive-16by9 iframe class=embed-responsive-item src= /div pThe next webinar - to take place in July 2016 - will be announced shortly. If you have any suggestions for topics or an idea that you would like to present in a future session a href=mailto:adam@gizra.comlet us know/a./p pa href= reading…/a/p

Jeff Geerling's Blog: DrupalCamp St. Louis 2016 will be September 10-11

Tue, 06/07/2016 - 04:40
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedp style=text-align: center;a href= src=// width=600 height=303 alt=DrupalCamp St. Louis 2016 - Landing page class=insert-image //a/p pI wanted to post this as a 'save the date' to any other midwestern Drupalists—here in St. Louis, we'll be hosting our a href= annual DrupalCamp/a on September 10 and 11 (Saturday and Sunday) in St. Louis, MO. We'll have sessions on Saturday, and a community/sprint day Sunday, and just like last year, we'll record all the sessions and post them to the a href= STL YouTube channel/a after the Camp./p pWe're still working on a few details (nailing down the location, getting things set up so we can accept session submissions and registrations, etc.), but if you're interested in coming, please head over to the a href= DrupalCamp STL 2016/a website and sign up to be notified of further information!/p/div/div/div

ActiveLAMP: Writing custom fields in Drupal 8 - Part 2

Tue, 06/07/2016 - 04:00
divimg src= //divpContinuing from Evan’s blog post on building pages with Paragraphs and writing custom blocks of content as fields, I will walk you through how to create a custom field-formatter in Drupal 8 by example./p a href= more.../a

Vasily Yaremchuk: DrupalCamp Kyiv 2016 Retrospective

Mon, 06/06/2016 - 23:15
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpI took part in a href= target=blankDrupalCamp Kyiv 2016/a. Let me share my impression./p pI took part in Kiev Drupal Camps in 2010 and 2011, but after that, due to some personal reasons and job activity such as working as the Project Manager at the company, I wasn’t able to participate at the camps from 2012 to 2015./p pTo compare with my previous Drupal Camp experience this Camp looks like International not local Ukrainian event. There were several presentations in English. I think as soon as English presentation will be more than 50% the Camp became really international. /p pThe most important conclusion that I have after this event: It does not make sense to start new project on Drupal 7. There were several excellent presentations that show a long set of Drupal 8 strong points. On my own view the best presentation did a href= Gorobets/a from FFW. His report significantly change my understanding of Drupal Cache Workflow. I hope that his report will be available online soon./p pAlso there is a trend towards consolidation Drupal IT business in several companies. They are FFW and / More than 50% of the camp presentations were prepared by the people from that companies. Also as I can see more than 50% of the famous Ukrainian Drupal developers joined to that 2 companies./p pI can saw only one weak point of Kiev Drupal Camp 2016. There were 4 streams of presentations, thus participants can have very limited access to that lectures, so one can see only 25% of presentations./p pI hope that we will have access to all presentations soon, but now I can share my final slide set of my presentation a href=/sites/default/files/The%20First%20Step%20to%20a%20Drupal%208%20Landing%20Page%20Builder.pdf target=_blankThe First Step to a Drupal 8 Landing Page Builder/a./p /div/div/divdiv class=field field-name-taxonomy-wp-blog-tags field-type-taxonomy-term-reference field-label-abovediv class=field-labelBlog tags:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/blog-tags/planet-drupalPlanet Drupal/a/div/div/div

Drupal @ Penn State: How to export fields from one content type to another

Mon, 06/06/2016 - 23:06
pThe title kind of explains it all. Check out the screencast for a quick demo on how to donbsp;it. /p blog: What’s new on - May 2016

Mon, 06/06/2016 - 22:16
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpRead our a href= rel=nofollowRoadmap/a to understand how this work falls into priorities set by the Drupal Association with direction and collaboration from the Board and community./p pimg class=right alt=DrupalCon New Orleans Logo src=/files/NOLA-Logo-Purple-crown.png width=120px //p pThe team is back from New Orleans and thankful for the time we had to spend with the community, attending sessions, presenting a href= rel=nofollowsessions of our own/a, and sprinting with you throughout the Con. As individuals, we’re all members of the community, and as an organization we're proud to hold the home of the community in trust./p pBecause of DrupalCon North America, May is always a busy month for the Association engineering team. We're preparing our sessions, ensuring that the testbots will be running smoothly for DrupalCon sprints, and polishing new features and ideas to share with the community. Here's what's new:/p updates/h2 h3Composer repositories moving towards stable/h3 pimg class=left Composer Logo src=/files/styles/grid-3/public/project-images/9769826_0.png width=120px //p pAt the end of April, we launched the Alpha of our Composer façade, providing Composer repository endpoints on for Drupal 8 and Drupal 7. At DrupalCon New Orleans, we gave a presentation on the architecture of the Composer façade, and our plans for next steps. We also received some great feedback from users who helped us test the alpha release, and in May we've focused on moving Composer from an alpha release to a more stable environment suitable for use on production Drupal sites. We'll be following up soon with a more detailed blog post about Composer, when that more stable release is available./p pIf you want to help test the Composer service, you can a href= rel=nofollowlearn more about's Composer repositories/a./p h3New documentation content types/h3 pAs previewed in our a href= rel=nofollowsession at DrupalCon New Orleans/a, we're modernizing Drupal documentation with two new content types: Guides, and Documentation Pages. Documentation Pages will be organized in Guides, which will be curated by maintainers. We're also bringing a new visual design to documentation, re-organizing documentation by major version of Drupal, and developing a call-outs feature to help highlight key information like best practices or important changes in minor versions./p pIn May, we made an initial deployment of these content types to, though access is presently restricted to administrators while we work with the Documentation Working Group to sort out our initial migration plan. In June, we hope to deploy a migration tool, allowing users to convert existing documentation Book Pages and their children into the new Guides and Documentation Pages./p h3CKEditor/h3 pWe've also deployed CKEditor to The WYSIWYG editor is now available on the Section, Page, and Post content types, as well as the incoming Documentation Guide and Documentation Page types. CKEditor brings a more robust editorial experience to, and as it gets wider use we’ll expand it to additional content types. We also want to allow time for the a href= rel=nofollowDreditor maintainers to update/a to support the change. As a long-term goal, we hope that some of the features of Dreditor may be reimplemented as CKEditor plugins and directly available to every user without the use of a 3rd party browser extension./p h2Sustaining support and maintenance/h2 h3DrupalCon Dublin full site launched/h3 pimg class=right alt=DrupalCon Dublin Logo src=/files/DrupalCon-Dublin-Logo.jpg width=120px //p pAt DrupalCon New Orleans, we launched the full site for a href= rel=nofollowDrupalCon Dublin/a. The call for papers is open now, as is registration, so a href= rel=nofollowsubmit your sessions/a and a href= rel=nofollowpurchase your tickets/a soon. DrupalCon New Orleans had the most sessions submissions ever for a DrupalCon, and the standard of quality was incredibly high. We're hoping that DrupalCon Dublin will see just as many wonderful submissions./p h3DrupalCon Baltimore announced!/h3 pimg class=left alt=DrupalCon Baltimore Logo src=/files/DrupalCon-Baltimore-Logo.png width=120px //p pAs is tradition, we also revealed the location of the next DrupalCon North America. In 2017, a href= rel=nofollowDrupalCon will be in Baltimore/a! At the closing session, the engineering team launched the splash page for the upcoming event, with travel information, hotels, and important dates./p pAnd if your organization would like to sponsor DrupalCon Baltimore, you can find more information and a href= rel=nofollowour prospectus/a on the site as well./p h3Infrastructure/h3 pWe made several tweaks to infrastructure in May as well. We updated the Git Twisted daemon, which serves as the backend for the Git repositories and packaging process. We rebuilt our staging infrastructure at OSU/OSL. And finally, with the generous support of new Technology Supporting Partner a href= rel=nofollowOpsGenie/a, we updated our internal pager rotation for infrastructure alerts./p p———/p pAs always, we’d like to say thanks to all the volunteers who work with us, and to the Drupal Association a href= rel=nofollowSupporters/a, who made it possible for us to work on these projects./p pWe also want to say a special thanks to the a href= rel=nofollowdeparting leadership team/a at the Drupal Association: our a href= rel=nofollowformer executive director, Holly Ross/a, who is moving on after building an incredible team and a great culture throughout the entire organization; Matt Tsugawa, our CFO; and a href= rel=nofollowJosh Mitchell/a, who has lead and mentored the engineering team./p pMegan Sanicki, our former COO, is a href= rel=nofollowtaking on the mantle of Executive Director/a and we're looking forward to where her leadership will take us/p pFollow us on Twitter for regular updates: a href= rel=nofollow@drupal_org/a, a href= rel=nofollow@drupal_infra/a/p/div/div/div

Drupal Association News: Drupal at OSCON

Mon, 06/06/2016 - 21:58
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpa href= alt=Jakob Perry with Jason Yee and Emilie Nouveau at OSCON Drupal booth src= style=width: 250px; height: 322px; float: right; margin: 10px; //aDrupal was at OSCON 2016 in Austin, TX, represented by a team of volunteers and Association staff members. Big thanks to Mika Aguilar, Stephanie El-Hajj, Michael Favia, Jeff Linwood, Michal Minecki, Emilie Nouveau, Cole Pacak, Jakob Perry, Ed Reel, Patricia Silva, and Jason Yee for helping out./p pThanks to the media partnership between DrupalCon and O'Reilly Media, we received a table in the exhibit hall to promote Drupal to the wider open source audience of OSCON. Here is how the days went, according to our volunteer crew:/p blockquote pimg alt=DyanneNova user profile photo src= style=width: 90px; height: 90px; float: left; margin: 10px; /It was great to meet so many Drupalistas in the Texas open source community and let them know about local meetups and the Texas Drupal Camp being planned. Everyone that came through was excited to talk about Drupal 8 and how they’re using it. And so many stickers were handed out!/p p— Emilie Nouveau (a href= /blockquote blockquote pimg alt=stephelhajj user profile photo src= style=width: 90px; height: 90px; margin: 10px; float: left; /I’m excited to see OSCON come back to Austin next year. I attended the last two years in Portland and was happy to see it follow me to Austin. Lots of people stopped by the Drupal booth - many who had once used or installed Drupal, and then wandered away. They were surprised (and I think excited?) to hear about Drupal 8! It was a great opportunity to showcase Drupal 8’s new, modern features and functionality./p pIf I had to pick a favorite after-hours event, it’d have to be PayPal’s (old) Ghostbusters screening at the Alamo. You haven’t experienced the local scene until you’ve waved white and red glow sticks at a screen with a hundred fellow nerds to mime the Proton Blaster energy ray at the Alamo. And adult milkshakes./p p— Stephanie El Hajj (a href= /blockquote blockquote pimg alt=jefflinwood user profile photo src= style=width: 90px; height: 86px; margin: 10px; float: left; /The best part was meeting some new PHP developers right out of school who had learned development, but weren’t sure exactly what Drupal was, or how it could help them start their careers. This was a great opportunity to tell them about Drupal 8 and modern PHP web development using Symfony./p p— Jeff Linwood (a href= /blockquote pKeep up with events we are planning by following a href= newsletter/a./p p /p /div/div/divdiv class=field field-name-taxonomy-vocabulary-4 field-type-taxonomy-term-reference field-label-abovediv class=field-labelPersonal blog tags:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/taxonomy/term/369OSCON/a/div/div/div

DrupalCon News: Registration is open for DrupalCon Dublin

Mon, 06/06/2016 - 20:10
div class=field field--name-body field--type-text-with-summary field--label-hiddendiv class=field__itemsdiv class=field__item evenpIf you’ve been dreaming about DrupalCon Dublin, we’ve got some great news. Registration is open, so it’s time to purchase your ticket./p pBuy your ticket before the earlybird pricing expires on 25 July, and save yourself (or your company) some money. Plus, the sooner you purchase your ticket (and reserve your official hotel room), the better our team can plan for you. It helps us know how many attendees to plan for, and it funds our budget for meals and refreshments sooner, which means better food and coffee./p/div/div/div

FFW Agency: Go Camping with Drupal This Summer

Mon, 06/06/2016 - 18:21
span property=schema:name data-quickedit-field-id=node/3631/title/en/rss class=field field--name-title field--type-string field--label-hiddenGo Camping with Drupal This Summer/span span data-quickedit-field-id=node/3631/uid/en/rss class=field field--name-uid field--type-entity-reference field--label-hiddenspan lang= about=/users/ray-saltini typeof=schema:Person property=schema:name datatype=Ray Saltini/span/span span data-quickedit-field-id=node/3631/created/en/rss class=field field--name-created field--type-created field--label-hiddenMon, 06/06/2016 - 16:21/span div property=schema:articleBody data-quickedit-field-id=node/3631/body/en/rss class=clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__itempWhy spend all your time at the beach when you can be learning even more about Drupal. Here are just a few of the camps our staff will be participating in this summer. We hope to see you there./p pbDrupalNorth/b/p pDrupal North in Montreal June 16 - 19 is a great regional event. FFW Manager of Learning and Contributions David Hernandez is presenting a href= CSS and JavaScript files in Drupal 8 with Libraries/a. /p pbGovCon/b/p pJoin us at GovCon in Bethesda July 20-22 where we’re sponsoring a full day training with Drupal Console author and FFW Drupal 8 Solutions Engineer Jesus Olivas on Building Custom Drupal 8 features and modules.  FFW Center of Excellence Director Ray Saltini and FFW Manager of Learning and Contributions David Hernandez will be there presenting on a href= Strategies for Government Websites/a and a href= CSS and JavaScript files in Drupal 8 with Libraries/a/p pbNYC Camp/b/p pNYC Camp is back at the United Nations this year July 8  - 11. There’s too much learning going on to list it all here. Make sure you catch FFW Center of Excellence Director Ray Saltini’s presentation a href= Digital Transformation or Die/a. /p pbTwin Cities Drupal Camp/b/p pFFW Drupal 8 Solutions Engineer and Drupal Console project lead Jesus Olivas is giving a full day training at Twin Cities June 16 - 19 on a href= 8 Module Building/a and presenting a href= Your Drupal 8 Development Workflow/a. Make sure you catch him and FFW Developer Tess Flynn who’s presenting a href= the Whale! Docker for Drupalists/a./p /div h6 class=field-label headingTagged with/h6 ul class=links field-items lia href=/training property=schema:keywords hreflang=enTraining/a/li /ul section property=schema:comment data-quickedit-field-id=node/3631/field_comment/en/rss h2Comments/h2 drupal-render-placeholder callback=comment.lazy_builders:renderForm arguments=0=nodeamp;1=3631amp;2=field_commentamp;3=ffw_comments token=2ef3cd0d/drupal-render-placeholder /section

Dries Buytaert: Gotthard tunnel website using Drupal

Mon, 06/06/2016 - 18:17
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpThe Gotthard Base Tunnel, under construction for the last 17 years, was officially opened last week. This is the world's longest and deepest railroad tunnel, spanning 57 kilometers from Erstfeld to Bolio, Switzerland, underneath the Swiss Alps. To celebrate its opening, Switzerland also launched a href= multi-lingual multimedia website/a to celebrate the project's completion. I was excited to see they chose to build their site on Drupal 8! The site is a fitting digital tribute to an incredible project and launch event. Congratulations to the Gotthard Base Tunnel team!/p figure class=figure div class=img style=border: 1px solid #ccc; display: inline-blockimg src= style=display:block alt=Gottardo//div figcaption style=font-style: italic; color: #777;/figcaption /figure /div/div/div

Four Kitchens: Launch Announcement: WOOD Magazine

Mon, 06/06/2016 - 18:14
div class=field-body pWe’re pleased to announce the site launch of a href=, the online presence of emWOOD Magazine/em, “The World’s Leading Woodworking Resource.” The new site includes online-only content, free downloadable plans for home woodworking projects, an index of articles in the print magazine, community forums, and subscription management./p /div

Dries Buytaert: Advancing Drupal's web services

Mon, 06/06/2016 - 09:24
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpIn a href= earlier blog post/a, I looked at the web services solutions available in Drupal 8 and compared their strengths and weaknesses. That blog post was intended to help developers choose between different solutions when building Drupal 8 sites. In this blog post, I want to talk about how to advance Drupal's web services beyond Drupal 8.1 for the benefit of Drupal core contributors, module creators and technical decision-makers./p pI believe it is really important to continue advancing Drupal's web services support. There are powerful market trends that oblige us to keep focused on this: integration with a href= systems having their own APIs/a, the proliferation of new devices, the expanding Internet of Things (IoT), and a href= widening adoption of JavaScript frameworks/a. All of these depend to some degree on robust web services./p pMoreover, newer headless content-as-a-service solutions (e.g. Contentful,, Backand and CloudCMS) have entered the market and represent a widening interest in content repositories enabling more flexible content delivery. They provide content modeling tools, easy-to-use tools to construct REST APIs, and SDKs for different programming languages and client-side frameworks./p pIn my view, we need to do the following, which I summarize in each of the following sections: (1) facilitate a single robust REST module in core; (2) add functionality to help web services modules more easily query and manipulate Drupal's entity graph; (3) incorporate GraphQL and JSON API out of the box; and (4) add SDKs enabling easy integration with Drupal. Though I shared some of this in a href= DrupalCon New Orleans keynote/a, I wanted to provide more details in this blog post. I'm hoping to discuss this and revise it based on feedback from you./p h3One great REST module in core/h3 pWhile core REST can be enabled with only a few configuration changes, the full extent of possibilities in Drupal is only unlocked either when leveraging modules which add to or work alongside core REST's functionality, such as a href= or a href=, or when augmenting core REST's capabilities with additional resources to interact with (by a href= corresponding plugins/a) or using other custom code./p pHaving such disparate REST modules complicates the experience. These REST modules have overlapping or conflicting feature sets, which are shown in the following table./p table tbody tr thFeature/th thCore REST/th thRELAXed/th thServices/th thIdeal core REST/th /tr tr tdContent entity CRUD/td tdYes/td tdYes/td tdYes/td tdstrongYes/strong/td /tr tr tdConfiguration entity CRUD/td tdCreate resource plugin (a href= tdCreate resource plugin/td tdYes/td tdstrongYes/strong/td /tr tr tdCustom resources/td tdCreate resource plugin/td tdCreate resource plugin/td tdCreate Services plugin/td tdstrongPossible without code/strong/td /tr tr tdCustom routes/td tdCreate resource plugin or Views REST export (GET)/td tdCreate resource plugin/td tdConfigurable route prefixes/td tdstrongPossible without code/strong/td /tr tr tdTranslations/td tdNot yet (a href= tdYes/td tdCreate Services plugin/td tdstrongYes/strong/td /tr tr tdRevisions/td tdCreate resource plugin/td tdYes/td tdCreate Services plugin/td tdstrongYes/strong/td /tr tr tdFile attachments/td tdCreate resource plugin/td tdYes/td tdCreate Services plugin/td tdstrongYes/strong/td /tr tr tdAuthenticated user resources (log in/out, password reset)/td tdNot yet (a href= tdNo/td tdUser login and logout/td tdstrongYes/strong/td /tr /tbody /table pI would like to see a convergence where all of these can be achieved in Drupal core with minimal configuration and minimal code./p h3Working with Drupal's entity graph/h3 pRecently, a discussion at DrupalCon New Orleans with key contributors to the core REST modules, maintainers of important contributed web services modules, and external observers led to a proposed path forward for all of Drupal's web services./p figure class=figure div class=img no-resize style=border: 1px solid #ccc; display: inline-blockimg src= style=display:block alt=Web services entity graph//div figcaption style=font-style: italic; color: #777;pA visual example of an entity graph in Drupal./p /figcaption /figure pBuried inside Drupal is an entity graph over which different API approaches like traditional REST, JSON API, and GraphQL can be layered. These varied approaches all traverse and manipulate Drupal's entity graph, with differences solely in the syntax and features made possible by that syntax. Unlike core's REST API which only returns a single level (single entity or lists of entities), GraphQL and JSON API can return multiple levels of nested entities as the result of a single query. To better understand what this means, have a look at the a href= demo video/a I shared in a href= DrupalCon Barcelona keynote/a./p pWhat we concluded at DrupalCon New Orleans is that Drupal's GraphQL and JSON API implementations require a substantial amount of custom code to traverse and manipulate Drupal's entity graph, that there was a lot of duplication in that code, and that there is an opportunity to provide more flexibility and simplicity. Therefore, it was agreed that we should first focus on building an entity graph iterator that can be reused by JSON API, GraphQL, and other modules./p pThis entity graph iterator would also enable manipulation of the graph, e.g. for aliasing fields in the graph or simplifying the structure. For example, the difference between Drupal's base fields and configured fields is irrelevant to an application developer using Drupal's web services API, but Drupal's responses leak this internal distinction by prefixing configured fields with codefield_/code (see the left column in the table below). By the same token, all fields, even if they carry single values, expose the verbosity of Drupal's typed data system by being presented as arrays (see the left column in the table below). While there are both advantages and disadvantages to exposing single-value fields as arrays, many developers prefer more control over the output or the ability to opt into simpler outputs./p pA good Drupal entity graph iterator would simplify the development of Drupal web service APIs, provide more flexibility over naming and structure, and eliminate duplicate code./p table tbody tr thCurrent core REST (shortened response)/th thIdeal core REST (shortened response)/th /tr tr tdprecode{ nid: [ { value: 2 } ], title: [ { value: Lorem ipsum } ], field_product_number: [ { value: 35 } ], field_image: [ { target_id: 2, alt: Image, title: Hover text, width: 210, height: 281, url: } ] }/code/pre/td tdprecode{ nid: 2 title: Lorem ipsum, product_number: { value: 35 }, image: { target_id: 2, alt: Image, title: Hover text, width: 210, height: 281, url: } }/code/pre/td /tr /tbody /table h3GraphQL and JSON API in core/h3 pWe should acknowledge simultaneously that the wider JavaScript community is beginning to embrace different approaches, like a href=http://jsonapi.orgJSON API/a and a href=, which both enable complex relational queries that require fewer requests between Drupal and the client (thanks to the ability to follow relationships, as mentioned in the section concerning the entity graph)./p pWhile both JSON API and GraphQL are preferred over traditional REST due to their ability to provide nested entity relationships, GraphQL goes a step further than JSON API by facilitating explicitly client-driven queries, in which the client dictates its data requirements./p pI believe that GraphQL and JSON API in core would be a big win for those building decoupled applications with Drupal, and these modules can use existing foundations in Drupal 8 such as the Serialization module. Furthermore, Drupal's own built-in JavaScript-driven UIs could benefit tremendously from GraphQL and JSON API. I'd love to see them in core rather than as contributed modules, as we could leverage them when building decoupled applications backed by Drupal or exchanging data with other server-side implementations. We could also eat our own dog food by using them to power JavaScript-driven UIs for block placement, media management, and other administrative interfaces. I can even see a future where Views and GraphQL are closely integrated./p figure class=figure div class=img no-resize style=border: 1px solid #ccc; display: inline-blockimg src= style=display:block alt=Web services rest json grapql//div figcaption style=font-style: italic; color: #777;pA comparison of different API approaches for Drupal 8, with amended and simplified payloads for illustrative purposes./p /figcaption /figure h3SDKs to consume web services/h3 pWhile a unified REST API and support for GraphQL and JSON API would dramatically improve Drupal as a web services back end, we need to be attentive to the needs of consumers of those web services as well by providing SDKs and helper libraries for developers new to Drupal./p pAn SDK could make it easy to retrieve an article node, modify a field, and send it back without having to learn the details of Drupal's particular REST API implementation or the structure of Drupal's underlying data storage. For example, this would allow front-end developers to not have to deal with the details of single- versus multi-value fields, optional vs required fields, validation errors, and so on. As an additional example, incorporating user account creation and password change requests into decoupled applications would empower front-end developers building these forms on a decoupled front end such that they would not need to know anything about how Drupal performs user authentication./p pAs starting points for JavaScript applications, native mobile applications, and even other back-end applications, these SDKs could handle authenticating against the API and juggling of the correct routes to resources without the front-end developer needing an understanding of those nuances./p pIn fact, at Acquia we're now in the early stages of building the first of several SDKs for consuming and manipulating data via Drupal 8's REST API. a href=, a new generic helper library intended for JavaScript developers building applications backed by Drupal, is the work of Acquia's a href= Grill/a and a href= So/a, and it is already seeing community contributions. We're eager to share our work more widely and welcome new contributors./p h3Conclusion/h3 pI believe that it is important to have first-class web services in Drupal out of the box in order to enable top-notch APIs and continue our evolution to become API-first./p pIn parallel with our ongoing work on shoring up our REST module in core, we should provide the underpinnings for even richer web services solutions in the future. With reusable helper functionality that operates on Drupal's entity graph available in core, we open the door to GraphQL, JSON API, and even our current core REST implementation eventually relying on the same robust foundation. Both GraphQL and JSON API could also be promising modules in core. Last but not least, SDKs like Hydrant that empower developers to work with Drupal without learning its complexities will further advance our web services./p pCollectively, these tracks of work will make Drupal uniquely compelling for application developers within our own community and well beyond./p pemSpecial thanks to a href= So/a for contributions to this blog post and to a href= Weitzman/a, a href= Browning/a, a href= Vanderwater/a, a href= Leers/a, a href= Siemssen/a, a href= Millwood/a, a href= Bowman/a, and a href= Aguiló Bosch/a for their feedback during its writing./em/p/div/div/div

KnackForge: Review of Drupal professional themes

Mon, 06/06/2016 - 07:34
span data-quickedit-field-id=node/351/title/en/rss class=field field--name-title field--type-string field--label-hiddenReview of Drupal professional themes/span div data-quickedit-field-id=node/351/body/en/rss class=clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__itemp class=text-align-justify dir=ltra href= is one among the best Drupal professional theme selling sites. With decades of free theme and quality of paid themes, has got its own place in the list professional theme selling sites. All our themes are Responsive and catered specifically for Drupal sites. A good theme gives your website a distinct feel that sends out a positive impression to your visitors. In this post, we would like to review the top themes on to help you select the best./p/div span data-quickedit-field-id=node/351/uid/en/rss class=field field--name-uid field--type-entity-reference field--label-hiddena title=View user profile. href=/vamsi lang= about=/vamsi typeof=schema:Person property=schema:name datatype= class=usernameVamsi/a/span span data-quickedit-field-id=node/351/created/en/rss class=field field--name-created field--type-created field--label-hiddenMon, 06/06/2016 - 11:04/span span class=a2a_kit a2a_kit_size_32 addtoany_list data-a2a-url= data-a2a-title=Review of Drupal professional themesa class=a2a_dd addtoany_share_save href=;title=Review%20of%20Drupal%20professional%20themes/aa class=a2a_button_facebook/a a class=a2a_button_twitter /a a class=a2a_button_google_plus/a a class=a2a_button_linkedin /a a class=a2a_button_pinterest /a/span

Jeff Geerling's Blog: Speeding up Composer-based Drupal installation

Mon, 06/06/2016 - 05:07
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpa href= VM/a is one of the most flexible and powerful local development environments for Drupal, but one the main goals of the project is to build a fully-functional Drupal 8 site quickly and easily without doing much setup work. The ideal would be to install Vagrant, clone or download the project, then run codevagrant up/code. A few minutes later, you'd have a Drupal 8 site ready for hacking on!/p pIn the past, you always had to do a couple extra steps in between, configuring a codedrupal.make.yml/code file and a codeconfig.yml/code file. Recently, thanks in huge part to a href= Schöldström's/a herculean efforts, we achieved that ideal by switching from defaulting to a Drush make-based workflow to a Composer-based workflow (this will come in the 3.1.0 release, very soon!). But it wasn't without trial and tribulation!/p/div/div/div

Bear Coder: 4 Steps To Getting Drupal's Codebase With PHP

Sat, 06/04/2016 - 18:00
span property=schema:name4 Steps To Getting Drupal#039;s Codebase With PHP/span span rel=schema:authorspan lang= about=/user/1 typeof=schema:Person property=schema:name datatype=BearCoder/span/span span property=schema:dateCreated content=2016-06-04T16:00:00+00:00Sat, 06/04/2016 - 11:00/span

DrupalEasy: Drupal 8 Debugging: Kareful Klicking in Kint

Sat, 06/04/2016 - 17:14
pimg src= alt=Sample Kint output //p pDrupal 8's new theming system is a thing of beauty. As part of the massive changes to the Drupal 8 (front- and back-end) developer experience, the a href= module for Drupal 8 comes with a new variable inspector. Say goodbye to a href=http://krumo.sourceforge.netKrumo/a, and say hello to a href= Like its predecessor, when you install the Devel project on a Drupal 8 local environment, you automatically get the Kint module as well (like Krumo, there are no additional downloads). Using Kint is similar to using Krumo, where in Drupal 7, any dsm($variable_name) or dpm($variable_name) call automatically used Krumo to display variables on the page in a way that made it easy(ier?) to dive into the many Drupal PHP arrays and objects. In Drupal 8, kint($variable_name) can be used to output any variable - this works in template files as well via {{ kint(variable_name) }}./p pIt took me a few weeks to get comfortable with Kint, mainly due to one small interface emthing/em; clicking on the + icon in a Kint output recursively opens strongall/strong the arrays and objects. Depending on the variable you're Kint-ing, this could result in a lot of output to sort through (and, depending on your machine, browser, and site configuration, it could take more than a few seconds to fully render)./p pimg src= alt=Open all the Kint arrays and objects. //p pAfter a few weeks of instinctively (and incorrectly) clicking on the + button every time I used Kint, I've now retrained myself to utilize it in a much more efficient manner./p olliI almost never click on the + anymore. Rather, I click output emanywhere other than the +/em to open just that portion of the /img src= alt=Non-recursive clicking in Kint. /br //li liI download and install the a href= Kint/a module whenever I download and install the Devel module for a local environment. This provides an almost-too-convenient-to-believe search box with each Kint output that makes finding things almost trivial. br /br /img src= alt=Using the Search Kint module. //li /olpUsing Kint efficiently is one of the skills that every Drupal 8 developer should have. Combined with an interactive debugger, there's virtually nothing that can't be easily discovered when a developer can wield both of these tools./p pemLearn more about Drupal 8 module and theme development debugging by a href= a DrupalEasy workshop/a!/em/pdiv class=feedflare a href= src= border=0/img/a a href= src= border=0/img/a /divimg src= height=1 width=1 alt=/

ActiveLAMP: Drupal 7 vs Drupal 8

Sat, 06/04/2016 - 05:01
divimg src= //divpWhich version of Drupal should you build your site on, Drupal 7 or Drupal 8? This question comes up quite frequently, and for good reason! Your website is an investment and could be serving you for the next 3-5 years. It’s important to weigh the pros and cons of choosing to build on Drupal 7 or Drupal 8. If you’re thinking about building your new site on Drupal 7, you need to watch this video first. Drupal 7 adoption is going down, with Drupal 8 adoption going up. Drupal 8 should hit critical mass by the end of 2016./p a href= more.../a

Glassdimly tech Blog: Add Drupal 7 Flag/Unflag Links to View for All Available Actions

Fri, 06/03/2016 - 22:55
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpThe view relationship for Flag module only allows you to set a single flag type as a target, which means only one flag type is available on a views row./p pMy specific use case is adding flag/unflag links to the /admin/content page which I've replaced by a view with the a href= Views module/a. I ended up digging around quite a bit through a href= module/a's source code to pop this one out./p/div/div/div

InternetDevels: May 2016 collection: some great contributed modules for Drupal 8

Fri, 06/03/2016 - 16:28
div class=field field--name-field-preview-image field--type-image field--label-hiddendiv class=field__itemsdiv class=field__item evenimg src= width=864 height=578 alt=May 2016 collection: some great contributed modules for Drupal 8 //div/div/divdiv class=field field--name-body field--type-text-with-summary field--label-hiddendiv class=field__itemsdiv class=field__item evenpemDrupal 8, the newest CMF version with lots of innovations we told you about (in a href= target=_blankPart 1/a and a href= target=_blankPart 2/a), has been around for half a year now. The tireless community members keep working every day on making it better. /em/p a href= more/a/div/div/div