Planet Drupal

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

Harry Slaughter: One revision control system to rule them all

Mon, 04/07/2014 - 04:18
pThe first revision control system I ever used was called RCS. It was the pre-cursor to CVS and stored all revision data locally. It was nifty but very limited and not suited for group development. CVS was the first shared revisioning system I used. It was rock solid, IMHO. But it had a few big problems, like the inability to rename or move files. Everything had to be deleted and re-added.nbsp;/p pSince those days, I#39;ve used several other revisioning systems: Perforce, Bitkeeper, Clearcase, Subversion and GIT./ppa href=http://devbee.com/2014/04/one-revision-control-system-to-r target=_blankread more/a/p

High Rock Media: Drupal 8: Attaching Core Libraries and Other Scripts to Your Theme

Mon, 04/07/2014 - 01:54
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item odd property=content:encodedpimg src=http://highrockmedia.com/sites/default/files/styles/adaptive/public/additional-images/hrm-blog-banner-yml-819849953.png width=880 height=250 alt=In this blog post, we learn how to add core and theme scripts in to Drupal 8 using a theme libraries YML or YAML file. title=In this blog post, we learn how to add core and theme scripts in to Drupal 8 using a theme libraries YML or YAML file. class=image-adaptive inline-adaptive //p pFor the past six months, I've been in the process of porting my contrib theme, Gratis, to Drupal 8. One of the challenges for contrib is Drupal 8 has been a constant moving target in terms of API changes. With every new Alpha of Drupal 8, I've had to adjust many bits of theme code to adhere to these new APIs./p pOne of the biggest challenges has been figuring out how to add jQuery and other core scripts into the theme. That's because off the shelf, Drupal 8 does not add these for anonymous users. This seems like an odd choice by core but my guess is that is was done for Drupal 8 to be more minimalistic and nimble on its feet./p pAt any rate, if you have a contrib theme, most likely the first thing you'll do is add all of these back in to bring it back to a point where Drupal 7 was. To add an additional layer of complexity to all this is the fact that the manner in which this is done has changed dramatically in recent weeks./p h2Exit nested arrays, enter YAML/h2 pAt first one added core libraries using codehook_library_info/code which was a mess of PHP nested arrays in your theme's code.theme/code file. Now, in true Drupal 8 fashion, we do this with a code.yml/code or emyaml/em (rhymes with camel) file. YAML is an acronym for Yet Another Markup Language or emAin't Markup Language/em and has become a core method for streamlining code in Drupal 8./p pHere is a basic example of how you can add jQuery to a theme and a few dependencies. You'd do this by creating a code*libraries.yml/code file in the root of your theme. So in my case my theme name is emfoobar/em so the file name would be codefoobar.libraries.yml/code./p pdiv class=geshifilterfoobarspan style=color: #339933;-/spancorescriptsspan style=color: #339933;:/spanbr / nbsp; versionspan style=color: #339933;:/span VERSIONbr / nbsp; jsspan style=color: #339933;:/spanbr / nbsp; nbsp; jsspan style=color: #339933;//spanscriptsspan style=color: #339933;./spanjsspan style=color: #339933;:/span span style=color: #009900;#123;/spanspan style=color: #009900;#125;/spanbr / nbsp; dependenciesspan style=color: #339933;:/spanbr / nbsp; nbsp; span style=color: #339933;-/span corespan style=color: #339933;//spanjquerybr / nbsp; nbsp; span style=color: #339933;-/span corespan style=color: #339933;//spandrupalspan style=color: #339933;./spanajaxbr / nbsp; nbsp; span style=color: #339933;-/span corespan style=color: #339933;//spandrupalbr / nbsp; nbsp; span style=color: #339933;-/span corespan style=color: #339933;//spandrupalSettingsbr / nbsp; nbsp; span style=color: #339933;-/span corespan style=color: #339933;//spanjqueryspan style=color: #339933;./spanonce/div/p pWith the above code, we'll be adding the core scripts emjquery.js, drupal.js, ajax.js and jquery.once.js/em to our theme. This will make it available for anonymous users. With YAML, indentation spaces are relevant so you'll need to get that bit right. In addition, we are calling a theme relative script in the theme's js folder, emscripts.js/em. The name code-corescripts/code can be anything you want as long as it matches when you go to attach it in your code.theme/code file as outlined below./p h2Attach the Library/h2 pThe next step to actually attach the library we created with a theme preprocess function creating a variable in combination with the code#attached/code method./p pdiv class=geshifilterspan style=color: #009933; font-style: italic;/**br / nbsp;* Override or insert variables into the page template.br / nbsp;*//spanbr / span style=color: #000000; font-weight: bold;function/span foobar_preprocess_pagespan style=color: #009900;#40;/spanspan style=color: #339933;amp;/spanspan style=color: #000088;$vars/spanspan style=color: #339933;,/span span style=color: #000088;$hook/spanspan style=color: #009900;#41;/span span style=color: #009900;#123;/spanbr / nbsp; span style=color: #666666; font-style: italic;// Render the library we defined in foobar.libraries.yml/spanbr / nbsp; span style=color: #000088;$libraries/spanspan style=color: #009900;#91;/spanspan style=color: #0000ff;'#attached'/spanspan style=color: #009900;#93;/spanspan style=color: #009900;#91;/spanspan style=color: #0000ff;'library'/spanspan style=color: #009900;#93;/spanspan style=color: #009900;#91;/spanspan style=color: #009900;#93;/span span style=color: #339933;=/span span style=color: #0000ff;'foobar/foobar-corescripts'/spanspan style=color: #339933;;/spanbr / nbsp; drupal_renderspan style=color: #009900;#40;/spanspan style=color: #000088;$libraries/spanspan style=color: #009900;#41;/spanspan style=color: #339933;;/spanbr / span style=color: #009900;#125;/span/div/p pAttaching the library above implements emprovider-namespaced strings/em i.e. code'gratis/foobar-corescripts'/code where previously it had an array associated with it. This is new in Drupal 8 Alpha 10 and it through me off for a while until I found a core issue that documented this change. Finally, we use codefunction drupal_render/code to render the new library./p h2What's Next?/h2 pIn a future Drupal 8 related articles, I'll get in to setting custom configuration for your Drupal 8 theme, this comes in real handy and we'll be using YAML with the added addition of using Drupal 8's CMI layer. I'll also talk more about API changes as they relate to themers, it's probably safe to do that now as Drupal 8 is most likely heading toward a beta within the next few months and it seems like many of the major core API changes have been done./p /div/div/divh2 class=field-labelTagsnbsp;/h2ul class=field-items tag-itemsli class=field-item odd firstDrupal/lili class=field-item evenYAML/lili class=field-item oddDrupal 8/lili class=field-item evenDrupal Planet/lili class=field-item odd lastTheming/li/ulh2 class=field-labelResourcesnbsp;/h2ul class=field-items tag-itemsli class=field-item odd firsta href=https://drupal.org/node/1996238 target=_blank rel=nofollowReplace hook_library_info() by *.libraries.yml file/a/lili class=field-item evena href=https://drupal.org/node/2203407 target=_blank rel=nofollowReplace #attached library array values with provider-namespaced strings/a/lili class=field-item odda href=http://yaml.org/spec/current.html target=_blank rel=nofollowYAML Ain't Markup Language (YAML™) Version 1.1/a/lili class=field-item evena href=https://api.drupal.org/api/drupal/core%21includes%21common.inc/function/drupal_render/8 target=_blank rel=nofollowfunction drupal_render/a/lili class=field-item odda href=http://drupal.stackexchange.com/questions/109023/how-do-i-make-a-drupal-8-theme-require-jquery-for-anonymous-users target=_blank rel=nofollowHow do I make a Drupal 8 theme require Jquery (for anonymous users)?/a/lili class=field-item evena href=http://en.wikipedia.org/wiki/YAML target=_blank rel=nofollowYAML (Wikipedia)/a/lili class=field-item odda href=https://drupal.org/project/gratis target=_blank rel=nofollowDrupal Gratis, A Responsive Theme (7 amp; 8)/a/lili class=field-item even lasta href=https://drupal.org/project/gratis#d8 target=_blank rel=nofollowGratis Drupal 8 related issues/a/li/ul

