MistCMS v1.26 Readme ------------------------------- copyright 2009 Dvondrake Studios by Doug Tyrrell dvondrake.com Contents 1) What is it? 2) License 3) Requirements 4) Installation 5) Upgrading 6) Explaination 7) Integration 8) MistCode 9) Other Features 10) Troubleshooting What is it? - MistCMS is a free Content Management System written in PHP that allows you to dynamically create and remove content on your website without having to reupload everything every time you want to make a change. Other content management systems require you to make a website design based on their templates, which can be very complex and tiresome, and the end result will look a lot like every other website design that uses that CMS. With MistCMS, you have complete freedom and control over how you want your website to look. MistCMS works around your site design, not the other way around. License * You may: - Run MistCMS for any purpose. - Study how the code works and adapt it to your needs. - Redistribute copies so you can help your neighbor. * You may NOT: - Release your own revisions of MistCMS to the public. - Steal MistCMS and call it your own. Requirements - PHP4 or higher - A MySQL database ready to use - Apache with mod_rewrite enabled Installation - Upload the following files/folders to a web-accessable folder: /images/ /tiny_mce/ .htaccess index.php mist.php - CHMOD the folder where mist.php is to 777. - If you want image uploading, CHMOD /images/uploads/ to 777 too. If you don't know how, find out here: http://php.about.com/od/phpbasics/ht/chmod.htm - Open up a web browser and navigate to the folder you just uploaded everything to. A notice should come up about MistCMS not being installed, and the installation wizard should begin. - Follow the instructions, and you're ready to use MistCMS! Upgrading - To upgrade MistCMS, simply reupload and overwrite the files affected in changelog.txt. Included with every new release, this file tells you what changes were made between different versions and what files were affected. You only need to upload the files affected. Be sure to follow any special instructions. - When updating from more than one version behind, be sure to upload and replace all the files affected since your last update! - If a database update is required, you will be prompted to update the database next time you log into your admin panel. - And you're done! See how easy that was? Explaination - There are a few things in MistCMS that function or are named differently than in any other CMS out there. You might want to read up on what they are and how they function below. Posts - A post is essentially a webpage that contains your content. It can be put in a folder, and it's URL can be changed or shortened for easier access. (See "Files" below) - You may not delete the post for the main page of the root folder, as this may cause problems. You can rename and rewrite it, though. Folders - A folder is essentially a category, but it functions as a folder for your posts too. If you put a post in a folder called "software", then you acn get to that post by using that folder as the URL. Example: http://dvondrake.com/software/mist - There is no way to directly edit folders. You can only create them by creating a post in a new folder from the folder select dropdown on the create page, and you can remove one by deleting or changing the folder of all the posts that use that folder. - A folder cannot function as a post. If you want to have an "index" post for that folder, simply create a post with the name of the desired folder under the root folder. ("/") Example: If you want this http://dvondrake.com/software Create this Title: software Folder: / Files - You may have noticed the "File" option under 'Title' when you edit posts. This is a filtered, abbreviated title that is used in your website URL to navigate to that post. Example: http://dvondrake.com/software/mist 'software' is the folder 'mist' is the file 'Hello Dolly' is the title Integration - Create your website design. You don't need to worry about how to include content just yet, as MistCMS is designed to work around your site design, not the other way around. The only thing you need to know right now is that your site design must be named "index.php" and put in the folder where mist.php is. You might want to take a look at the example index.php included with MistCMS. Including MistCMS - In order to get MistCMS to run, you have to include it. At the VERY top of your file, put the following code: - There you go! Now you can work on including other things like menus, titles, and content. Menus - To include a menu in your design, simply put the following tag in your code wherever you want it to appear: - This function takes one optional parameter: the folder you want the menu to list the contents of. Examples: - Lists the contents of the main folder - Lists the contents of "foo" - Lists the contents of "bar" - You can also make a dynamic menu that lists the contents of the current folder, like so: - You can change the format of menus in the options menu of your admin panel. Titles - To include the title of the current post you're viewing, simply put the following code wherever you want it to appear: - You can put any kind of formatting you want before or after this tag. Example:

