Planet Drupal

Syndicate content
Drupal.org - aggregated feeds in category Planet Drupal
Updated: 20 min 37 sec ago

Cocomore: „Memories“ and more: These new features make Snapchat even more attractive for businesses

Wed, 08/03/2016 - 00:00
pUntil recently one of the biggest contradictions in social media was called: Snapchat and consistency. In early July Snapchat put an end to this. The new feature Memories now allows users to save images. Next to Memories Snapchat further developed the platform also on other positions. We show what opportunities the new changes offer for businesses./p

Janez Urevc: Release of various Drupal 8 media modules

Tue, 08/02/2016 - 22:36
spanRelease of various Drupal 8 media modules/span div class=field field--name-body field--type-text-with-summary field--label-hidden field--itempToday we released new versions of many Drupal 8 media modules. This release is specially important for a href=https://drupal.org/project/entity_browserEntity browser/a and a href=https://drupal.org/project/entity_embedEntity embed/a modules since we released the last planned alpha version of those modules. If there will be no critical bugs reported in next two weeks we'll release first beta versions of those modules./p pList of all released modules:/p ullia href=https://drupal.org/project/entity_browserEntity browser/a 8.x-1.0-alpha7. There are some BC breaking changes in this version of the module. You will need to update modules that depend on or provide integration with it. For more information check the a href=https://www.drupal.org/project/entity_browser/releases/8.x-1.0-alpha7release notes/a./li lia href=https://drupal.org/project/entity_embedEntity embed/a 8.x-1.0-alpha3. /li lia href=https://drupal.org/project/dropzonejsDropzoneJS/a 8.x-1.0-alpha2./li lia href=https://drupal.org/project/media_entityMedia entity/a 8.x-1.3./li lia href=https://drupal.org/project/media_entity_imageMedia entity image/a 8.x-1.3./li lia href=https://drupal.org/project/media_entity_audioMedia entity audio/a 8.x-1.0-beta3./li lia href=https://drupal.org/project/media_entity_instagramMedia entity Instagram/a 8.x-1.2./li lia href=https://drupal.org/project/media_entity_twitterMedia entity Twitter/a 8.x-1.2./li lia href=https://drupal.org/project/media_entity_slideshowMedia entity slideshow/a 8.x-1.1./li /ul/div spanspan lang= about=/users/slashrsm typeof=schema:Person property=schema:name datatype=slashrsm/span/span spanTue, 02.08.2016 - 22:36/span div class=field field--name-field-tags field--type-entity-reference field--label-inline div class=field--labelTags/div div class=field__items div class=field--itema href=/tags/drupal hreflang=enDrupal/a/div div class=field--itema href=/tags/media hreflang=enMedia/a/div /div /div div class=field field--name-field-related field--type-entity-reference field--label-above div class=field--labelEnjoyed this post? There is more!/div div class=field__items div class=field--itema href=/we-had-great-and-productive-time-at-nyc-sprint hreflang=enWe had great and productive time at NYC sprint!/a/div div class=field--itema href=/sam-morenson-thinking-about-media-drupal-core hreflang=enSam Morenson is thinking about media in Drupal core/a/div div class=field--itema href=/presentations-about-various-drupal-8-media-modules hreflang=enPresentations about various Drupal 8 media modules/a/div /div /div div class=field field--name-disqus field--type-disqus-comment field--label-hidden field--itemdiv id=disqus_thread class=form-groupnoscript p a href=http://janezurevc.name/release-of-various-drupal-8-media-modulesView the discussion thread./a /p /noscript/div /div

Phponwebsites: Multiple URL alias for a node in pathauto - drupal 7

