How to manage text on my site that's not node content? I have text on my site that isn't node content, such as:


footer legal text
"Subscribe to our newsletter"
"Browse our categories"
etc. 


I need to save my development work as a Feature but I also need content editors to be able to edit the text. But I don't want to give them permission to edit all blocks. In the not too distant future, the site will be extended to another region so this content will also need to be translated.

Is there a technique / solution designed for housing this data? 

I could create a new content type and create a new field for each piece of text. I could easily print the field in TPL files but it might be a little harder to print it in blocks. I also don't know if its performance inefficient to do this, does the whole node object get loaded when you print a single field? 

I've heard about (but not used) the Nodeblock module. It looks like this would work but I don't know how easy it will be to work with the Features module (I don't think you can feature nodes). 

One nice thing about the first method is that the field label could be descriptive eg "Footer legal text" which would make the translation side of things easier.
Consider using the Bean module for this. Here is a quote about its project page:


  Think of a Bean as a method to provide new types (compared to node this would be a content type) which then provides an add content interface to create as many blocks as you require (see screenshot below). The bean content can then be placed around the site just like any other block.


If you'd grant content editors the appropriate Bean permissions, it appears to me that you might be close to a possible solution to what you're looking for.

The video tutorial Drupal Bean module tutorial - using Bean Admin UI provides a great introduction to really understand the power of this module, and the kind of things you can do with it (by only using site building techniques, no custom coding involved). It also shows how the Bean module transforms Drupal blocks into fieldable entities.

PS: This module only started as of D7, and is already integrated in core in D8 ...