David Herron: Stopping server overload, cleaning up the site front page, disabling comments, and general goodness

Sun, 04/06/2014 - 08:09
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-items id=md1div class=field-item evenpThe last few days the server hosting this site was overloaded, and I finally took a look at the access log, saw a continuous stream of requests that shouldn't be occurring, and realized the links row of teasers on the front page needed to go away. The default links row includes one reading Log in to post comments but this blog doesn't allow anybody else to register for an account, and in any case comments are handled by Disqus rather than Drupal's commenting system. The link didn't need to be there at all, and the more I looked at the links row the more useless it looked./pbr/script type=text/javascript!-- google_ad_client = ca-pub-2401070691062219; /* davidherron teaser */ google_ad_slot = 6159841370; google_ad_width = 468; google_ad_height = 60; //-- /script script type=text/javascript src=http://pagead2.googlesyndication.com/pagead/show_ads.js /script/div/div/div

Unimity Solutions Drupal Blog: Where do you find the Drupal.org Software working group?

Sat, 04/05/2014 - 08:33
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpDid you know that the a href=https://drupal.org/governance/drupalorg-working-groups/software target=_blankDrupal.org Software working group/a appointed by the Drupal Association provides co/p/div/div/div

David Herron: Do 3rd party commenting systems (Disqus et al) support my community, or theirs?

Sat, 04/05/2014 - 02:45
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-items id=md9div class=field-item evenpimg src=http://d114jki1f236fn.cloudfront.net/sites/default/files/disqus-p.jpg align=right /It used to be that Web 2.0 was the cool new thing, and a core feature was that the audience could leave comments on websites. It's common nowadays for websites to support comments, and comment areas have become (in some cases) a war zone full of partisan bickering. It was ground-breaking the 10ish or so years ago that websites began to support 3rd party comments. Really./pbr/script type=text/javascript!-- google_ad_client = ca-pub-2401070691062219; /* davidherron teaser */ google_ad_slot = 6159841370; google_ad_width = 468; google_ad_height = 60; //-- /script script type=text/javascript src=http://pagead2.googlesyndication.com/pagead/show_ads.js /script/div/div/divdiv class=field field-name-taxonomy-vocabulary-1 field-type-taxonomy-term-reference field-label-abovediv class=field-labelTopics:nbsp;/divdiv class=field-itemsdiv class=field-item even id=md1a href=/category/topics/online-community typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Online Community/a/divdiv class=field-item odd id=md3a href=/category/topics/drupal-planet typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Drupal Planet/a/divdiv class=field-item even id=md5a href=/topics/disqus typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Disqus/a/divdiv class=field-item odd id=md7a href=/category/topics/techsparx typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=techsparx/a/div/div/div

