There are a lot of Facebook apps around, most of them existing either as a Facebook Application in order to use the Facebook API from outside Facebook or as an application housed within Facebook itself. The framework Facebook have set up is focused very much on these scenarios, and it provides for them well with its canvas. If you’re a heavy user of a particular app, you can even have an App expose a custom tab on your profile (or your page’s profile) to provide some data about you in the context of the app.
However, a lot of page owners want to have custom tabs for the sake of custom content, not to be integrated within an app. Facebook recently announced iframe tabs for Pages and with it, the deprecation of previous alternatives such as using static FBML for custom tabs on a Page.
However, there are some limitations at the moment that make the whole process, or the possibilities around it rather limited. The main limitation is that a tab must be added through an app, and each app can only expose one possible tab at one Url.
In other words, for each custom tab, you must create and maintain a new application. Again, I can see the logic to this when thinking in an app world, but when thinking from a content context it becomes frustrating. For example, if I want to expose a CMS with a customisable amount of templates for custom facebook tabs, the best I can hope for, if templates which detect the Facebook Page ID are built and change the content accordingly configured, is to create an App per template.
In figuring out a development and deployment process for custom tabs on Facebook Pages, I developed a tab for Glamour.com’s 10th Anniversary which displays the first issue in it’s entirety, and only for users who participate within the Glamour.com UK facebook page. The page layout was designed by James Tenniswood who also put the entire magazine together inside the magazine viewer, powered by Issuu.