Tue, 08/02/2016 - 16:38
div dir=ltr style=text-align: left; trbidi=onnbsp; nbsp;As we discussed in my a href=http://www.phponwebsites.com/2016/07/drupal-7-pathauto-remove-special-characters-url-alias.htmlprevious post/a, clean URL is one of the option to improve SEO. We've module called pathauto to clean URLs in drupal 7. It can allow us to set alias for content types, files, users amp; taxonomies. But we can set only one URL alias for a content type in drupal 7.nbsp;You can set URL alias for a content type at admin/config/search/path/patterns. It looks like below image:br /br /br /div class=separator style=clear: both; text-align: center;a href=https://2.bp.blogspot.com/-6O6uGaVsC4Q/V5po0Sp9N1I/AAAAAAAAAwE/p1A8uwifsXcCct6QBazcw5SMdkF3el8jQCLcB/s1600/drupal-7-pathauto-set-url-alias.png imageanchor=1 style=margin-left: 1em; margin-right: 1em;img alt=Pathauto module patterns in drupal 7 border=0 height=155 src=https://2.bp.blogspot.com/-6O6uGaVsC4Q/V5po0Sp9N1I/AAAAAAAAAwE/p1A8uwifsXcCct6QBazcw5SMdkF3el8jQCLcB/s320/drupal-7-pathauto-set-url-alias.png title=Pathauto module patterns in drupal 7 width=320 //a/divbr /br /nbsp; nbsp;Suppose you need two path for a content. For instance, the URL alias for a article need to node title and also article/node-title. Is it possible to set multiple path alias for a content type in drupal 7? Yes it is possible in drupal 7. We can set multiple URL alias for a conten type programmatically using pathauto module in drupal 7. We need to insert our path alias into the url_alias table while inserting amp; updating a node and remove path alias When delete a node.br /br /h3 style=text-align: left;span style=font-weight: normal;Add URL alias programmatically when insert and update a node using pathauto module in drupal 7:/span/h3br /nbsp; nbsp; For instance, I've choosen article content type. We need to insert amp; update a URL alias into the url_alias table using hook_node_insert() amp; hook_node_update() in drupal 7.br /br /div class=bdrbr //**br /nbsp;* Implements hook_node_insert()br /nbsp;*/br /function phponwebsites_node_insert($node) {br /nbsp; if ($node-gt;type == 'article') {br /nbsp; nbsp; //save node aliasbr /nbsp; nbsp; _phponwebsites_insert_update_alias($node);br /nbsp; }br /}br /br //**br /nbsp;* Implements hook_node_update()br /nbsp;*/br /functionnbsp;phponwebsites_node_update($node) {br /nbsp; if ($node-gt;type == 'article') {br /nbsp; nbsp; //update node aliasbr /nbsp; nbsp; _phponwebsites_insert_update_alias($node);br /nbsp; }br /}br /br //**br /nbsp;* Insert and update alias for coursebr /nbsp;*/br /function _phponwebsites_insert_update_alias($node) {br /nbsp; module_load_include('inc', 'pathauto');br /nbsp; $title = pathauto_cleanstring($node-gt;title);br /br /nbsp; $values['source'] = 'node/' . $node-gt;nid . '/article';br /nbsp; $values['alias'] = 'article/' . $title;br /br /nbsp; $all_values = array($values);br /br /nbsp; foreach ($all_values as $all) {br /nbsp; nbsp; $query = db_merge('url_alias')br /nbsp; nbsp; nbsp; -gt;fields(array('source' =gt; $all['source'], 'alias' =gt; $all['alias'], 'language' =gt; LANGUAGE_NONE))br /nbsp; nbsp; nbsp; -gt;key(array('source' =gt; $all['source']))br /nbsp; nbsp; nbsp; -gt;execute();br /nbsp; }br /}br /br //divbr /br /Where,br /nbsp;pathauto_cleanstring is obey the pathatuo module's rules which is mentioned at admin/config/search/path/settings. To know more details of pathauto_cleanstring, please visit a href=http://www.drupalcontrib.org/api/drupal/contributions!pathauto!pathauto.inc/function/pathauto_cleanstring/7http://www.drupalcontrib.org/api/drupal/contributions!pathauto!pathauto.inc/function/pathauto_cleanstring/7/abr /br /After added the above code into your custome module(clear cache), you will create a article. You just test your url at admin/config/search/path in the pathauto's list. It looks like below image:br /br /br /div class=separator style=clear: both; text-align: center;a href=https://1.bp.blogspot.com/-D0Im-Y977cM/V5po8OYKBhI/AAAAAAAAAwI/8YFiXsiO3G4P1iYutAInEe81pwQl0UahQCLcB/s1600/drupal-7-pathauto-multiple-url-alias.png imageanchor=1 style=margin-left: 1em; margin-right: 1em;img alt=Pathauto module URL alias list in drupal 7 border=0 height=159 src=https://1.bp.blogspot.com/-D0Im-Y977cM/V5po8OYKBhI/AAAAAAAAAwI/8YFiXsiO3G4P1iYutAInEe81pwQl0UahQCLcB/s320/drupal-7-pathauto-multiple-url-alias.png title=Pathauto module URL alias list in drupal 7 width=320 //a/divbr /br /Now you could access the article by both node-title as well as article/node-title.br /br /br /div class=separator style=clear: both; text-align: center;a href=https://3.bp.blogspot.com/-on0Fp7LWlxc/V5ppctqky-I/AAAAAAAAAwM/e6zgtdgCNlUjsuTX_bbIt43nrzpBU5FgwCLcB/s1600/drupal-7-pathauto-multiple-url-alias-for-node.png imageanchor=1 style=margin-left: 1em; margin-right: 1em;img alt=Multiple URL alias for a node using pathauto module in drupal 7 border=0 height=320 src=https://3.bp.blogspot.com/-on0Fp7LWlxc/V5ppctqky-I/AAAAAAAAAwM/e6zgtdgCNlUjsuTX_bbIt43nrzpBU5FgwCLcB/s320/drupal-7-pathauto-multiple-url-alias-for-node.png title=Multiple URL alias for a node using pathauto module in drupal 7 width=278 //a/divbr /br /br /h3 style=text-align: left;span style=font-weight: normal;Delete URL alias programmatically when delete a node using pathauto module in drupal 7:/span/h3br /nbsp; nbsp; nbsp;We've inserted 2 URL alias for a node. So we need to delete those from url_alias table when delete a node. We can trigger it using hook_node_delete() in drupal 7. Consider the below code:br /br /br /div class=bdrbr //**br /nbsp;* Implements hook_node_delete()br /nbsp;*/br /function arep_node_delete($node) {br /nbsp; if ($node-gt;type == 'article') {br /nbsp; nbsp; //delete node alias for ceu and non-ceu coursebr /nbsp; nbsp; module_load_include('inc', 'pathauto');br /nbsp; nbsp; $source[0] = 'node/' . $node-gt;nid . '/article';br /br /nbsp; nbsp; foreach ($source as $s) {br /nbsp; nbsp; nbsp; $path = path_load(br /nbsp; nbsp; nbsp; nbsp; array('source' =gt; $s)br /nbsp; nbsp; nbsp; );br /nbsp; nbsp; nbsp; path_delete($path['pid']);br /nbsp; nbsp; }br /br /nbsp; }br /}/divbr /br /Where,br /nbsp; path_load returns the details of a URL alias like source, alias, path id nbsp;amp; language. To know more details of path_load(), please visit a href=https://api.drupal.org/api/drupal/includes!path.inc/function/path_load/7.x.https://api.drupal.org/api/drupal/includes!path.inc/function/path_load/7.x./abr /br /After added the above code into your customer module(clear cache), you will delete a node and check your URL alias at admin/config/search/path. Now tt should not be displayed here.br /br /Now I've hope you know how to set multiple URL alias for a content type.br /br /div itemscope= itemtype=http://schema.org/WebPagebRelated articles:/bbr /ba href=http://www.phponwebsites.com/2016/07/drupal-7-pathauto-remove-special-characters-url-alias.html itemprop=relatedLinkRemove speical characters from URL alias using pathauto module in Drupal 7/a/bbr /ba href=http://www.phponwebsites.com/2015/12/drupal-7-hook-menu-add-link-into-menu-programmatically.html itemprop=relatedLinkAdd new menu item into already created menu in Drupal 7/a/bbr /ba href=http://www.phponwebsites.com/2015/12/drupal-7-hook-menu-add-class-into-menu-item-programmatically.html itemprop=relatedLinkAdd class into menu item in Drupal 7/a/bbr /a href=http://www.phponwebsites.com/2015/12/drupal-7-hook-menu-create-menu-tab-programmatically.html itemprop=relatedLinkbCreate menu tab programmatically in Drupal 7/b/abr /a href=http://www.phponwebsites.com/2015/12/drupal-7-add-custom-fields-to-search-api-solr-index.html itemprop=relatedLinkbAdd custom fields to search api index in Drupal 7/b/abr /a href=http://www.phponwebsites.com/2016/04/clear-views-cache-when-insert-update-delete-node-drupal-7.html itemprop=relatedLinkbClear views cache when insert, update and delete a node in Drupal 7/b/abr /a href=http://www.phponwebsites.com/2016/04/render-page-without-header-footer-drupal-7.html itemprop=relatedLinkbCreate a page without header and footer in Drupal 7/b/abr /a href=http://www.phponwebsites.com/2016/04/login-using-email-and-username-in-drupal-7.html itemprop=relatedLinkbLogin using both email and username in Drupal 7/b/a/divbr //div

