Para un sitio reciente, necesitábamos que un bloque de menú fuera visible en las páginas representadas en el menú. Es decir, si la página que estás viendo está en el menú de “Cosas editoriales”, muestra el bloque de menú de cosas editoriales.
El truco aquí es usar PHP para determinar la visibilidad del bloque para los bloques de menú. Si estamos viendo un derivado de nodo, el ID del nodo debería estar en el campo link_path de menu_links. Si estamos viendo una página creada por otro módulo (por ejemplo, vistas), entonces la URL estará allí. Realizamos una consulta rápida para verificar la existencia del valor y devolver verdadero o falso según el éxito.
Debes tener cuidado al usar esto si tienes más de dos o tres bloques, ya que esto significa una consulta de búsqueda de cadena obligatoria por bloque y por página. Si tienes más de un puñado de menús, probablemente valga la pena implementar un módulo con una lógica más inteligente para reducir la carga de la base de datos.