Forum Moderators: anallawalla & bakedjake
The first question that I'd like to pose (and perhaps attempt to answer) is what are the essential components in a local CMS.
1) Directory: You need to be able to list local widgets. Widgets can be service providers, businesses, local attractions etc. Widgets need to have a 4 dimensional aspect to them related to their location and their service area. (XYZ and Time). Must be user updatable and should have an editorial approval layer.
2) Events: You need to be able to list and maintain local events, related to the directories and unrelated. This adds to the time aspect of the directory.
3) Search: You need to be able to fully index the widgets that have more information on the web. This can be govt pages, sites related to local banks, hotels, service providers etc.
4) Rating: You need people to be able to rank and rate the widgets and events.
5) Geo Services: You need to be able to provide some sort of mapping -- how do you get to this place type stuff and if possible time (how long does it take to get there and will the place be open when you get there). Do NOT tie your engine into zip codes to begin with.. keep it open, many international locations use postal codes. Use a broader classification like lattitude / longitude and then associate that with zip.
6) Spell check: You need to be able to spellcheck and correct on the fly with your search.
7) PPC / Payment Services: You need to be able to add transactions to your website. Accept payment for entries and in the longer term accept payment for transactions.
8) Shopping Engine: You need to be able to facilitate ecommerce for local merchants in the long term.
What else would you want in a local CMS?
1a) Data source. It's not enough to have a one time dump / scrape of local data and have a system that accepts user edits / updates. You need a third party data source.
3a) Site Search. You need more than an off the shelf search product. You need to build your own synonym database that corresponds to the vertical(s) you're in in order to allow your user to easily locate the info they seek.