Zivtech: You Don't Know Git!

Tue, 08/02/2016 - 15:57
div class=field-body I’m going to put it out there. This blog is not for senior developers or git gurus; I know you know git. This post is for the noobs, the career-changers like me. If I could go back in time, after I had graduated from my three month web development bootcamp, I would tell myself, “You don’t know git!”br /br / I can hear myself saying, “But I know the workflow. I know to pull from master before starting a new branch. I know to avoid merge conflicts. I git add -A. I know what’s up.”br /br / No. No. No. h2Fix Your Workflow/h2 br / If there’s one command you want to know, it’s this: codelt;codegt; git add -p lt;/codegt;/code This command changed my entire workflow and was tremendously helpful. In bootcamp, you learn the basics of git and move on. You generally learn: codelt;codegt;git add -Alt;/codegt; /code div class=rteindent1or/div codelt;codegt;git add .lt;/codegt; /code This stages all the changes that you’ve made to the repository or all the changes you’ve made from your current directory. This worked during bootcamp because the changes were small, and I was often just committing to my own repository. Once I switched over to Drupal and started working with Features, I realized that after I would make updates, not all of the files that were showing up in code were things I had changed. How could that be?! h2Work with Your Team/h2 br / I was working on a project with other developers who were also working on the same feature. I had to learn -p so that I could be a responsible member of the team and only commit what I had changed. That’s why it’s so important to use this command: codelt;codegt;git add -plt;/codegt;/code If you’re ever unsure about a command in git, just type this command: code lt;codegt;git add --helplt;/codegt; /code The git manual will then show you all the options you can use, like this: div class=rteindent1 /div code -p, --patch /code blockquote divInteractively choose hunks of patch between the index and the work tree and add them to the index. This gives the user a chance to review the difference before adding modified contents to the index./div /blockquote br / Essentially, it allows you to review each file to determine what changed, and if you want to stage it or not. br /div class=asset-wrapper asset aid-200 asset-image editor contenteditable=false data-asset-cid=1470059586921 div class=content div class=field-asset-imageimg alt= height=567 src=/sites/default/files/styles/asset_image_full/public/assets/images/git_blog.png?itok=UJdXGFdw width=472 //div div class=field-asset-image-copyright /div div class=field-asset-image-description /div /div /div In the example above, I made changes to my .gitignore file. I deleted the line in red, and added the line in green. Then it asks you what you want to do with those changes. If you type in ‘?’ and push enter, it will explain what your options are. br /br / Not only does it help by preventing you from staging code that isn’t yours, it’s also helpful as a new developer to see what changed. In Drupal, you can think that you’re making a small change in the UI, but then see a ton of altered files. Using -p has helped me figure out how Drupal works, and I’m a lot more confident about what I’m staging now.br /br / Now go out there and lt;codegt;git add -plt;/codegt; all of your changes and be the granular committer I know you can be!br / /div nav role=navigation class=links-inline/nav

OSTraining: How to Use Entity Print in Drupal 8

Tue, 08/02/2016 - 14:04
pAn OSTraining member asked us how to configure thenbsp;a href=https://www.drupal.org/project/entity_printEntity Print module/anbsp;with Drupal 8./p pThis module allows you to make a PDF version of your nodes/p pI would recommend that you install Entity Print using Drush, because you will need to install also need to install a composer package. This package contains the library to create PDFs./p

ComputerMinds.co.uk: Drupal 8 Namespaces - class aliasing

Tue, 08/02/2016 - 14:00
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-items id=md1div class=field-item even itemprop=articleBodypstrongClass Aliasing/strong is the simple, but emvery/em useful solution to the problem of needing to use two classes (from different namespaces) with the same name./p /div/div/div

Talha Paracha: GSoC'16 – Pubkey Encrypt – Week 10 Report

Tue, 08/02/2016 - 02:00
pI started this week’s work by finishing the integration of cookies into my module. To give you some context, Pubkey Encrypt now uses cookies for temporarily storing the Private key for any user upon login. Previously, we were using sessions for this purpose, but we’ve just shifted to this new approach because Pubkey Encrypt aims to protect a website’s Data-at-Rest in compromised servers. Since sessions get stored in the servers too, the module cannot rely on sessions for keeping any secret information./p

Jeff Geerling's Blog: Hide the page title depending on a checkbox field in a particular content type

Tue, 08/02/2016 - 00:55
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpIn Drupal 8, many small things have changed, but my willingness to quickly hack something out in a few lines of code/config instead of installing a relatively large module to do the same thing hasn't :-)/p pI needed to add a checkbox to control whether the page title should be visible in the rendered page for a certain content type on a Drupal 8 site, and there are a few different ways you can do this (please suggest alternatives—especially if they're more elegant!), but I chose to do the following:/p ollipAdd a 'Display Title' boolean field (checkbox, using the field label as the title, and setting off to code0/code and on to code1/code in the field settings) to the content type (codepage/code in this example)./p pimg src=//www.jeffgeerling.com/sites/jeffgeerling.com/files/images/page-title-display-checkbox-drupal-8.png width=387 height=150 alt=Drupal 8 Basic Page 'Display Title' checkbox class=insert-image //p/li/ol/div/div/div

myDropWizard.com: A Survey! Is Drupal Hard?