- Makes the title a header (bold) Content - To include the content of the current post you're viewing, put the following tag wherever you want the content to appear. - As usual, you can format this however you wish. Blurb Lists - A blurb list is a kind of list that shows the title of the post, and a summary of the post's contents beneath it. Clicking on the title of the post brings you to the page. You can format this however you like in the options section of your admin panel. - To include a blurb list, use the following code: - This function takes the same optional parameter as the menu function: the folder. Take a look at how to include a menu above for more information on how to do this. Configs - You can include any value from the options section of your admin panel in your site design. To do so, paste the following code: - This example prints the title of the website. You can replace 'title' with the name of any config option. - Another useful config is 'tagline', used for slogans. Post Date - You can include the date the current post you're viewing was created with the following code: - You are free to use any formatting before or after this tag. Metatags - You can include metatags that are generated on a per-post basis from MistCMS into your website design. To do so, put the following piece of code somewhere inside your tag: - This example will include BOTH keywords and description metatags. To include them seperately, use the following pieces of code: - The description uses %description% MistCode tags, and if there are no %description% tags, it uses the same algorythm a blurb list. The keywords are made using the %keyword% MistCode tag. (See "MistCode" below) Advanced Usage - If you want to use the folder or filename of the page a visitor is on in a template, simply use the following functions in your index.php: // folder name // page filename - You can use this to display content only on certain pages. - postshort() returns "index" if it's the index page of the site. - Folder name is blank on category posts, which appear in postshort(). Use the following function to return both folder names and category post filenames, which is useful for properly categorizing templates: - Take a look at "Image Uploader" lower down the readme under "Other Features" how to align uploaded images in your CSS. Comments System - While MistCMS doesn't support comments on its own, there are many 3rd party scripts out there that work fine in conjunction with MistCMS. All you have to do is put the code they tell you to in your index.php template wherever you want comments to appear. - The only 3rd party script we've tested is DISQUS, which works fine. If you know of any other 3rd party comment scripts that work well with MistCMS, let us know on our support page and we'll mention it here! http://dvondrake.com/support MistCode - Similar to the BBCode that forums use, MistCode can be used inside posts and settings to display and format different things. Just put these tags wherever you want something to display. They work just like the functions above do, except you can only use these in posts. In A Post - These MistCode tags can only be used in posts. Configs - To display configs, type the following: %config[title]% - Replace title with whatever the config name you want to display. Menus - To display menus, type the following: %menu[folder]% - Replace folder with the folder name you wish to display. - To display from the root folder, leave out the brackets. %menu% Blurblists - To display a blurblist, type the following: %blurblist[folder]% - Replace folder with the folder name you wish to display. - To display from the root folder, leave out the brackets. %blurblist% Blog Display - The blog tag displays all posts in a folder named after the current post's URL in a paginated, blog-like format. %blog% - Example: If the current post is in the root folder and is named "blog", then we put a %blog% tag in there, any posts created under a folder named "blog" will be displayed there. Post Date - To display the date the post was created or edited: %postdate% Split - To split a post and use the top part as a blurb and the bottom part as a full article (as opposed to use using the first X characters as a blurb), put the split tag wherever you want to split the post in two. %split% Ignore - Put this anywhere in a post to make it ignored by blurb lists, menus, and RSS. %ignore% - This post will no longer show up on blurb lists, menus, or RSS feeds. Keywords - Put this at the beginning or end of your post and put your keywords inside. These will be used to place metatag keywords in your website. (See "Integration" above) %keywords%one, two, three%endkeywords% - Replace "one, two, three" with your keywords, without quotes. Seperate each keyword with a comma. Description - Put this at the beginning or end of your post and put your desired description inside. This description will show up in metatags. %description%one, two, three%enddescription% - Replace "this is my page" with your description, without quotes. Don't make it too long--keep it to about a sentence. In Settings - You can use these MistCode tags within most of the settings in the options section of your admin panel. Post Title - To display the title of a post %title% - Can be used in Blog Format Post Date - To display the date of a post %date% - Can be used in Blog Format Post Link - To display a link to a post, including %link% - Can be used in Menu, List, and Blog Formats and both 404 options Blurb - To display the blurb of a post: %blurb% - Can be used in List and Blog Formats Filename - To display the filename of a post: %short% - Can be used in both 404 options Other Features RSS Feeds - MistCMS comes with an RSS feed generator. To use it, simply type the following URL into your browser or RSS reader: http://www.mysite.com/mist_feeds/folder/feed.xml - Replace mysite.com with your site's domain name, and folder with the folder name you want to grab posts from to put in the RSS. - To view posts from the root folder, simply exclude the folder: http://www.mysite.com/mist_feeds/feed.xml - RSS feeds use the same settings as blurb lists. TinyMCE - TinyMCE is a 3rd party WYSIWYG editor made in Javascript that's included with MistCMS. It allows for rich text formatting while editing and creating posts. You can toggle this on and off with the "Toggle HTML" link at the bottom right of the text box. - TinyMCE is distributed by moxiecode.com under the GPL license. We take no credit for TinyMCE or it's WYSIWYG editor. It is only included with MistCMS as a convenience. Visitor Logging - MistCMS comes with a simplified version of FireLog, Dvondrake Studios' free PHP logging script. By default, visitor logging is disabled. - To enable visitor logging, simply login to your MistCMS admin panel, click the "View Visitor Log" link on the home page, and click the link to enable logging. - MistCMS must be able to read and write to the mist_logs/ folder. To do this, either CHMOD the folder where mist.php is to 777, or manually create the mist_logs/ folder and CHMOD that to 777 if you encounter problems. For more information on CHMODing, see "Installation" above. Image Uploader - New in version 1.26 is an in-editor image uploader. It will upload images to the /images/uploads/ folder relative to your mist.php, so make sure this folder is CHMODed to 777. Uploaded images can be inserted directly into the post as a clickable thumbnail or just as the full image. - Images inserted into posts are automatically wrapped by div tags so you can control their layout in a CSS file. An example is included in index.php. Troubleshooting - Having problems? Even though MistCMS is in a stable condition, it's still possible to find some bugs here and there. We'd love to hear about them so we can fix them in later versions. - Need help? We offer free support on our site: http://www.dvondrake.com/support