Even though the solution presented in this chapter offers some nice possibilities, it is incomplete. For one, our custom field definitions rely on configurations in our plugin files, so they are not accessible to the average user. We did not build out an options page in the Dashboard—we showed you how to do that in the previous chapter, so if you want to add a manager page for updating this plugin's options, please review the previous chapter and give it a try. Check the plugin's page on www.tipsfor.us if you want to see some more discussion on this plugin or how to design a manager page for it. As it is right now, you have to define your custom fields in code.
If you look a bit harder, there are a few other limitations here. Form generation is really its own level of hell, and it's difficult to capture all the myriad edge cases that arise. We've been there and done that, and we sneakily side-stepped some of the pitfalls in our presentation. For example, what if you wanted...