Jeff Geerling's Blog: Set up a hierarchical taxonomy term Facet using Facet API with Search API Solr
I wanted to document this here just because it took me a little while to get all the bits working just right so I could have a hierarchical taxonomy display inside a Facet API search facet, rather than a flat display of only the taxonomy terms directly related to the nodes in the current search.
Basically, I had a search facet on a search page that allowed users to filter search results by a taxonomy term, and I wanted it to show the taxonomy's hierarchy:
To do this, you need to do two main things:
- Make sure your taxonomy field is being indexed with taxonomy hierarchy data intact.
- Set up the Facet API facet for this taxonomy term so it will display the full hierarchy.
Let's first start by making sure the taxonomy information is being indexed (refer to the image below):
TexasCamp is two days of DrupalCamp, intended for Drupal admins and users, sitebuilders, themers and developers. Expect sessions from beginner to expert level, with the brightest minds in the Drupal world attending and presenting.
You can attend TexasCamp for only ...Read more
Each day, more Drupal 7 modules are being migrated over to Drupal 8 and new ones are being created for the Drupal community’s latest major release. In this series, the Acquia Developer Center is profiling some of the most prominent, useful modules available for Drupal 8. This week: Admin Toolbar.Tags: acquia drupal planetadmin toolbardrupal 8Drupal modules
Drush is a command line interface that help us to speed up administrative and development tasks for Drupal sites. After installing this Drush, we’ll be able to perform useful action simply by typing command into a terminal —actions that would usually take multiple steps in a web browser. Drush runs on Drupal 6, 7 well as 8.
Note: Drupal 8, works only with Drush 8.
Couple of task which can be be done using Drush easily are :
Download contrib modules
Update Drupal and contrib module versions
Clear the cache
Run Drupal with a lightweight web server
Import, export and merge configuration
In previous blog post we have installed Drupal 8 on our system manually as well as using Drush. Drupal 8 Provides two built in content type Article and Basic page. We can use this to create pages. But most of time we need to either add fields to these content types or we just need to add new content type to organize the content better.
Probably the first change site builders will notice in Drupal 8 are the changes to content types and fields. The field changes affect not only content types, but any entity that can have fields e.g. taxonomy or user profile.
When we edit any content type,…
The Stanford Drupal Camp is a two-day event to discuss and learn about Drupal, an open-source content management system that powers thousands of websites at Stanford, and millions of websites beyond.
This year, the Stanford Drupal Camp emphasizes introductory sessions focused on content strategy as well as thought-provoking sessions for researchers in academia. Those new to Drupal and Content Strategy will be particularly interested in the events on Friday, whereas experienced Drupallers (yes, we spell it with two "L"s at Stanford) may be more interested in Saturday's program.
I am planning to propose a session for DrupalCon New Orleans about Drupal 8 development and Drupal Console and currently looking for session name ideas.
Session abstract text:
Drupal is infamous for his learning curve of drupalisms but Drupal 8 simplifies and standardize the development process, unfortunately this comes with a cost. Drupal 8 is more technically advanced compared to its predecessor and managing the increasing complexity of Drupal 8 could be a daunting task.
The Drupal Console is a CLI tool that helps you manage that complexity allowing you to generate boilerplate code, interact and debug Drupal 8.
The Drupal Console has been designed to increase productivity making Drupal development and interaction efficient and enjoyable.
Come along as we explore this tool that will help you developing by taking advantage of the modern PHP practices introduced into Drupal 8.jmolivas Thu, 02/04/2016 - 00:07
Some of our very own DrupalCon Asia organizers are members of the Drupal Association. We spoke to them about why membership is so important to them, and their answers were so great we had to share. Continuing from a previous blog post, we'd like to invite you to read why they support the community and the Drupal project with us.
Drupal 8.0.3 and Drupal 7.42, maintenance releases with numerous bug fixes (no security fixes), are now available for download.Download Drupal 8.0.3
Download Drupal 7.42
Upgrading your existing Drupal 8 and 7 sites is recommended. There are no major nor non-backwards-compatible features in these releases. For more information about the Drupal 8.x release series, consult the Drupal 8 overview. More information on the Drupal 7.x release series can be found in the Drupal 7.0 release announcement.Security information
We have a security announcement mailing list and a history of all security advisories, as well as an RSS feed with the most recent security advisories. We strongly advise Drupal administrators to sign up for the list.
Drupal 8 includes the built-in Update Manager module, which informs you about important updates to your modules and themes.
There are no security fixes in these releases of Drupal core.Bug reports
Drupal 8.0.x and 7.x actively maintained, so more maintenance releases will be made available, according to our monthly release cycle.Change log
Drupal 8.0.3 contains bug fixes and documentation and testing improvements only. The full list of changes between the last 8.0.x patch release and the 8.0.3 release can be found by reading the 8.0.3 release notes. A complete list of all changes in the stable 8.0.x branch can be found in the git commit log.
Drupal 7.42 contains bug fixes and minor new features. The full list of changes between the last 7.x patch release and the 7.42 release can be found by reading the 7.42 release notes. A complete list of all changes in the stable 7.x branch can be found in the git commit log.Update notes Planet DrupalDrupal version: Drupal 7.xDrupal 8.x
Nobody wants a website that can be hacked. Drupal has a great security track record and works hard to ensure that core and contributed modules are safe for everyone to use. One of the most common types of security issue is a cross-site scripting attack (XSS). In Drupal 8 we've made extensive changes to the theme system that reduce XSS vulnerabilities.
This past weekend, our thriving Vancouver community came together and worked on getting a variety of Drupal contrib projects ready for Drupal 8. This weekend allowed us to put on the finishing touches needed to get a stable 8.x-1.0 release out to the community! Let's have a look at what's new about this release of Basic, as well as some upcoming features.
While working on recent Drupal projects, I learned that Internet 10 and 11 (IE10-11) no longer support IE conditional comments. Conditional comments allow us to target specific versions or version ranges of IE to correct bugs or inconsitentices that normally are not present on other browsers. Typically for IE9 and below, we have been able to write conditional css by using something like this:
When we travel, we create memories, and many of us seek to preserve these memories through souvenirs. Soon you will be in Mumbai for DrupalCon and when you are leaving, you should make sure to pick up something you can always cherish. Here are a few things you can take back from India as souvenirs, regardless of how big or little your budget may be.
We've removed the Composer-managed vendor from the git repository.
There will not be any changes for people downloading Drupal 8 from drupal.org. The Drupal.org packager will add dependencies to zip and tar package.
If you're not using zip / tar files, e.g. when using a git clone, run composer install to get dependencies. See https://www.drupal.org/documentation/install/download#git for instructions.
The Louisiana Drupal Community is proud to welcome you to our world class city! Drupal powers some of our finest universities, museums, restaurants, radio stations and some of America’s oldest establishments.
Since 2010 our local and dedicated group of Drupaleanians meet each month for support and to share and socialize.
Our Drupal Camps (http://www.drupalcampnola.com/) have grown in size and popularity over the last two years with attendees traveling from around the country to attend.
Scott has been working with Drupal for nearly 5 years, and has a strong passion around improving the theming experience of Drupal. Scott was a major force in the push for Twig and clean markup in Drupal 8 core, sharing both his technical expertise and his enthusiastic community-building to make Drupal 8's theme layer awesome. He helped lead the "Consensus Banana" initiative that solved a long-standing concern with how core provides classes and markup, and then helped add the Stable base theme so that Drupal core could provide backwards compatibility for themes in minor releases.
Scott has organized sprints and discussions at many DrupalCons, including the groundbreaking templating and performance testing sprint at DrupalCon Portland that allowed Twig to become Drupal's primary theme engine. He and others also organized a Drupal 8 Accelerate sprint on security criticals related to the theme system that were blocking Drupal 8's release, engaging novice contributors to fix the issues. Finally, Scott was previously a lead for the Drupal Core Contribution Mentoring program, mentoring dozens of other contributors on IRC, at sprints, etc. He is skilled at evaluating a problem, framing how it can be solved, and helping people solve it. In short: Scott has not only the strong technical abilities, but also the patient and supportive personality to make him an amazing fit for a core committer.
Scott's appointment as a core committer was enthusiastically endorsed from the rest of the Drupal 8 committers. Please join me in helping him feel welcome! And please also give thanks to his employer, Digital Echidna, who have agreed to partially sponsor his community time!
I selected David Rothstein as my co-maintainer for Drupal 7 back in May of 2012. Since then, David has done a tremendous job shepherding the Drupal 7 release, paying very careful attention to the ramifications of any given patch and allowing ample time for "real world" testing before incorporating changes into the code base, ensuring that the code powering 2% of the Internet stays stable and performant.
However, after nearly 4 years of excellent stewardship on his own, David would like to also focus on other endeavors, including Drupal 8. Now the time has come to select an additional co-maintainer for Drupal 7. While David himself has recommended some excellent candidates, I'd also like to open the call out more broadly, to see if there are others who have an inclination and interest.
https://www.drupal.org/node/721106 contains comprehensive documentation on everything that a release manager does. In particular, the ideal candidate has the following traits:
- Ample experience building "real world" sites/platforms on Drupal 7, particularly high-performant sites, sites with millions of records, or other edge cases.
- Ample experience performing detailed and thorough technical reviews of patches, being particularly mindful of their effects on existing sites.
- Ability to communicate calmly and respectfully when critiquing code.
- Solid knowledge of Git and the Drupal.org release process.
- Ideally, sponsored time to work through your employer to maintain Drupal 7, particularly around the first and third Wednesdays of the month, which are the Drupal core release windows.
Please either respond here or use my contact form if you'd like to be considered as a potential Drupal 7 co-maintainer. Thank you!
- What has been the biggest success of Commerce on D7?
- By starting from scratch on D7 technologies we created a solution that is intuitive to Drupal developers and easier to extend. And with 60k installs, we’ve set a record for ecommerce on Drupal in general.
- And what do you think have been its biggest weaknesses?
- Not prioritizing UX from the start. Took us a year after the 1.0 release to create Inline Entity Form and recreate the admin screens as a part of the Kickstart. At that point many people already had the impression that Commerce was hard to use.
- Not providing enough direction to developers. Flexibility is important, as is having unopinionated code. But developers also need to have a clear and obvious path forward. Having an opinionated layer on top, with sane defaults, can save a lot of development time and prevent frustration.
- Not prioritizing certain features, leaving them to contrib instead. Modules that make up the checkout ux (checkout progress, checkout redirect, addressbook), discounts. Of course, all generals are smart after the battle.
- How has that influenced the development of Commerce 2.x?
- With Commerce 2.x we once again started from scratch, evaluating all feedback received in the 1.x cycle. We decided to address all three of these major points.
- Better UX means paying more attention to the product and order admin experience, as well as providing better checkout out of the box.
- Better APIs means doing more work for the developer, especially around pricing and taxes.
- And finally, we’re growing the core functionality. We’re expecting a dozen contrib modules to be no longer needed, as we address edge cases and add functionality.
- What are some of the biggest new features of Commerce 2.x?
- Multi-store will allow people to bill customers from different branches (US and FR offices, for example), or create marketplaces like Etsy.
- Improved support for international markets means better address forms, better currency management, and significantly better tax support, the kind that will reduce the need for people to use cloud-based tax solutions, at least in Europe.
- Support for multiple order types, each with its own checkout and workflows will allow developers to create tailored experiences for different kinds of products, such as events, ebooks, t-shirts.
- An integrated discounts UI means more power to the store admin.
- And this is just the beginning. Under the hood there are many small features and improvements, over both 1.x and Kickstart.
- What has Commerce done to integrate better with the PHP and Drupal communities?
- We’ve created several independent ecommerce libraries, attacking currency formatting, address management and taxes. These libraries are now being adopted by the wider PHP community, bringing us additional contributors.
- On the Drupal side we’ve joined forces with the Profile2 team, creating the D8 Profile module that we’ll use for customer profiles. We’re also depending on Inline Entity Form, which is now shared with the Media team. We’re also moving some of our generic entity code into a new Entity API module, maintained together with Daniel Wehner and other community members.
- Finally, we have been champions of Composer, the replacement for Drush Make, and required for any module that depends on external libraries.
- Commerce 2.x is now in alpha2. What’s included? What’s next?
- Alpha2 includes stores and products, as well as initial order and cart implementations.
- It also has functional currency management and formatting, address and profile management.
- Alpha3, to be released in the next two weeks, is focusing on completing the order and cart implementations, and adding the initial checkout implementation.
- Post-alpha3 our focus will be on discounts, taxes, and finally, payments.
- The best way to learn more about this is to read the drupalcommerce.org blog, where I post “Commerce 2.x stories” detailing work done so far. We have several new posts planned for february.
- When can we expect Commerce 2.x to be production ready?
- Our current goal is to release a production ready beta by end of march. We should also have Search API and Rules by then. Leading up to DrupalCon New Orleans we’ll be helping the community implement shipping and licensing and port payment modules. At the same time, we’ll be focusing on reaching RC status.
- What’s the status of commerce contrib? Like PayPal, Authorize.net, etc.
- How can the community help?
- Each new alpha welcomes more manual testing and feedback.
- We also have office hours every wednesday at 3PM GMT+1 on #drupal-commerce where people can discuss code and help out on individual issues.
- Do you feel that requiring Commerce to be installed via Composer will impact adoption?
- The average developer is already familiar with Composer and will benefit greatly from it, just like D7 developers benefited from Drush Make. Getting Drupal, Commerce, and all dependencies is a single Composer command, as is keeping it all up to date.
- People unwilling to run Composer on their servers can run it locally and commit the result.
- I’m also hoping we’ll be able to offer distribution-like tarballs on either drupal.org or drupalcommerce.org as we get closer to a release candidate.
- howdytom @howdytom
Commerce Kickstart provides a great toolset with basic configuration. Is there a plan to do a Commerce Kickstart for Drupal 8? If not, will Commerce provide more out of the box solutions for a full featured shop?
- Commerce Kickstart had several parts.
- The first one was about providing better admin and checkout UX, as well as discounts. That’s now handled by Commerce out of the box.
- The second was about providing a demo store with a developed set of frontend pages. That’s going to stay in contrib and will greatly benefit from the flexibility introduced by Drupal 8 and CMI.
- It’s too early to plan a distribution yet. Drupal 8 has almost no contrib, and drupal.org doesn’t support using Composer to build distributions yet.
- However, we are using Composer to provide single-command site templates, the kind that gives you Drupal core, Commerce and other modules. This will allow us to provide good starting points for different use cases, similar in nature to Commerce Kickstart 1.x.
- Once 2017 comes around, we’ll investigate next steps.
- Jimmy Henderickx @StryKaizer
In commerce d8, will it be possible to alter a product name dynamicly (either by hook or other solution)?
- Czövek András @czovekandras
Any plans making iframe payment methods 1st class citizens? Thinking of running checkout form callbacks.
- Marc van Gend @marcvangend
How did D8 architecture change the way you code your modules?