Drupal Association News: Drupal.org team week notes #23: Drupal Dev Days Szeged

Fri, 04/04/2014 - 22:05
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpimg class=left src=https://farm8.staticflickr.com/7115/13423503563_6b304477fb.jpg //p pThis week’s notes will be all about something unique, which happened last week: stronga 7 day long sprint for Drupal.org/strong./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/588week notes/a/div/div/div

Midwestern Mac, LLC: DrupalCon and DrupalCamp news + free DrupalCon ticket!

Fri, 04/04/2014 - 16:19
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=https://austin2014.drupal.org/img src=http://www.midwesternmac.com/sites/midwesternmac.com/files/drupalcon-austin.png width=197 height=161 alt=DrupalCon Austin //a/p pThis week, the DrupalCon Austin sessions a href=https://austin2014.drupal.org/news/drupalcon-austin-sessions-are-uphave been posted/a, and I'm thrilled to have one of my session submissions (in the DevOps track) selected: a href=https://austin2014.drupal.org/session/devops-humans-ansible-drupal-deployment-victoryDevOps for Humans: Ansible for Drupal Deployment Victory!/a./p pThe session will go over how Ansible can be used to realize faster, easier, and more successful Drupal deployments, as well as Ansible's ability to make sure that every environment is 'like production', so you don't ever have surprises when you deploy code to its final destination./p/div/div/div

Wunderkraut blog: Getting Acquia certified

Fri, 04/04/2014 - 13:42
p class=field-ns-blog-post-lead So I am an Acquia Certified Developer as of this week. Do I feel any different ? Not really, but i’m glad I did the test a couple of days ago, as it kinda gives you a personal status update on your global Drupal knowledge. Here’s the rundown of my experience. /p div class=field-ns-blog-post-body clearfix div class=field-item even h2Getting started/h2pbr /There are already a bunch of blog posts popping up sharing experiences about taking this test, even on our own Wunderkraut blog. But there are two posts I read before doing the test myself which are worth spending your time on: a post by a href=http://webchick.net/node/125webchick/a and an article by a href=http://www.tanay.co.in/blog/cracking-acquia-drupal-certification.htmlTanay Sai/a. The latter has a nice overview of all the different fields of expertise, with some links to relevant documentation./ppSetting up the test was actually quite a breeze. OK, you have to install the Sentinel software package, and you can’t use Chrome, but other than that I had no problems getting started using a Mac. To tell you the truth, I was expecting worse, and the fact that I managed to schedule the test only a few hours earlier was a nice suprise as well./ph2Doing the test/h2pbr /Well, as Angie recommended, I made sure I went to the bathroom and had plenty of liquids in arm’s reach.br /br /Starting the test, you have 90 minutes for 60 questions, which are all multiple choice. Some questions were actually hard to grasp from the first read. Maybe it were the nerves, but I do remember a couple of questions where I only got the question after reading it for the second time. So do take your time, although you may be pressured by seeing the time ticking away on the exam screen./ppThe content of the test is quite broad. Being served frontend questions as a mainly backend developer is a good way of knowing what the state of your general knowledge is, outside what may be considered as your comfort zone. So if you never did any theming work, i’d recommend looking into the theming basics. br /And actually it’s the other way around as well. You’re a sitebuilder/themer? Check out some backend basics too.  /ppThe questions can be tricky, giving multiple similar options which can make you doubt at times. Especially in these days of IDEs doing all the code completion work for you, you do need to have a clue about the inner works of Drupal./ppAnother thing is that the (code) formatting of the questions proved to be a issue in some cases, as it made it hard to distinguish all the different options./ph2Done!/h2pbr /I completed the test in about 60 minutes, even with reviewing some flagged questions. In hindsight, I should have taken more time, as I still had half an hour left and could've upped my score I guess. But it’s good to know that following my gut feeling, I went through the whole thing just fine. So now it's up to you./p /div /div

Acquia: Drupal 8 + Symfony - This is what open source is all about

Fri, 04/04/2014 - 13:11
div class=field field-name-body field-type-text-with-summary field-label-hidden div class=field-items div property=content:encoded class=field-item evenpPart 1 of 2 - I spoke with a href=http://github.com/richardmillerRichard Miller/a and a href=http://github.com/tkitchin-inviqaTom Kitchin/a, software engineers at a href=http://www.sensiolabs.co.uk/SensioLabs UK/a and its parent company a href=http://inviqa.com/Inviqa/a respectively, via a Google Hangout on Air recently. I wanted to learn more about PHP and Symfony from their perspective and how they think the Drupal 8 and Symfony2 are going to affect each other. In part 2, I learn the inside story on one of the first Drupal 8 sites online, a href=http://www.sensiolabs.co.uk/www.sensiolabs.co.uk/a, what their goals were and how they built it and have kept it running since May 2013, and how Drupal 8 will change the way they design applications for clients going forward./p /div /div /div span property=dc:title content=Drupal 8 + Symfony - quot;This is what open source is all aboutquot; class=rdf-meta/span

Wunderkraut blog: Grumpy Swedish developer gets tilted and need to change his name

