What is it?

This module provides a block which lists relevant content. This is done using Presets to provide configuration to filter for specific content types and vocabularies and to limit the maximum size. The result are a list of nodes which the module considers most relevant based on the categorization of the current page. This is achieved by finding other nodes which contain the most amount of taxonomy terms in common.

The older Drupal 6 module provided this as Block and a CCK Field Type, however given the direction Drupal is taking with Layout Builder I have currently opted to for just a Block. Each preset is its own exportable configuration entity so can be exported and managed through Configuration Management. Each Preset gets its own block you can place.

Example

Say you have a blog node which is tagged with terms A, B, C & D and you enabled this module to provide a block of relevant nodes. When you visit this blog node this module will go off and do a lookup on all other blog nodes and filter out so it produces a list of nodes which are one of the selected types for that block and also tagged with any of A, B, C or D (our current viewing nodes terms). It then groups this list on the node ID and counts how many terms each node has. This effectively is finding how many terms each other node has in common with the current node. If there is more than 1 node with the same term count then it falls back to the created time-stamp, placing the most recent ones at the top. There is also an option to exclude nodes from the listing. This is useful if you are on a node page as it means the module will automatically exclude the currently viewed node from the list (it would probably rank as the most relevant node otherwise due to the number of matching terms).

Similar Modules

After promising a comparison of "related content" style modules - someone else (Robert Middleswarth) has been brilliant and done it for me! Checkout the in-progress comparison here. (2022 Dec update; the comparison page hasn't been updated since 2019).

Older versions

The Drupal 6 version is no longer supported. I didn't get around to updating this for Drupal 8. The current version was written in Drupal 10. I plan on writing some test coverage and checking it in Drupal 9.4 / 9.5 as I believe they should be mostly Drupal 10 compatible.

The Drupal 7 one is kept purely as a dev release while people upgrade their legacy sites.

Project information

Releases