I'm currently working on a site where I have at least 50 blocks in the right sidebar and perhaps 60 disabled blocks. 30 of the blocks in the right sidebar are faceted searches, 6 in total, with 5 blocks related to each search. I have just configured the title and visibility settings of all 30 search blocks and needless to say it was a huge amount of work.
Also, of the 70 disabled blocks maybe 5 are actually of interest to me. The other 55 were included with contrib modules I use on the site, but will never require the actual blocks themselves.
Block groups
The first feature I propose is the ability to group blocks like cck fields and then set visibility settings etc. on each block group instead of each individual block.
Better block management
The second feature would be better ways of managing blocks in general.
- The ability to filter out blocks I don't need. Perhaps an interface where I can entirely disable blocks (make them not show up at all in the blocks list) on a per module basis.
- Being able to collapse regions and groups would do a lot to tidy up the blocks list. Especially having the "disabled blocks" list collapsed by default.
- Ability to rename block descriptions in the block settings. So instead of blocks being named "ad group: Side bar", "Subscriptions", "Development" I can rename them "Ad group module (NOT USED)", "Simplenews - Subscribe block", "Devel module block" etc.
I've tried searching for similar requests or discussions, but the combination of blocks and groups just lead to a lot of discussions on organic groups and blocks. :)
What do you think? Is this something that would be useful without bloating the blocks system?
I've created a ton of sites with Drupal and this is the first time I've used more than maybe 5-10 blocks, mostly because this is not a project we started, but rather took over and where we would code something ourselves the orginal creator used contrib modules and thus ended up with hundreds of them. So this is by no means a must have feature, but now that I'm working with so many blocks I can see that it would be handy.
Comments
Comment #1
twiik commentedAlso, alphabetical sorting as default of the disabled blocks would be preferable to how it is now. I was just looking for a block and it was impossible to find without resorting to the browser search. :)
Comment #2
BigMike commentedThis is such a fantastic idea, has anything been done for it?
Thanks
Mike
Comment #3
twiik commented@BigMike, not that I know of, but here's what I did to remedy my problem.
I copied template_preprocess_block_admin_display_form() from block.admin.inc to my template.php and in it I added:
Which simply remove the blocks I do not want or need from the admin/build/blocks form. I also wrote the name of the block so it's easy for me to add one back in in case I need it.
My $unwanted_blocks array actually has 150+ entries, just to give you an idea of how important a proper way of managing blocks is on a site with a ton of contrib modules.
This could easily be rewritten into a module which allows you to select what blocks you do not want to show to users based on roles etc. So the super user sees all, the content moderators only sees what they need, the administrators see what they need for example.
EDIT: Another thing I found is that there's actually a template file block-admin-display-form-tpl.php which controls the final display of the block listing. So with the preprocess function and the template file you have total control of the block display.
Comment #4
timhilliard commentedI think overall you are right in that some nicer grouping would be effective.
How about renaming the disabled block section to something like unassigned and then adding a checkbox that allows you to permanently disable a block so that it doesn't show up in the block listing page. Then make a new local task that is all the disabled blocks so that you can bring them back to the list if needed.
I think it would also be nice to include the functionality of http://drupal.org/project/multiblock into core.
Comment #5
timhilliard commentedDuplicate of #386532: Hide Blocks From admin/build/block
Comment #6
theorichel commentedSubscribe
Comment #7
Jeff Burnz commentedBeing worked on, long term goal: http://groups.drupal.org/node/67598
This is a duplicate so better to shift discussion over the older thread, be cool if someone could do a small module that allowed us to remove blocks, would really declutter the blocks page.
Comment #8
greta_drupal commentedSeriously. I waste an enormous amount of time with the block management page. For my money, I'd like a way to set visibility defaults, e.g., hide all blocks on admin* and user/* pages. And, I'd like to see the current visibility settings on the block list view -- without having to load the individual block page. A real time waster.
Also, wouldn't it be great to be able to set negative and positive visibility at the same time. Something like:
+ events/*
- admin/*
- users/*
Worse about the clutter and extraneous blocks, it makes it difficult to train non-Drupal clients. Block management seems to be confusing to them as it is, but then you gotta say: "Oh, yeah, and ignore these blocks"; and "edit this block just to see the current visibility settings".
Frankly, I think that the other block management tools, such as Context and especially Panels, are way too confusing for client users. Too foreign and intimidating. The core management seems to be the least confusing. But, if anyone has found anything better, do tell.
I have been using Editable Blocks (a nice module) to create client-generated block content, with hover edit links. That makes it more straight-forward to client users. Would be nice for the blocks UI to separate those (or color code), too.
I am going to try customizing the block template with these things. Hadn't thought about that until this post.