Fri, 04/04/2014 - 12:42
p class=field-ns-blog-post-lead So we got an old windows computer setup to do the exam. Could install teh software needed, launched Sentiel to setup up my profile, and I was told to write my name to test my speed on the keyboard. So I entered my name, and “WRONG!”. Got a password error sign. Now I got confused, I was not told enter my password. But ok, so I entered my password. “WRONG”. I tried to write my name again. “WRONG”. Bullocks. /p div class=field-ns-blog-post-body clearfix div class=field-item even pI tried to contact support from Sentiel application. A chat window opened, and I got a welcome message from the support, nice. So I started to write  my question about the password warning error thing. I did a typo in the question, hit backspace, and Abrakadabra, my screen got tilted, and were now laying on the side. WTF. I guess some software error and mismatch on the Windows computers soft- or hardware. I guess software, you know, it’s Windows.br /br /Opened the control panel, got the screen on right side again, and started to write in the support chat again after starting a new session. And Abrakadabra. Tilted screen. Maybe its a feature….br /br /So I started thinking instead. You got to have a US-keyboard to do the test, and maybe Sentiel just doesnt love my lastname, Schirén. I suspected é here. So I changed the spelling of my last name, with and “e” instead. And yeah. That worked.br /br /Doing the certification text in 20 minutes, let’s see what happens./ppstrongEDIT: I passed. Now I am an emAcquia Certified Developer/em. But still a little bit grumpy. I will come back on the issue next week./strong/ppemImage: Confused by Slava/em/p /div /div

alexpott: What next for me? Drupal 8 funding and more

Fri, 04/04/2014 - 10:26
div class=field field-name-body field-type-text-with-summary field-label-hidden data-edit-id=node/17/body/und/rssdiv class=field-itemsdiv class=field-item even property=content:encodedpIt's been a year since I quit my job to work on Drupal and play with Jack. Many amazingly special things have happened to me. I still remember falling off my seat when Dries asked me to be a committer and lying awake all night with excitement whilst I slept on it./p pWithout the Drupal community's support I would have had to return to work much earlier. With everyone's donations through gittip, two companies' financial support and my own savings, I've been able to continue working full time on core. However my savings are diminished and the corporate sponsorship only lasts until 18th April. Fundraising month to month is more than a little stressful when a family is involved. Therefore I plan to take some form of employment. Hopefully I will be able to find some interesting work starting at the beginning of May./p pWhatever type of job I take it is important to me that I have the ability to continue to contribute as much as possible to Drupal 8 and have time for my family. What will happen to my gittip? This depends on the type of job I take. If I take a contracting job where I work less than a full work week I will reset my target so that it'll amount to extra time I will work on core. If I take a full time job that allows me to work on core I plan to create a a href=https://www.gittip.com/about/teamsgittip team/a called Drupal Core to which I will transfer all my gittip earnings to this. Obviously, people are free to redirect their gittips as they see fit./p h3Fundraising and Drupal/h3 pThere are companies using Drupal that are willing to contribute to core even though the immediate benefits are not tangible. One of the companies that has funded me since December is a Drupal user, but not at all focussed on Drupal development. The only condition for receiving the money is that I do not disclose their name. This is because it is not easy from an accounting perspective for a company to donate money to an individual./p pWe all know that core is more complex than ever and the interests in Drupal larger. Sustaining Drupal core development is a key challenge for the community. I think we need to seriously consider extending the Drupal Association's remit to be able to coordinate the collection and distribution of funds from major Drupal users for Drupal core development. If this is impossible then this does not mean we should not still try to solve the problem./p h3Thanks/h3 pFeel free to a href=http://alex.vit-al.com/contactcontact me/a if you have an interesting job offer - especially if it involves Drupal 8./p pLastly, thank you to everyone for your wonderful support./p /div/div/divdiv class=field field-name-field-tags field-type-taxonomy-term-reference field-label-inline clearfix clearfix data-edit-id=node/17/field_tags/und/rssh3 class=field-labelTags: /h3ul class=links inlineli class=taxonomy-term-reference-0 rel=dc:subjecta href=/taxonomy/term/2 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Drupal/a/li/ul/div

Change(b)log: Commerce Marketplace: Installation and use cases

Fri, 04/04/2014 - 09:52
This tutorial will guide you through all the steps required to replicate the Commerce Marketplace demo site on your own server, and then explain how its behaviour differs depending on various configuration settings.

Darren Mothersele: Drupal Theme Generator Update