Tue, 08/02/2016 - 00:04
div class=field field-name-field-featured-image field-type-image field-label-hiddendiv class=field-itemsdiv class=field-item evenimg class=panopoly-image-half src=https://www.mydropwizard.com/sites/default/files/styles/panopoly_image_half/public/blog/drupal-learning-curve-vs-other-cms-450x436.png?itok=osI7tJIQ alt=The cliche Drupal Learning Curve Graph //div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpI attended a href=https://drupalcampwi.org/Drupal Camp WI/a at the University of Wisconsin-Madison this weekend./ppThere was a fantastic presentation called a href=https://drupalcampwi.org/node/1/sessions/keynote-why-drupal-so-hardWhy Is Drupal So Hard?/a by a href=https://twitter.com/eojthebraveJoe Shindelar/a at a href=http://drupalize.meDrupalize.me/a/ppIt got me thinking about myDropWizard, our clients, and what path people are taking at this current crossroad of Drupal 6 -gt; Drupal 7 -gt; Drupal 8 versus going a different path. Sometimes when you are too close to a question, you shouldn't be the one answering it. So, I'd like to ask you, the world!/ppI'll share the results in a future blog post, and I'll share my thinking about what the results mean./ppIf you have any criticisms of the survey, please share those with me! I think this is just the first of a few surveys that we can do./ppI hope this is fun, and I know it's not scientific. However, I am hoping that it continues the discussion within the Drupal Community in regards to what we should do?/ppWithout further ado: a href=https://www.mydropwizard.com/content/drupal-hard-surveyHere is the survey!/a/pp/div/div/div

Drupal Association News: Changes for the Drupal Association Engineering Team

Mon, 08/01/2016 - 21:06
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpimg alt= src=/files/git-icon.png style=width: 120px; height: 191px; margin: 5px; float: left; /This article is the next part in our series about a href=https://assoc.drupal.org/blog/megansanicki/drupal-associations-12-month-focusrecent changes/a at the Drupal Association. I'll be focusing on what these changes mean for the Engineering team and the impact that will have on the work we're doing for the Drupal Community./p pOur a href=https://assoc.drupal.org/aboutmission/a is to unite a global open source community to build and promote Drupal. There are two audiences implicit in that mission - the community of contributors that build Drupal, and the customers and end-users for whom Drupal is the solution they need./p pIn the run-up to the release of Drupal 8, our strongest imperative was to support the strongcontribution journey/strong on Drupal.org -- that is, to maintain, refine, and enhance the developer tools that allowed our community to ship Drupal 8./p pFollowing the release of Drupal 8, our imperative now is to support the strongadoption journey/strong on Drupal.org -- and specifically to support those evaluators with ambitious digital needs, who will benefit from the kind of solution that Drupal can provide./p pThis change in our imperative also comes in a time when our engineering team is shrinking from a team of nine to a team of five. These positions handle all the technical needs of Drupal.org and the subsites: from answering support tickets from the community; to infrastructure maintenance; to managing services like updates, composer, and DrupalCI; to architecture and engineering to create solutions for the evolving needs of the project./p h2 Our Roadmap/h2 pFor the next 12 months the engineering team's focus will be:/p pstrong1. Supporting the sustainability and fiscal health of the Association./strong/p pThis means focusing on work that promotes both the mission and the revenue model of The Association. This might be anything from finding ways to promote DrupalCon attendance on Drupal.org, to creating placements for partners who may be interested in sponsoring specific parts of the tooling or infrastructure that we maintain./p pstrong2. Transforming the adoption journey for Drupal evaluators./strong/p pShifting our focus to the Drupal evaluators means transforming the home page of Drupal.org. We need  to reach end-users and customers who are looking for solutions that Drupal is uniquely suited to solve. Building this adoption journey means highlighting Drupal success stories. These stories might be about higher education, government, non-profit, or other markets - but in every case these will be real stories of concrete needs solved with concrete solutions built in Drupal.br /br /strong3. Sustaining the tools the community needs to continue porting modules and making point releases of Drupal 8./strong/p pWe will continue to sustain the tooling and infrastructure that the community uses every day to build Drupal. From taking Drupal.org's Composer repositories from from beta to stable, to fixing bugs in DrupalCI, to maintaining the issue queues—keeping the basic machinery of contribution of Drupal.org running smoothly is still our mandate. However, we won't be introducing new features or transformative changes [quite yet]./p pstrong4. Studying our developer tools and planning the work we want to do to continue to improve the contribution journey, when we have the resources to do so again./strong/p pWhile we're not going to be transforming the developer tools on Drupal.org in the near term, we are going to be studying those tools. Under the direction of the a href=https://assoc.drupal.org/about/boardDrupal Association Board/a, we have formed a Technical Advisory Committee consisting of a few staff and community members to plan a tooling study, with 2 goals: 1) To improve the developer experience on Drupal.org. 2) Explore options for monetization, perhaps by offering private repositories, testbots, or similar./p pAnd beyond these 4 cornerstones of our roadmap, we will continue to support Drupal.org community initiatives. Great work has been done and is still being done with the help of the community to advance DrupalCI, Composer, Documentation, the Project Applications process, and more. We want to continue to support the community in helping us to make Drupal.org a better home./p h2 By the wayside… for now/h2 pThere is some work that we no longer have the capacity to do. While we will look for opportunities for incremental improvements in these areas if and when our other work coincides, we will not make this work our priority:/p ulli New developer tools ulli While we are conducting the study alluded to above, we do not have short-term plans to create new developer tools./li /ul/li li Ongoing implementation of a href=https://www.drupal.org/node/2481515the content strategy/a ulli Support section/li li News amp; Events section/li li Governance section/li li etc./li /ul/li li Feature improvements for subsites like events.drupal.org and jobs.drupal.org/li li Staff contributions to the community-lead D8 initiatives (such as strongBlocks and Layouts/strong and strongWorkbench and Deploy/strong)/li /ulpThat said, no part of Drupal.org exists in a vaccuum, so as we make the changes that are prioritized you will see some ripple effects throughout the rest of the site. Two recent changes come to mind as examples. Firstly, the change in follow button styles. This small change in iconography was part of deploying the last of our work on the new documentation tools for Drupal.org - but it was important for us to apply that change globally, providing a consistent metaphor for following content throughout the site. Secondly, the recent change to move user links to a user menu in the header of Drupal.org. This change was done to support upcoming editorial changes to the front page of Drupal.org, but with very little extra effort we've applied that improvement throughout the rest of the sub-sites./p h2 How you can help/h2 h3 As an individual or small group of volunteers:/h3 pYou can help us make incremental improvements. If you see small changes on Drupal.org that would make a big impact, you can a href=https://www.drupal.org/drupalorg/docs/build/development-environmentsrequest a Drupal.org development site/a, and submit a patch. If you're looking for a way to make a contribution, take a look at issues that have been a href=https://www.drupal.org/project/issues/search?text=amp;projects=amp;assigned=amp;submitted=amp;project_issue_followers=amp;status[0]=1amp;status[1]=13amp;status[2]=8amp;status[3]=14amp;status[4]=15amp;amp;amp;issue_tags_op=%3Damp;issue_tags=d.o%20hitlist%2C%20D.o%20UX%2C%20d.o%20profile%20improvements%2C%20affects%20Drupal.org%2C%20d.o%20issue%20workflow%2C%20d.o%20account%20creationtagged for Drupal.org/a. You can also reach out to me through my a href=https://www.drupal.org/user/54034/contactDrupal.org contact form/a, on IRC as hestenet, or on the a href=http://drupalslack.herokuapp.com/Drupal Slack/a as hestenet./p pIf you would like to propose a larger initiative to make a change on Drupal.org, you can a href=https://www.drupal.org/drupalorg/roadmap/community-initiativessubmit a Community Initiative proposal/a. Past and present community initiatives have included collaboration with DA staff on work such as: developing DrupalCI, adding two-factor authentication, supporting Composer on Drupal.org, creating a security advisory content type on Drupal.org, and revamping the Project Applications process./p h4 As an organization that uses Drupal:/h4 pYou can join the Drupal Association as an a href=https://assoc.drupal.org/membershiporganization member/a or a a href=https://www.drupal.org/supporterssupporting partner/a. Your partnership directly supports the tooling and infrastructure that helps the community build Drupal, and supports our effort to reach out to customers and end-users who have yet to discover Drupal./p pIf you would like to make an even greater impact, you can directly sponsor the a href=https://www.drupal.org/roadmapDrupal.org roadmap/a. In fact, our work on Drupal.org's Composer support was sponsored by a href=http://www.appnovation.comAppnovation/a in partnership with a world-leading life sciences company. By choosing to fund a particular item on our roadmap you'll be credited as a sponsoring organization, and we'll post a case study explaining how your sponsorship enabled us to better support the community. If your organization is interested in roadmap sponsorship, please don't hesitate to a href=https://www.drupal.org/user/54034/contactreach out/a./p h3 img alt=Tim Lehnen(hestenet) at the Drupal Association src=/files/tim-lehnen-at-drupal-association.jpg style=width: 120px; height: 120px; margin: 2px 8px; float: left; /About Tim/h3 pTim Lehnen (a href=https://www.drupal.org/u/hestenethestenet/a) joined the Drupal Association in November of 2014 as Project Manager. He now leads the engineering team and helps coordinate community initiatives on Drupal.org. You'll see Tim in the issue queues, on IRC, or at DrupalCon./p pWhen he's not heads down in a scrum board, Tim can be found writing code for Arduino or novels for young adults. He lives in Portland, OR, USA./p /div/div/div

