There's been a few Best Practices added to our document on developing in Atomz. When you're working in Atomz, try to stick to these Best Practices to the best of your ability. If you need support, contact me or support@xxxxxxxxx <mailto:support@xxxxxxxxx> . If you have any comments or new ideas on this doc, let me know! c h r i s m c g r a t h internet systems analyst p l a y g r o u n d division of intrawest www.greatplaygrounds.com telephone 604.675.7532 Best Practices for Atomz Development, v1.2 1. Make the page in Atomz look exactly like the page on the live site. Users are confused if the Atomz page doesn't look like the live page. For example, if the header is an included ASP file, the user won't see it in Atomz and will get confused. Convert all includes to Atomz includes, and note the next 2 best practices. 2. If a page element is optional, surround it with <publish-if-not-empty>. This is especially important on global templates. 3. Include stylesheets on all pages. Surround it with <publish-if-not-publishing> so it only shows up on the Atomz server. This will make page components--headers, footers, nav bars, etc.--look like the end product. 4. Use a global include for pre-defining commonly used elements. Use the file /templates/_global_includes.pbt. Define things like clear gif spacers, horizontal rules, etc. 5. Use pub:/ for the paths of all images and hyperlinks. For example, pub:/_img/spacer.gif. pub:/ rewrites your URLs so that the path will be correct even if you move something into a new directory. It is especially important to use pub:/ on templates or on included files, which may be referenced in several different directories. 6. Follow this pattern for naming tasks: [Verb] [noun] - [modifiers] In other words, [Create|Edit|Delete|Upload] [page|file|navigation|footer] - [Top level|2nd level|Tech section|Finance section] Examples: Create page - Vertical layout Create page - Horizontal layout Edit footer Edit header Upload files Upload PDFs, Word docs Edit navigation - Top level Edit navigation - 2nd level Do not use words like 'a', 'an' or 'the' Keep it very short Group similar type tasks together--all 'Create' tasks together, then all 'Edit' tasks, etc. If there are more than 6 or 8 tasks, break them into directories by site structure Delete all the pre-defined Atomz tasks 7. Follow this pattern for your directory structure: /_img/ /_img/user_uploaded/ /_img/backgrounds/ /_img/nav/ /_inc/ /_docs/ /_css/ /_js/ /templates/ /templates/DO_NOT_MODIFY/ (for Playground Web Team only) 8. In Publish Settings, don't allow Administrators or Editors to edit Publish settings at time of publish. We need admins to think carefully about editing these settings. Make them go specifically to the Publish settings area. 9. Minimize number of templates. Excellent Atomz implementations have very few templates. We recommend the following templates: Templates to be included on master templates (either these templates or pages based on these templates are included in master templates, depending on situation) * Header template * Footer template * Top-level navigation template * 2nd-level navigation template * 3rd-level navigation template * 1 to 3 templates for looping tables Master templates * Home page template * 2nd-level page template * 3rd-level page template * 4th-level page template * Unique template for each form For 20 page sites, strive for a 4:1 page to master template ratio. For 100 page sites, strive for a 10:1 ratio. 10. Put extra effort into grouping and edit-marker positioning. When your template is complete, revisit the positioning of Atomz edit-markers. Use <publish-edit-marker> and the pbeditmarkerdirection attribute to precisely indicate which information is edited by clicking. Group elements logically using <publish-group> so that similar elements can quickly be edited at once. 11. Make sure <TITLE> tags are editable. The <TITLE> tag for each page should always be editable. See the Atomz Help documentation on <publish-title>. When the user starts a Task and is presented with a list of files for editing, the title of that page should be visible in the list.