We're building a module for generating HTML for email newsletters. We've looked into using a few other modules (SimpleNews, MailChimp, among others), but due to various requirements, it'll be easier and better for us to build a custom solution.
Being a new Drupal developer, I'm a bit worried about handling this in a "non-Drupal" way. That being said, my plan is to setup a vocabulary with Newsletters as a term and the actual Newsletters as sub-terms, like so:
Newsletters (term)
- Newsletter A (sub-term)
- Newsletter B (sub-term)
This has the added benefit of being able to organize where articles were published (besides just on the site.)
The question, though, is how to handle the different Newsletter issues. I could go another level deeper in the vocabulary, like so:
Newsletters (term)
- Newsletter A (sub-term)
- Issue - 2010-03-01
- Issue - 2010-03-02
- Newsletter B (sub-term)
- Issue - 2010-03-01
- Issue - 2010-03-08
But I'm wondering if this is adding a bit too much complexity. Once I have this taxonomy setup, when the user went to add new newsletters it would also create a node (content type: newsletter), and when he/she went to add new issues, it would also create a node (content type: issue.) Those would then be the landing pages for that content.
So, the question is is there a better way for handling this structure? Is this a Drupal-like solution?