Cryptic.Zone: Slack Chat: Chatting with Visitors on a Drupal Site

Mon, 08/01/2016 - 17:34
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpSince we switched to Slack as the primary means of communication at work, Slack has grown to be my favorite chat application. Not only does it have a very pleasant interface, but it also offers great ways to integrate it with your application. As a matter of fact, their API is among the least restrictive ones in my experience. As a result of the joy of working the Slack API, a href=https://www.drupal.org/project/slack_chatSlack chat module/a was born to serve as a proof of concept for embedded Drupal-to-Slack chat functionality./p/div/div/div

lakshminp.com: Drinking the Drupal-Composer Kool-Aid?

Mon, 08/01/2016 - 17:31
div class=field-bodypDo you want to manage modules and dependencies the PHP way instead of the Drupal way? Don't know how to use composer with Drupal? Are you planning to ditch drush make approach and adopt a composer based workflow?/p pIf you answered yes to any of the above questions, then you should read this post./p h1Compose what?/h1 pComposer is PHP equivalent of Python's pip, Ruby's bundler and Node's npm. It helps manage projects and dependencies for a PHP project./p h1Why Composer?/h1 pThe average PHP developer wrote 3.5 frameworks in their lifetime. This was before the era of package management. Then came along PEAR. PEAR did the job, but had some flaws. To point out one, for instance, PEAR installs packages globally instead of installing them on a per-project basis. So, if you install Acme libary v1.2, you had to use Acme v1.2 throughout all of your projects. Thankfully, Composer has succeeded PEAR as the de facto package manager for PHP./p h1The Drupal context/h1 pModules and themes in Drupal are managed by drush, specifically drush make. Both composer and drush make do the same thing, i.e. download and install specific versions of Drupal modules and themes. Composer has an extra ingredient called autoload. This automagically figures out where your dependency files are there and includes them in your code as needed. Drupal 8 core adopted composer as the dependency manager. So if composer is great, why isn't everybody using it? To bridge this gap, Drupal 8 brought in a module called composer manager. This module helps manage composer dependencies of contrib modules. This might otherwise be done by editing Drupal 8 core's root composer.json and adding our module's composer dependencies there(which amounts to hacking the core)./p pSo, if module codeacme/code depends on package codefoo/code, it will have a composer.json in the module's root directory with codefoo/code added as a dependency. Composer manager will add codefoo/code to Drupal's vendor directory. Starting with Drupal 8.1, we no longer need Composer manager to manage module dependencies. It can be done by composer alone. Let's take a look at how we pull this off./p pMake sure you have Drupal 8.1.x installed and setup. Let's download the codeaddress/code module using composer./p precode/v/w/h/drupal-8.1.1↪ composer require drupal/address 8.1.*@dev Warning: This development build of composer is over 60 days old. It is recommended to update it by running /usr/local/bin/composer self-update to get the latest version. ./composer.json has been updated Loading composer repositories with package information Updating dependencies (including require-dev) Your requirements could not be resolved to an installable set of packages. Problem 1 - The requested package drupal/address could not be found in any version, there may be a typo in the package name. Potential causes: - A typo in the package name - The package is not available in a stable-enough version according to your minimum-stability setting see lt;https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussiongt; for more details. Read lt;https://getcomposer.org/doc/articles/troubleshooting.mdgt; for further common problems. Installation failed, reverting ./composer.json to its original content. /code/pre pAdd packagist as a repository in your codecomposer.json/code for the lookup to succeed./p pstrongNOTE/strong this is a one time thing and you needn't do it for every module./p precode/v/w/h/drupal-8.1.1↪ composer config repositories.drupal composer https://packagist.drupal-composer.org/ /code/pre pYour #96;composer.json#96; will have an entry for #96;repositories.drupal#96;./p precoderepositories: { drupal: { type: composer, url: https://packagist.drupal-composer.org/ } } /code/pre pNow, another shot at it./p precode/v/w/h/drupal-8.1.1↪ composer require drupal/address 8.1.*@dev ./composer.json has been updated Loading composer repositories with package information Updating dependencies (including require-dev) Nothing to install or update Generating autoload files gt; Drupal\Core\Composer\Composer::preAutoloadDump gt; Drupal\Core\Composer\Composer::ensureHtaccess /code/pre pNOTE that this might take a bit of time if you have a lot of composer dependencies cached./p pEnable codeaddress/code module, either via the UI or using drush./p precode/v/w/h/drupal-8.1.1↪ drush en address -y The following extensions will be enabled: address Do you really want to continue? (y/n): y address was enabled successfully. [ok] address defines the following permissions: administer address formats, administer zones /code/pre pAll set to rock!/p pSo, what happened behind the scenes?/p pcodeAddress/code module had a codecomposer.json/code which reads like this:/p precode{ name: drupal/address, type: drupal-module, description: Provides functionality for storing, validating and displaying international postal addresses., homepage: http://drupal.org/project/address, license: GPL-2.0+, require: { commerceguys/intl: dev-master, commerceguys/addressing: dev-master, commerceguys/zone: dev-master }, minimum-stability: dev } /code/pre pThe above codecommerceguys/*/code dependencies got installed in the main vendor/ directory by composer./p pimg src=/sites/default/files/composer-vendor-dir.png alt=composer vendor directories in Drupal docroot //p pWhat are the shortcomings of using composer alone to manage modules? For one, it would be too developer focused, in the sense that site builders(common audience for Drupal) won't be able to use it because of the complexity involved. When they have to download a module and enable it(a very common operation in Drupal), they can't do it entirely through the UI and have to run composer commands in the backend./p pHow to update modules using composer? We shall talk about that in the next post./p /div span class=tag-link a href=/categories/drupalDrupal/a,/span span class=tag-link a href=/categories/drupal-8Drupal 8/a,/span span class=tag-link a href=/categories/drupal-planetDrupal Planet/a/span