Fri, 04/04/2014 - 01:00
pIt#39;s been a week now since I demoed my proof-of-concept for an automated theme generator at the Drupal show and tell event so I thought I#39;d collect together the feedback I#39;ve received so far and post an update./p !--break-- h3Wrong Approach?/h3 pAlmost unanimously positive feedback. In fact, it seems other people have been thinking along similar lines:/p blockquote class=twitter-tweet lang=en-gbpa href=https://twitter.com/mothersele@mothersele/a dude! just saw a href=http://t.co/GyV2m41eUehttp://t.co/GyV2m41eUe/a This is something that a href=https://twitter.com/jenlampton@jenlampton/a, a href=https://twitter.com/mortendk@mortendk/a, a href=https://twitter.com/Cottser@Cottser/a and I have discussed for 8.x twig!/pmdash; Mark Carver (@mark_carver) a href=https://twitter.com/mark_carver/statuses/450016685752201216March 29, 2014/a/blockquote pThe one opposing view I have encountered wasn#39;t actually against any of the ideas in the theme generator, but suggested that taking over Drupal markup was wrong and that we should be working with what Drupal provides. I know there are arguments for this, and if you want to go this route then you will need some other mechanism for documenting the conversion of your design to Drupal theme. If you want to argue this case, I#39;d suggest first try having that discussion with a href=https://twitter.com/mortendkMorten/a, as I#39;m going to assume that we#39;re all OK with the concept of taking complete control of (completely rewriting) Drupal#39;s markup output./p h3Annotation/h3 pIn an earlier prototype I had started working with annotations inside HTML comments but I found these increasing harder to parse as the extractions became more sophisticated. Someone in conversation brought up ideas from KSS and suggested looking at CSS comments as an alternative./p pI#39;m still proposing this as a possible approach (see a href=https://en.wikipedia.org/wiki/DocblockDocblock/a), but for now I#39;m going to continue to annotate the markup (not the CSS) with x- attributes, as no one has had an issue with this, and at this stage it#39;s easier to work with QueryPath to create the extractions based on these attributes. It seems that annotating the markup with x- attributes will be acceptable as long as they are stripped from the markup during the build process./p blockquote class=twitter-tweet lang=en-gbpa href=https://twitter.com/rootwork@rootwork/a a href=https://twitter.com/illepic@illepic/a a href=https://twitter.com/micahgodbolt@micahgodbolt/a a href=https://twitter.com/EvanLovely@EvanLovely/a a href=https://twitter.com/mothersele@mothersele/a Interesting! Do the data attributes get stripped out during the build step?/pmdash; Brad Frost (@brad_frost) a href=https://twitter.com/brad_frost/statuses/449662512624328704March 28, 2014/a/blockquote pIt was great to get feedback from a href=http://bradfrostweb.com/Brad Frost/a as his work on Atomic Design has been influential in the development of this process./p h3In code, or config/h3 pIn this first proof-of-concept, the generated theme is held in memory, well actually it is persisted as a Drupal variable containing a single object that holds the result of all the #39;extractions#39; from the source. The original intention was that this would actually be a ctools exportable, so that it could be exported and managed as part of the configuration management process for the site./p pThis is how the Panels flexible layout builder works. It has one parent layout plugin that programmatically declares child layout plugins based on the layouts you define using the layout builder tool. These child layouts are stored as exportable objects, so they can be exported using a href=https://drupal.org/project/featuresFeatures/a. The current Hyde theme generator approach is similar, except that the parent plugins (for layout or styles) programmatically declare child layout and style plugins based on the result of each extraction from the HTML source design./p pStoring the result of the build in configuration or database raised some concerns, mainly over capturing the results in version control. These tweets summarise the issue:/p blockquote class=twitter-tweet lang=en-gbpa href=https://twitter.com/mothersele@mothersele/a interesting implementation. But I believe that should definitely generate theme in code, not just DB#10;a href=https://twitter.com/mcjim@mcjim/a a href=https://twitter.com/MattFielding@MattFielding/a/pmdash; Tom Bamford (@waako) a href=https://twitter.com/waako/statuses/449539868411322368March 28, 2014/a/blockquote blockquote class=twitter-tweet lang=en-gbpa href=https://twitter.com/waako@waako/a If a prototype is always in sync with a Drupal theme, the markup *is* all in code right? // a href=https://twitter.com/mothersele@mothersele/a a href=https://twitter.com/mcjim@mcjim/a/pmdash; Matt Fielding (@MattFielding) a href=https://twitter.com/MattFielding/statuses/449551562344386560March 28, 2014/a/blockquote pMatt picks up on my original intention, in that the design/theme would be captured in code and be version-able because the translation is automatic from the design#39;s HTML/CSS/JS./p pThe difficulty is in managing any changes that happen to the generated code once it becomes a Drupal theme. This is exactly the problem that using the theme generator is trying to solve. That it provides a documented, repeatable conversion process, so that design can become part of the (agile) development workflow./p pHowever, it is going to be unavoidable that some tweaking will be needed. This covers a couple more issues that were raised at the Drupal show-and-tell event:/p ul liHow to manage logic in template files?/li liHow to capture Drupal#39;s pre-process functions?/li /ul pThe approach I am looking at to solve this, is one I#39;ve seen practised by other tools that involve code generation. For example, have you seen BDD using a href=http://behat.org/Behat/a? When define a test scenario in Behat it generates stub code for any unrecognised steps in your tests. For example, if you say quot;Given I am in a directoryquot;, you would get the generated stub code:/p div class=highlightprecode class=text language-text data-lang=text/** * @Given /^I am in a directory quot;([^quot;]*)quot;$/ */ public function iAmInADirectory($argument1) { throw new PendingException(); } /code/pre/div pI think the theme generator could do something similar for elements marked as requiring pre-processing in the template file. This needs some further thought and perhaps a couple of experiements./p h3Terminology/h3 pStill struggling with naming conventions. If this is going to be a more general tool then need generally understandable terms (like #39;component#39;). But, need to avoid overloading terms even more, as it#39;s already quite confusing having SMACSS modules, Drupal modules, panels, blocks, boxes, styles, layouts. urgh!/p h3Next steps.../h3 blockquote class=twitter-tweet lang=en-gbpa href=https://twitter.com/mothersele@mothersele/a a href=https://twitter.com/mark_carver@mark_carver/a I love it. Also love that it works w/ panels! Q: Are the layout plugins placed in the theme? a href=https://twitter.com/mortendk@mortendk/a a href=https://twitter.com/Cottser@Cottser/a/pmdash; Jen Lampton (@jenlampton) a href=https://twitter.com/jenlampton/statuses/450703701263388672March 31, 2014/a/blockquote pSo, I#39;m going to revise the current proof-of-concept and produce a second prototype. This time as a Drush command that generates an actual Drupal theme. Rather than holding the extracted theme in configuration it will generate a theme folder, that will include all the usual Drupal theme files, plus any plugins for Panels layouts, styles, display suite etc, and the CSS/JS copied across from the source design./p pThis will allow Hyde to generate stub code for pre-processing or other programmatic tweaks that are needed to get Drupal#39;s output to match the design markup. I also think people will be more accepting of this approach as it#39;s probably more like how it is expected to work./p pMy worry is that people will then hack the generated theme, it will go out of sync with the source design markup, and that will break the whole process./p pIf you want to get involved, please drop me a line. I need input from designers, themers, and developers. In particular, I#39;d be interested to speak to anyone else already using Atomic Design and/or SMACSS on Drupal projects./p

