I'm working on several projects where we use custom node types (because they're easy to add fields to, edit, show in views, etc), but there are certain node types I wouldn't want to expose at all in the form of pages, i.e. purely internal (maybe they can be viewed in blocks, at most).

What's the best way to accomplish this?

I am using Drupal 7.

  • 4
    Rabbit Hole is one method... – Clive Feb 7 '13 at 14:29
  • First time I've heard of Rabbit Hole, thanks Clive... Rabbit Hole works perfectly for a lot of my usecases, is there anything else? – Jean Azzopardi Feb 7 '13 at 14:42
  • 1
    If @Clive's suggestion doesn't do what you want, you can always create your own node--TYPE.tpl.php and switch on $type and $page inside it to not display the node contents when/if people surf over to node/# on your site. – Jimajamma Feb 7 '13 at 14:42
  • That's also valid I guess, but a bit messier. – Jean Azzopardi Feb 7 '13 at 14:43

Browse other questions tagged or ask your own question.