TimOnWeb.com: Creating content blocks programmatically in Drupal 8

Mon, 08/01/2016 - 15:06
pLet#39;s picture this: you#39;ve created a custom content block type (let#39;s say, Ad block) in your shiny new Drupal 8 installation and you want to automaticaly create a fresh new block of that type each time you create a taxonomy term (Ad group), so that every ad group has a .../p pa href=http://timonweb.com/posts/creating-content-blocks-programmatically-in-drupal-8/ class=btnRead now/a/p

Cocomore: Configuration of Sitecore Analytics Dashboards part 1: It’s not that easy after all

Mon, 08/01/2016 - 00:00
pWho doesn’t love them, the colorful graphics and charts that deliver a mass of information to understand our users better. Analytical tools help to continually improve websites based on complex statistical data. One of those analytical tools is the Sitecore Analytics Dashboard. We will talk about our experience with it here./p

Out About On The Third Rock: A product owner’s guide to writing acceptance criteria for user stories

Sat, 07/30/2016 - 23:41
#8216;I want to create a practical guide for product owners to facilitate them in writing acceptance criteria for user stories so that their output is of value to the scrum team#8217; #160; You#8217;ll find pages after pages describing what an acceptance criteria is and how to write a good one, what it should include or [#8230;]

DrupalEasy: DrupalEasy Podcast 183 - Higher Ed - Shawn DeArmond