PreviousNext: Object-oriented page callbacks for Drupal 7

Fri, 04/04/2014 - 00:45
div class=field field-name-field-summary field-type-text-long field-label-hiddendiv class=field-itemsdiv class=field-item even pspanIn Drupal we use object-oriented page and form callbacks to ease our programmning burden This is a nice improvement that allows us to encapsulate the functionality of one or many page callbacks into objects, with all the benefits that brings. Is it possible for us to us object-oriented page callbacks in Drupal 7? With a few tricks, yes it is. This article shows you how./span/p pThis is part of a href=/blog/drupal-8-now-writing-drupal-7-code-eye-towards-drupal-8a continuing series of using Drupal 8 programming techniques in Drupal 7/a./p /div/div/divspan property=dc:title content=Object-oriented page callbacks for Drupal 7 class=rdf-meta/span

PreviousNext: Object-oriented page callbacks for Drupal 7

Fri, 04/04/2014 - 00:45
div class=field field-name-field-summary field-type-text-long field-label-hiddendiv class=field-itemsdiv class=field-item even pspanIn Drupal we use object-oriented page and form callbacks to ease our programmning burden This is a nice improvement that allows us to encapsulate the functionality of one or many page callbacks into objects, with all the benefits that brings. Is it possible for us to us object-oriented page callbacks in Drupal 7? With a few tricks, yes it is. This article shows you how./span/p pThis is part of a href=/blog/drupal-8-now-writing-drupal-7-code-eye-towards-drupal-8a continuing series of using Drupal 8 programming techniques in Drupal 7/a./p /div/div/divspan property=dc:title content=Object-oriented page callbacks for Drupal 7 class=rdf-meta/span

Wunderkraut blog: Does Acquia Certification give you personal ROI?

Thu, 04/03/2014 - 23:48
div class=field-ns-blog-post-body clearfix div class=field-item even pI’ve been recruiting many Drupal developers. The process is usually a mixture of random in-depth questions, a drupal.org profile review and pure intuition on the applicant’s fit for our company./ppThat’s why I felt genuinely interested in the recently published a href=http://www.acquia.com/products-services/drupal-training/acquia-certification-program-overview target=_blankAcquia Certification program/a. Could a single test provide a trustworthy distinction between a seasoned and an unexperienced Drupal developer? I got to test myself a couple of days ago./ppThe a href=https://www.acquia.com/products-services/drupal-training/acquia-certified-developer-exam-blueprint target=_blankAcquia Certified Developer Exam/a promised to analyze a testee’s knowledge of Drupal as well as web development skills in general. The covered areas are so overly wide that it is pretty hard to cover all corners with 60 multiple choice questions. Drupal was naturally present in most them while some of the other development topics were covered only by one or two./ppThe test time was limited to 90 minutes which I spent completely. The most time consuming part was reading the questions themselves.  I would have made the answer options tricky, not the questions. The questions were  quite lengthy, trying to mimic a real life case of an freelancer. An entreprise level questions would have had more focus on testing, scalability, deployment and documentation - not to mention drupal.org participation./ppMy overall feeling about the exam was positive. Althought I would have preferred the test being split into more specialized, separate tests, the certificate test gives what it promises. After completing my test, I got the results which reflected in my mind quite well my personal skills./ppFor sure one cannot pass the test only by guessing so the certificate is a valid testimony of prior in-depth Drupal experience. That’s why having a Acquia Certification in your CV will give you additional credibility and personal ROI. It will grow from personal ROI to corporate ROI when becoming an acknowledged selling point as well as a decision criterion in tendering processes./pp /p /div /div

ThinkShout: Reflections on Drupal Day: Creating a One-Size-Fits-All Day for Nonprofit Professionals and Technologists

