I am a big car, and I'm a strip bar, Call it fake, I call it good as it gets.
Roughly a year ago Alex Sexton's Smashing Magazine article highlighted a new role emerging amidst the increasing complexity of front-end work in a responsive world: Front End Ops. Since that article was published, there's been an entire conference devoted to the subject, and folks like Chris Rupl have evangelized similar roles and supporting tools to the Drupal community.
- Drupal 6 Lead, Drupal 8 Multilingual Initiative Lead, Acquia OCTO ("Office of the CTO ")
- Drupal.org profile: gábor-hojtsy
- Website: http://hojtsy.hu "A personal Drupal resource site"
- Twitter: gaborhojtsy
- 1st Drupal memory: 2003. Migrated Hungarian developer community website from PHPNuke to Drupal; began filing and solving language issues against Drupal.
I recently ran across a problem of needing multiple Drupal Commerce add to cart buttons on a sing
Bootstrap is our go to base theme, but what happens when the grid the client asks for has different width, or more break points?
Using Bootstrap-Sass creating a custom grid is possible in a manner that can be copied and adjusted from one project to another. As example for this post, and for your future reference you may follow the live demo and repository that changes Bootstrap to work with five breakpoints (tip: use Resizer for easy viewport resize).
Note that example is using Jekyll for simplicity, however the same technique can be used on Drupal.
Photo Credit: Tyler Ward
In Toadcast 23 we talk with Tom Martin and Dan about Drupalcon 2014, Texas Food, Heat, Sessions from Four Kitchens, Adam Edgerton, Roaches, Austin City Life, Pet Talk, Presentations by Dan, Drupalcon 2015, The Definition of Decimate, Future of Drupal, & Expansion of Drupal Crowd.
At Drupalcon, we had the opportunity to share with the community a case study featuring The Weather Channel (TWC), which has one of the most highly visited web sites in the world (www.weather.com). And, it’s certainly among the largest Drupal sites under development.
The approach was to break the engagement into two phases, the first to address editorial concerns and the second to replace legacy systems and take over the front end serving.
Slated to be part of Drupal 8 core, Entity Reference is a field type module you should be familiar with now. For experienced Drupal users, the reference field is probably not a new concept. Regardless of your Drupal skill level, I hope to give a practical example of how the Entity Reference module can be utilized and introduce a few other modules that greatly improve its usability.
The Entity Reference module provides a new field type that allows entities (nodes, taxonomy terms, etc.) to create a reference (or connection) to each other. The need for references usually comes from needing to create content with complex data points (or fields). My example is for Aten Records (our company's fake record label). Aten Records needs to catalog all of their artists, albums and tracks. Imagine trying to store every album and track for an artist in a single content type (artist for example). It would be challenging because of the data we need to collect for each album and track. It becomes much easier to imagine three content types (artist, album & track), but we need a way to connect the three content types together. Entity References can help!
You can also follow along with the screencast if you like.Create content types
- Name (title field)
- Biography (body field)
- Photo (image field)
- Albums (Entity Reference referencing the album content type)
- Title (title field)
- Album Artwork (image field)
- Year (text field)
- Tracks (Entity Reference referencing the track content type)
- Title (title field)
- MP3 (file)
- Length (text)
- Writer (text)
- Make sure it is pointing to the correct entity type (node in our example)
- Make sure it can reference the correct content types
- Make sure it can reference a unlimited number of options
We can now create artists, albums and tracks but the workflow isn't ideal.Default workflow (cumbersome)
- Create all tracks for an album
- Create the album (reference the tracks created above)
- Create the artist (reference the album created above)
Repeat for each new album (or artist / album)A more ideal workflow
- Create an artist, create albums and tracks directly from the artist edit screen!
References dialog launches a new content create form in a modal window on the page where you are currently editing content. I've chosen this for album, so new albums can quickly be created without leaving the artist edit screen.
- Enable references dialog
- Modify albums field settings on the artist content type
Inline entity form embeds the form of the referencing entity directly on the page. I've chosen this for tracks so we don't have modals in modals, because we already have an album modal window open at this point.
- Enable inline entity form
- Modify tracks field settings on the album content type
I will only briefly touch on this topic since it could be a whole other blog post.
- Modify the view mode display for artist and album
- For each entity referenced field, choose "show rendered node"
The sky is really the limit with how you use references in a project. Imagine a social site with profiles referencing work experience, a soccer club website with teams referencing players, or a hiking website with trails referencing other nearby trails. What other tips do you have for folks just getting started with Entity References? What other modules improve usability of Entity References?
Drupal.org provides an amazingly flexible issue queue and is the backbone of most community activity around code, community, policies, drupal.org itself and so on. Each issue has a priority value which can be one of Critical, Major, Normal and Minor. Even more interesting is the tagging system we use with some commonly used tags like 'beta blocker' or 'beta target' or 'revisit before release' which add extra priority on top of the single value field. The drupal.org issues however don't lend themselves to supporting working on your priorities. Here are some options and tools I used so far that help solve this issue.
Profiling your site is extremely useful not only for debugging and performance testing but also for learning about how your site handles requests.
Symfony 2 comes with a bundle (like a Drupal module but for Symfony) called WebProfiler Bundle which collects information about each request made to your application and allows you to visualize it in the browser.
Drupal 8 doesn’t include the Web Profiler bundle in core. However, there already is a contrib module for it. Make sure to install any dependencies before enabling the module.
The module will render a fixed bar at the bottom of each page for users with the View webprofiler toolbar permission. The bar provides a summary of the collected data from the profiler.
This post will give us some common ground on which I can build my case for Drupal. To get started, we’ll need working definitions of success in business today, the nature of open source software, and a quick explanation of Drupal itself. In subsequent posts, we’ll explore specific concepts and examples of how Drupal enables success because it is open source software at scale – a powerful combination: the empowerment of freedom multiplied by an ecosystem of thousands of service providers, tens of thousands of developers, and millions of sites online.
In the Drupal community we excel at sharing code, but we are terrible at sharing documentation. I’ve been trying to rally the Drupal community around a standard for reusable documentation for a few years now. But to get people to collaborate we needed to invent a new tool that makes it easy to create, reuse and share documentation between sites and the Drupal project at large. We have built that tool, it’s called WalkHub.
At DrupalCon Austin 2014, we officially kicked off the reimagination of Drupal.org with a full-day workshop with Drupal Association staff, Working Groups, select board members and advisors, facilitated by our user experience coach Whitney Hess. In the morning, we did the serious business of defining our objectives, target audiences, metrics for success (KPIs), partners and competitors, and then in the afternoon broke out into teams to brainstorm provisional personas, use case scenarios, and a blue-sky set of features. These are the hypotheses that we will now test in our user research.
Here are a few outcomes of the day:Objectives for the Drupal Association:
- Grow Drupal community engagement
- Grow adoption of the Drupal project
- Make it easier to build Drupal
- Be the home of the Drupal community and primary destination for collaboration, education and relevant information and answers
- Provide tools to help coordinate community development of Drupal and related projects by removing barriers, retaining resources and more
- Demonstrate Drupal’s capabilities and advantages, and promote it as an organizational solution
- Encourage and enable people to develop themselves and their careers over time
Despite how busy everyone is at DrupalCon at sessions and in the hallways, we were also able to conduct 11 user interviews with a wide variety of community members. Our user research continues until mid-July, as we interview developers, designers, site-builders, business decision makers, technical leads, content strategists, sysops, marketing managers, evangelists, students, agency heads and more, learning everything we can about what the Drupal community needs to do its best work and what Drupal.org can provide to make that happen.
We are very excited to share the results of our research with you soon.
Thank you for participating in this process with us,
The Drupal Association Staff
Flickr photo by 3oheme
- Let’s start out by getting a quick overview of what Backup and Migrate is.
- What are some of the new features in version 3.x?
- New UI
- Notes about backups
- Backup to two places at once
- Elysian Cron
- Smart delete
- One list for all backups instead of a list for each schedule
- Restore from stored backup or upload
- Ctools exportable
- What are some of the limitations of the module?
- How does this work in conjunction with Git?
- Since your the lead developer of NodeSquirrel, give us the pitch :)
Join members of the NJ Drupal Community at our upcoming sprint: Drupal 8 at the Jersey Shore. The event will be held in Asbury Park, NJ and run all day on Saturday, July 12 and Sunday, July 13.
Join like-minded Drupal contributors for two full days of core and contrib sprinting to further advance Drupal 8. We'll have a list of approachable Drupal 8 critical tasks for participants to work on (thanks to remote help from xjm).
All attendees should have previously participated in a core sprint and/or have a fully working local environment for developing patches.
We look forward to seeing you at the Jersey Shore!
Last week I was very fortunate to not only attend, but be the keynote speaker for DrupalCamp Singapore! Here are my take aways and keynote slides.
Caches are a great tool, they store your website's database and code information in a way that loads much faster. But they DO mean that your changes don't appear right away.Where are my changes?
One of the things we here at Stanford Web Services get emailed about most frequently is, "Why did my changes disappear when I logged out?" The answer is that the site caches haven't yet been updated, but they will if we wait a little bit (sometimes a few hours or so).
As you may have seen, we recently sent out a call for designers. We utilized the process we created last year, but with one twist: this year, instead of hiring one designer to produce both of the 2015 Cons, we are hiring two designers to produce Cons for two years!
Our awesome design partner this year, CTI Digital, has been put through their paces producing all the design for both 2014 DrupalCons in Austin and Amsterdam. While they have done a stellar job, we know this process has proved taxing on their resources, since there was so much cross-over between the deliverables for both cons. Sorry, CTI!
Learning from this, we have selected two designers for 2015 / 2016, and will be staggering each firm’s workload. Each designer will produce one Con in 2015 and a second in 2016.Now to the fun part!
We were WOWed by all the talented designers who applied, and are so thankful for all the companies that participated. It was a difficult choice, but we have selected Cheeky Monkey Media, out of Canada to work on 2015 Los Angeles DrupalCon and ADCI Solutions, out of Russia to work on the 2015 European DrupalCon (the location of which is yet to be announced…).
We are confident that all of the goodness of community, culture, and innovation will be captured in each of these designers work as we continue to evolve and grow the DrupalCons worldwide!
Congrats to Cheeky Monkey Media and ADCI Solutions! Welcome to the DrupalCon family.
Companies are seeing lower success rates on social media and diminishing conversion rates on the web - a trend that has put us all, especially content marketers, in the position to prove the ROI or face severe fiscal cuts. Unfortunately, reporting metrics like “increased impressions” and “better brand awareness” won’t be enough because companies are looking for hard before/after numbers.