Sat, 07/30/2016 - 18:00
pa href=https://drupaleasy.podbean.com/mf/play/bnyi36/DrupalEasy_ep183_20160721.mp3Direct .mp3 file download./a/p p(a href=https://www.drupal.org/u/shawn-dearmondShawn DeArmond/a) is a web architect at UC Davis in Sacramento, California. Ryan and Anna interview Shawn about the Drupal Higher Ed summits at DrupalCon and BADCamp, and discuss news from the past week, including Dreamweaver, Drupal 7.50, the boy who cried wolf nature of a recent security advisory, picks of the week, and five questions./p h2Interview/h2 ullia href=http://sitefarm.ucdavis.eduUC Davis Drupal 8 Distro/a /li lia href=https://events.drupal.org/neworleans2016/higher-ed-summitDrupalCon Higher Ed Summit/a/li lia href=https://2015.badcamp.net/event/summit/higher-ed-summitBADCamp Higher Ed Summit/a/li lia href=http://sacdrupal.org/Sacramento DrupalCamp, Aug 13/a/li /ulh2DrupalEasy News/h2 ulliThe Fall, 2016 session of Drupal Career Online begins September 26; a href=https://www.drupaleasy.com/academy/dco/course-informationapplications are now open/a. /li lia href=https://events.drupal.org/dublin2016/training/d8-module-developmentIntroduction to Drupal 8 Module Development/a workshop at DrupalCon Dublin - taught by Mike - Monday, September 26, 2016. /li /ulh2Three Stories/h2 ullia href=http://blogs.adobe.com/dreamweaver/2016/06/see-how-dreamweaver-is-transforming-for-the-future.htmlSee How Dreamweaver is Transforming for the Future/a /li lia href=https://www.drupal.org/blog/drupal-7-50Drupal 7.50 released/a /li lia href=https://www.drupal.org/node/2764899Drupal contrib - Highly Critical/a - was the official communication handled properly? How did the community react? See a href=https://www.js.geek.nz/blog/not-so-highly-criticalNot so highly critical?/a. /li /ulh2Sponsors/h2 ullia href=http://www.mydropwizard.com/drupal-6-ltsMyDropWizard.com/a - Long-term-support services for Drupal 6, 7, and 8 sites. /li lia href=http://webenabled.comWebEnabled.com/a - a href=https://devpanel.comdevPanel/a. /li /ulh2Picks of the Week/h2 ulliShawn - a href=http://probo.ci/Probo.CI/a/li liAnna - a href=https://www.drupal.org/project/paragraphsParagraphs/a/li liRyan - a href=https://www.mediacurrent.com/blog/alternatives-slideshows6 design alternatives to avoid slideshows/a/li /ulh2Upcoming Events/h2 ullia href=https://www.design4drupal.org/Design4Drupal/a - July 22-24./li lia href=https://www.eventbrite.com/e/midwest-drupal-summit-registration-24967217620Midwest Drupal Summit/a - Aug 19 - 22./li lia href=http://2016.drupalcampla.comDrupalCamp LA/a/li lia href=https://2016.badcamp.netBADCamp 2016: October 20-23/a - Higher Education Summit: October 21/li /ulh2Follow us on Twitter/h2 ullia href=https://twitter.com/shawndearmond@shawndearmond/a/li lia href=http://twitter.com/drupaleasy@drupaleasy/a /li lia href=http://twitter.com/andrewmriley@andrewmriley/a /li lia href=http://twitter.com/liberatr@liberatr/a /li lia href=http://twitter.com/ultimike@ultimike/a /li lia href=http://twitter.com/tedbow@tedbow/a /li lia href=http://twitter.com/akalata@akalata/a/li /ulh2Five Questions (answers only)/h2 olliBrew Beer/li li1Blocker on iOS/li liSkydiving/li liAustralian Fruit Bat/li liBen Shell/li /olh2Intro Music/h2 pToo Sexy for my Code by Larry Garfield (a href=https://drupal.org/u/crellcrell/a) from DrupalCon NOLA PreNote./p h2Subscribe/h2 pa href=https://itunes.apple.com/us/podcast/drupaleasy-podcast/id305745575Subscribe to our podcast on iTunes/a, a href=https://play.google.com/music/listen?u=0#/ps/I563aaw7k5rdnq4ofqlzlchiv5iGoogle Play/a or a href=http://www.getmiro.com/Miro/a. Listen to our podcast on a href=http://stitcher.com/s?fid=28701amp;refid=stprStitcher/a./p pIf you'd like to leave us a voicemail, call 321-396-2340. Please keep in mind that we might play your voicemail during one of our future podcasts. Feel free to call in with suggestions, rants, questions, or corrections. If you'd rather just send us an email, please use our a href=http://DrupalEasy.com/contactcontact page/a./pdiv class=feedflare a href=http://feeds.feedburner.com/~ff/DrupalEasy?a=9QUf9QGKfl4:5bKSm2gI0NU:yIl2AUoC8zAimg src=http://feeds.feedburner.com/~ff/DrupalEasy?d=yIl2AUoC8zA border=0/img/a a href=http://feeds.feedburner.com/~ff/DrupalEasy?a=9QUf9QGKfl4:5bKSm2gI0NU:qj6IDK7rITsimg src=http://feeds.feedburner.com/~ff/DrupalEasy?d=qj6IDK7rITs border=0/img/a /divimg src=http://feeds.feedburner.com/~r/DrupalEasy/~4/9QUf9QGKfl4 height=1 width=1 alt=/

ActiveLAMP: Adding pURL Multidomain XMLSitemap

Sat, 07/30/2016 - 04:00
divimg src=http://activelamp.com/images/posts/xml-sitemap.jpg //divpOn a recent project, we had to create multiple sitemaps for each of the domains that we have setup on the site. We came across some problems that we had to resolve because of the nature of our pURL setup./p a href=http://activelamp.com/blog/drupal/adding-purl-multidomain-xmlsitemap/Read more.../a

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

Sat, 07/30/2016 - 02:41
div class=field field-type-datestamp field-field-start7 div class=field-items div class=field-item odd div class=field-label-inline-first Start:nbsp;/div span class=date-display-start2016-08-02 12:00/spanspan class=date-display-separator - /spanspan class=date-display-end2016-08-04 12:00 UTC/span /div /div /div div class=field field-type-userreference field-field-organizers div class=field-labelOrganizers:nbsp;/div div class=field-items div class=field-item odd a href=/user/24722 title=View user profile.xjm/a /div div class=field-item even a href=/user/4521 title=View user profile.catch/a /div /div /div div class=field field-type-text field-field-event-type div class=field-labelEvent type:nbsp;/div div class=field-items div class=field-item odd User group meeting /div /div /div pThe monthly core patch (bug fix) release window is this Wednesday, August 03. Drupal 8.1.8 will be released with dozens of fixes for Drupal 8. a href=https://groups.drupal.org/node/512705Drupal 8.2.0-beta1 will also be released/a sometime during the week to begin preparation for the upcoming minor release in October. There will be no Drupal 7 bugfix release this month./p pTo ensure a reliable release window for the patch and beta releases, there will be a Drupal 8.1.x and 8.2.x commit freeze from 12:00 UTC Tuesday to 12:00 UTC Thursday. (The beta release window may extend later if needed.) Now is a good time to update your development/staging servers to the latest 8.1.x-dev code and help us catch any regressions in advance. If you do find any regressions, please report them in the a href=http://drupal.org/project/issues/drupal?version=8.xissue queue/a. Thanks!/p pTo see all of the latest changes that will be included in the patch release, see the a href=http://cgit.drupalcode.org/drupal/log/8.1.x commit log/a./p pOther upcoming core release windows after this week include:/p ulliWednesday, August 17 (security release window)/li liWednesday, September 07 (patch release window)/li liWednesday, October 5 (scheduled minor release)/li /ulpa href=https://www.drupal.org/drupal-6-eolDrupal 6 is end-of-life/a and will not receive further releases./p pFor more information on Drupal core release windows, see the documentation on a href=http://drupal.org/documentation/version-info#whenrelease timing/a and a href=http://drupal.org/node/1173280security releases/a, as well as the a href=https://www.drupal.org/core/release-cycle-overviewDrupal core release cycle overview/a./p

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