Thu, 04/03/2014 - 17:00
pemOriginally published March 26 on a href=http://www.nten.org/articles/2014/reflections-on-drupal-day-creating-a-one-size-fits-all-day-for-nonprofit-professionals-and-technologistsNTEN.org/a/em/p pLearning a new technology can be incredibly intimidating, especially if you’re going at it alone. There’s great comfort in knowing that you’re not the only one with those particular questions or having this recurring, frustrating problem. Stranding yourself on a technological island is so unnecessary, especially given how accessible learning resources are these days. This is the beauty of the modern technology communities./p pSpecifically, the Drupal community. It’s everywhere, it’s friendly, and it’s full of helpful people excited to share their expertise and bring new talent into the fold. I spent the last four months preparing for Drupal Day, a Drupal-centric, day-long workshop that ThinkShout coordinates as part of NTEN’s Nonprofit Technology Conference (NTC). I didn’t quite understand the scope of this community until those months finally culminated in the big day./p pThe process was an interesting one for me especially, as it was not only my very first Drupal Day but also my first experience at the NTC. How do you create a one-size-fits-all day for a large group of people, both nonprofit professionals and technologists, with a wide range of technical competency levels?/p pIt may not be a perfect fit, but so long as there are options, your attendees remain in control and are able to choose the sessions relevant to their interests. With the collaborative efforts of our sponsors and nonprofit feedback, we were able to put together a day jam-packed with content./p pMy experience with Drupal Day left me with a few key takeaways for those looking to dive into Drupal: /p pstrong1. The Drupal community really is awesome./strong/p pa href=http://drupal.orgDrupal.org/a is only the beginning, but it’s a fantastic beginning full of answers. There are forums, an archive of resources, and even a live chat if that’s more your speed. There’s a wealth of information available to you online, all of it curated by the people that know and love Drupal best. This community isn’t purely digital, either. If you live in a large city, chances are there’s a Drupal meetup near you. If you’d prefer to meet face to face, you can, whether it’s through a local event, full-blown a href=https://austin2014.drupal.org/DrupalCon/a, or nonprofit summits at a href=http://www.nyccamp.org/NYC Camp/a, and a href=http://2014.badcamp.net/BADCamp/a. You can also access paid training on a href=http://buildamodule.com/BuildAModule/a, but the best part is that you can meet Christ Shattuck, the BuildAModule instructor, in person at a ton of these events. You’re going to start recognizing people quickly, and it’s going to be more helpful than you might think./p pstrong2. Learn from others’ stories and share your own./strong/p pOne of the draws of Drupal Day is that it’s a great opportunity to hear from nonprofit decision makers about their experiences with Drupal. This year, every single one of our speakers represented a nonprofit with a successful Drupal story and each came from different technological backgrounds. We chose speakers that we believed had great, impactful stories that Drupal Day attendees could learn from. This year, Erin Harrington from a href=http://www.salmonproject.org/The Salmon Project/a, Jess Snyder from a href=http://www.weta.org/WETA/a, Porter Mason from a href=http://www.unicefusa.org/UNICEF/a, Milo Sybrant from the a href=http://www.rescue.org/International Rescue Committee/a, and Tony Kopetchny from a href=http://www.rescue.org/Pew Charitable Trusts/a joined us to share their experiences. You can learn more about their projects by clicking through to their websites. /p pstrong3. Every question is a good question./strong /p pThere really aren’t any dumb questions, especially when it comes to Drupal. The community embraces newcomers and fosters a great environment for learning. No matter your technical competency level, they’ve got an answer for you. This is why we structured Drupal Day 2014 the way we did: nonprofit speakers in the morning talking about their personal accounts of their organization’s experience with Drupal, followed by an afternoon of twelve breakout sessions covering a variety of topics, where guests could move from classroom to classroom easily. We collaborated with our developer sponsors and nonprofit attendees to determine what information was most relevant to nonprofits. We crafted a day around the topics they wanted to learn about. Everything from Google Analytics to content creation had a place at Drupal Day./p pThe Drupal community is one that needs to be experienced to truly understand its value. It’s a wonderful stage for nonprofits, no matter where their organization is at technology-wise. Drupal Day is a prime example of that, but there are many more events on the horizon, which I highly recommend if you’re on the fence about diving into Drupal. Of course, I also encourage everyone to come out to Drupal Day at the next NTC and see just what exactly it feels like to be part of this fantastic community./p

drupalsear.ch: This week in Search API - Meeting notes 01/04/2014

Thu, 04/03/2014 - 16:59
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpOn Tuesday, April first we had our first Search API Online meeting using Google Hangout. The following is a result of what was decided and said. It's also a start of this week in Search API so that we allow you to follow along./p h2What have we done/h2 pFrederick fixed the batch process, needs to be testedbr / During Drupal Dev Days we made 322 commitsbr / Heaviest hours were from 09:00 till 19:00 and then it went up again from 22:00 till 24:00. Thanks to freblasty we even had commits during the middle of the night, 9 of them at 04:00.br / Wednesday was our most productive day with 75 commits. Saturday was our low point with only 36 commits, I guess that has something to do with the party on Friday evening…!br / 20834 lines were added, 11996 were removedbr / In total we had 15 contributors!!!!br / A blog post with more details will be posted soon.br /a href=http://drupalsear.ch/rocketship/all/allhttp://drupalsear.ch/rocketship/all/all/a now features the issues from the sandbox also. If you see issues in Needs Review, please go in and review and/or put your opinion./p h2What will we do/h2 pIn General more tests for the processors is our main focusbr / The indexing logic needs to be reviewed and testedbr / We’ll move to the proper Search API project once basic functionality is working and we want to work on features.br / freblasty is going to move all the issues from the google doc to the sandbox issue queue.br / drunkenmonkey will review if the information is clear enough on the main Search API Module page so that people are guided towards best practices and they can join the effort.br / Nick_vh will figure how search api tests quickly locally using drupal.org docker images.br / Nick_vh will figure out how to proceed with a this week in Search API blog post (which is what you are more or less reading right now).br / Nick_vh will register drupalsear.ch and link d8searchapi.acquia.com to it./p h2For your information/h2 pfreblasty has a holiday and seems he has time to work on some harder issues. He needs some cheering!br / We decided that we'll talk about multiple entity types per index next meeting.br / Before committing/pushing, we will always run tests./p /div/div/divdiv class=field field-name-field-tags field-type-taxonomy-term-reference field-label-above clearfixh3 class=field-labelTags: /h3ul class=linksli class=taxonomy-term-reference-0 rel=dc:subjecta href=/taxonomy/term/86 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=drupalplanet/a/lili class=taxonomy-term-reference-1 rel=dc:subjecta href=/taxonomy/term/91 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=searchapi/a/lili class=taxonomy-term-reference-2 rel=dc:subjecta href=/taxonomy/term/96 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=weekly meeting/a/lili class=taxonomy-term-reference-3 rel=dc:subjecta href=/taxonomy/term/101 typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=meeting notes/a/li/ul/div

Blink Reaction: How to Add the Current Date to a View in Drupal 7

Thu, 04/03/2014 - 15:31
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpToday, someone in IRC asked how to add the current date to a View they were working on. Seemed simple enough, and I offered to help, thinking it was just a matter of sticking a token in the View header. And it was...sort of. Incredibly, Google searches turned up only code-based solutions. emOverkill./em Here's a UI-based approach./p pTo add the current date to the top of a View, follow these steps:/p/div/div/div

Commercial Progression: The Acquia Certified Developer exam

Thu, 04/03/2014 - 14:49
div class=field field-name-field-blog-image field-type-image field-label-hidden div class=field-items div class=field-item evena href=https://www.commercialprogression.com/sites/default/files/logo2104.pngimg src=https://www.commercialprogression.com/sites/default/files/styles/large/public/logo2104.png?itok=bdJPIbng width=147 height=147 alt= //a/div /div /div div class=field field-name-body field-type-text-with-summary field-label-hidden div class=field-items div class=field-item evenpI recently took the a href=http://www.acquia.com/products-services/drupal-training/acquia-certification-program-overviewAcquia Certified Developer exam/a and I’m proud to say that I passed by a significant margin. While it was by no means easy, it shouldn’t be insanely difficult for anyone who is a competent, experienced Drupal developer to get a passing score./p pI originally heard about it through Acquia’s partner newsletter (Commercial Progression is an Acquia partner) but it was a a href=http://webchick.net/node/125blog post from Angie webchick Byron/a that really sold me on it. I really liked the idea that it would test practical knowledge and not just require memorizing a bunch of facts. I also felt that being offered by Acquia, one of the most recognized and trusted names for all things Drupal, really helps give it credibility that it might not have if some other company was offering it./p h2Onsite vs online/h2 pAfter reading about the Secure Sentinel software used for the online testing, I decided to go the onsite route. My biggest concern was that despite my best efforts to avoid disturbances, something would inevitably happen that would cause me to have to retake the exam. Rather than chance it, I decided to just do the onsite exam./p pWhen you register for an onsite exam, you will receive an email with an authorization code and instructions. Essentially it boils down to “show up 15 minutes early with this email and 2 forms of id”. From there, you have to sign some forms (code of conduct and consent to be recorded) and hand over any items you brought with you (wallet, watch, cellphone, etc) which they will store for you until you’re finished since you have any of that with you during the exam. Once all that’s taken care of, they will get the computer setup and take you to the room to start your exam./p h2Exam prep/h2 pIf somehow you haven’t seen it already, Webchick has put together an excellent a href=http://webchick.net/files/AcquiaCertificationStudyGuide.pdfstudy guide/a. The a href=http://www.acquia.com/products-services/drupal-training/acquia-certified-developer-exam-blueprint#samplesample question/a is also worth a look but if you feel that you need to do a lot of studying, you should probably re-think whether you should be taking the test. Studying is good for brushing up on topics you might be a little rusty on but it’s no substitute for hands-on experience./p h2The exam/h2 pWhile I obviously can’t really say anything about the content of the exam, I will say that it is focused things that you will actually encounter and use, not just a bunch of random facts. If you have experience building, maintaining, and fixing Drupal sites using best practices, it will serve you well./p pWhen I was taking the exam, there were questions that actually caused me to smile when I read them because I knew the answer right away. They pertained to scenarios that I had encountered and dealt with while working on Drupal sites. If you’re an experienced developer, don’t be surprised to see some familiar scenarios and issues on the exam./p pThe actual process was fairly smooth and the 90 minute time limit seems pretty reasonable. I was able to thoroughly read all of the questions, evaluate the answers, and go back and review the questions that I had flagged all with time to spare./p pThere was one minor issue where the testing system got stalled between questions for a minute or so. That ended up resolving itself just as I was about to call the proctor and the timer resumed from where it was previously so I didn’t actually lose any time. It seems like that was just a minor hiccup with the testing system and not really anyone’s fault./p h2Final thoughts/h2 pWhen you get you results after the exam, your score is broken down by topic so you can see how well you did in each of the four “domains” the exam covers. It would be nice to be able to see what questions you got wrong after you complete the exam but I realize that might not be possible. One possible alternative might be to give a more detailed breakdown of the score using the sub-topics from the blueprint (eg “3.1 Given a scenario, demonstrate ability to create a custom theme or sub theme”) so the people who take the exam have a better idea of areas where they may need to improve./p pThe best advice I can give to anyone taking this exam is don’t overthink things and go with your gut. Acquia is not trying to trick you. As long as you read the whole question you should be fine. If you’re an experienced developer and you’re unsure about the answer for a question even after you’ve gone back and reviewed it, the best thing you can do is just go with your first instinct as it’s probably correct./p /div /div /div