Fri, 07/29/2016 - 22:16
pWe're happy to announce two new releases for the a href=https://www.drupal.org/project/youtubeYouTube Field module/a:/p ul lia href=https://www.drupal.org/node/26979577.x-1.7/a/li lia href=https://www.drupal.org/node/26979598.x-1.0-beta3/a/li /ul pImprovements include:/p ul lia href=https://www.drupal.org/node/2470427Adding a YouTube URL field formatter./a/li lia href=https://www.drupal.org/node/2446343Using Drupal's filesystem when downloading thumbnail images./a/li lia href=https://www.drupal.org/node/2344145Adding the ability to define a default image style used by the YouTube thumbnail token./a/li lia href=https://www.drupal.org/node/2614374Fixing an IE11 bug caused by saving thumbnail images with the wrong filetype./a/li liFixing a number of a href=https://www.drupal.org/node/2653920other/a a href=https://www.drupal.org/node/2679231small/a a href=https://www.drupal.org/node/2675626bugs/a, a href=https://www.drupal.org/node/2694421following code standards/a, and keeping up with a href=https://www.drupal.org/node/2697657deprecations/a and a href=https://www.drupal.org/node/2665288best practices/a for Drupal 8./li /ul pOnce again, it was a community effort. The module has now given credit attribution to a href=https://www.drupal.org/node/1377990/committers28 different people/a. A number of them have been the community member's first attributed commit! Not to mention, endless others have contributed in a href=https://www.drupal.org/project/issues/youtube?categories=Allthe issue queue/a. Thanks to their help, the module has now reached over a href=https://www.drupal.org/project/usage/youtube30,000 installs/a. That's enough to land in the a href=https://www.drupal.org/project/usage?page=1top 200/a!/p h3Why the beta label on the 8.x release?/h3 pThe 7.x-1.x module includes a href=https://www.drupal.org/project/colorboxColorbox/a support, but that support has not yet been ported to the 8.x-1.x branch. a href=https://www.drupal.org/node/2320299We'd love help with that/a! We're planning on removing the beta label once that support is committed. The rest of the module is a direct port of 7.x-1.x and it already reports a healthy number of installs./p h3How else can I help?/h3 pHop in a href=https://www.drupal.org/project/issues/youtube?categories=Allthe issue queue/a and have a look at the outstanding issues for either branch. As previously mentioned, any and all contributions are greatly appreciated!/p

FFW Agency: Real Time Government Personalization

Fri, 07/29/2016 - 21:10
span property=schema:name class=field field--name-title field--type-string field--label-hiddenReal Time Government Personalization/span span 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 class=field field--name-created field--type-created field--label-hiddenFri, 07/29/2016 - 19:10/span div property=schema:articleBody class=clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__itempWe got a great response to our Real-Time Personalization Strategies for Government Websites session at Drupal GovCon last week. Most of the questions we received were from representatives of agencies just beginning to explore their options who wanted to know how to get started and to begin to understand how other agencies have started using personalization./p pSo together with other staff here at FFW we’ve begun to put together a library of personalization use cases. If you work with a government agency or quasi-public authority send us your examples so we can share our findings with your colleagues./p pIn the meantime we’re making a href=http://go.ffwagency.com/personalization-strategies-for-government-websites.htmlour presentation slides/a available as a guide to personalization basics for government agencies. Once again I’d like to acknowledge my colleague Dave Sawyer for his excellent work on this topic. Feel free to contact me directly with questions at ray.saltini@ffwagency.com./p pFor those of you just tuning in, web personalization allows content to be tailored to the interests of the visitor, resulting in increased engagement and better experiences. Personalized content is essential to an effective digital communications strategy, but planning and implementing a personalization solution can be complex and cost prohibitive. /p pThis guide introduces the basics of web personalization and presents several simple ways for government agencies to get started with web personalization using Drupal. It includes:/p p    •    An overview of common personalization use casesbr /     •    A checklist of prerequisites for implementing personalization on a Drupal projectbr /     •    How personalization for authenticated users differs from that of anonymous visitorsbr /     •    Special privacy considerationsbr /     •    Why Drupal is the best CMS to execute a personalization strategy/p pClick on the a href=https://ffwagency.com/personalizationpersonalization/a tag for more information on this topic.br /  /p /div div class=field field--name-field-image field--type-image field--label-hidden field__item picture !--[if IE 9]video style=display: none;![endif]-- source srcset=/sites/default/files/styles/blog_single_desktop/public/Gov-Desktop-1920-549.jpg?itok=1LAYu-_7 1x, /sites/default/files/styles/blog_single_desktopx/public/Gov-Desktop-1920-549.jpg?itok=ucCq4ift 2x media=screen and (min-width: 1601px) type=image/jpeg/ source srcset=/sites/default/files/styles/blog_single_desktop/public/Gov-Desktop-1920-549.jpg?itok=1LAYu-_7 1x, /sites/default/files/styles/blog_single_desktopx/public/Gov-Desktop-1920-549.jpg?itok=ucCq4ift 2x media=screen and (min-width: 1201px) type=image/jpeg/ source srcset=/sites/default/files/styles/blog_single_tablet/public/Gov-Desktop-1920-549.jpg?itok=cefY8O6E 1x, /sites/default/files/styles/blog_single_tabletx2/public/Gov-Desktop-1920-549.jpg?itok=hRjNYT6F 2x media=screen and (min-width: 769px) type=image/jpeg/ source srcset=/sites/default/files/styles/blog_single_mobile/public/Gov-Desktop-1920-549.jpg?itok=ZSgJ7sHi 1x, /sites/default/files/styles/blog_single_mobile2x/public/Gov-Desktop-1920-549.jpg?itok=IazrdRv8 2x media=(min-width: 0px) type=image/jpeg/ !--[if IE 9]/video![endif]-- img property=schema:image srcset=/sites/default/files/styles/blog_single_desktop/public/Gov-Desktop-1920-549.jpg?itok=1LAYu-_7 alt=Laptop and notes typeof=foaf:Image / /picture /div h6 class=field-label headingTagged with/h6 ul class=links field-items lia href=/personalization property=schema:keywords hreflang=enpersonalization/a/li /ul section property=schema:comment h2Comments/h2 drupal-render-placeholder callback=comment.lazy_builders:renderForm arguments=0=nodeamp;1=4036amp;2=field_commentamp;3=ffw_comments token=bc23119d/drupal-render-placeholder /section