Note: These are Installation and Configuration Instructions for SEO-Board 1.05
If you are upgrading from 1.0x to 1.05 look at the upgrade.htm file in your SEO-Board directory.
1. Create a MySQL database. Use the web based MySQL admin provided by your hosting provider.
Or use the plain SQL command: create database DatabaseName;
2. Unzip the SEO-Board zip file and upload all files and subdirectories.
3. Set up all options in the file seo-board_options.php . Here's a list of all variables you need to setup in order to install the board:
- $dbhost = 'localhost'; Host name for connecting to the MySQL database. Most probably it is localhost.
- $dbname = 'seo_board'; The name of the MySQL database you've created for the board.
- $dbuser = 'username'; MySQL username for accessing the database.
- $dbpass = 'password'; MySQL account password.
- $dbpref = 'seo_board_'; Prefix added to all table names. You don't have to change it.
- $adminfile = 'admin.php'; Name of the script file that provides all admin functions. I advise you to rename the admin.php file to something hard to guess and provide the name in this field.
- $adminuser = 'adminusername'; Admin username. It is used only during installation to create the admin account in the database.
- $adminpass = 'adminpassword'; Admin password.
- $adminemail = 'firstname.lastname@example.org'; Admin email. This email is used to send out all board emails.
- $forumhome = 'link to forum home'; Link to the main forum page. It can be http://www.domain.com or http://www.domain.com/index.php or another if you rename index.php
- $forumdir = 'forum directory'; The directory holding the main script file. Used for link generating purposes. Must start with http:// end with '/'. Example: http://www.yourdomain.com/forum/ or http://forums.yourdomain.com/
- $forumscript = 'link to main forum script file'; Full link to the main script file (index.php or other if you rename it). Example: http://www.yoursite.com/forums.php or http://www.yoursite.com/forum/index.php
4. Run the installation script from your browser (install.php). Example: http://www.yoursite.com/forum/install.php
If you have set all user/password fields above correctly, you should get 'Forum Installed Successfully!' message. If something is not configured, you'll get the specific MySQL error.
5. Delete install.php from your site! If you don't someone can run it.
6. Access your forum from a web browser. Use the admin username and password to login. You will see a link to the admin panel.
Create your forums
In the admin panel create all forums and forum categories. It is pretty straightforward.
Customize all variables in seo-board_options.php
seo-board_options.php contains many other variables that control the functionality of the board. Now's the time to set them right.
- $cookiedomain = ''; Cookie setting that you won't have to change. If there's a problem try setting it to your domain name without 'http://'. Example: www.yoursite.com
- $cookiename = 'seo-board'; Name of the cookie used for user login purposes. You don't need to change it.
- $cookiepath = ''; Another cookie setting. Leave it like that.
- $cookiesecure = FALSE; Another cookie setting. Leave it like that.
- $enablegzip = 0; GZIP compression 0-disabled; 1-enabled. If you enable this option, you save some bandwidth but use more server CPU power.
- $visittimeout = 600; Visit timeout in SECONDS. If this time passes and you haven't read any post (since last reading a post), forum will think you are starting a new session. All topics with new posts since then will have a "new" indicator. That way you'll know all topics that got replies since your last visit.
- $usereditposttimeout = 1200; Time is in SECONDS. When a user posts, he/she will be able to edit his/her post unless this time passes. If you set it to 0, users won't be able to edit their posts at all.
- $forumtimezone = 2; Default time zone for guest visitors.
- $registermode = 1; 1- register new users immediately; 0- send an email with generated password
- $forumtitle = 'SEO-Board Forums'; Your forum title. Don't set this to a too long title.
- $lang = 'eng'; Forum language. All language packs are kept in the /lang/ subdirectory. 'eng' means eng.php which contains the English language pack. If you have a russian language pack ru.php, you need to set this to 'ru'.
- $invalidusernames = array('Anonymous', 'Guest'); Forbid users from registering with these names.
- $maxwordlength = 60; Maximal word length allowed in posts.
- $maxpostlength = 20000; Maximal characters per post.
- $postsperpage = 30; Show how many posts per page.
- $topicsperpage = 20; Show how many topics per page.
- $searchresultsperpage = 30; Show how many search results per page.
- $searchexpiretime = 600; Leave this alone.
- $showforumstats = 1; 1- show forum statistics on main forum page; 0- don't show forum stats.
- $showlastposts = 1; 1- forum will show a list of topics with the last N posts on main forum page. 0- don't show this.
- $shownumlastposts = 30; If above is set to 1, forum will show the topics with the last $shownumlastposts posts.
- $lastpostsexclude = array(); Provide the forum IDs of all forums that you don't want to participate in "Latest Forum Posts". Example: =array(1, 4); means you don't want topics from forums with IDs 1 and 4 to participate in the "Latest Forum Posts"
- $datetimeformat = 'd M Y H:i'; Date/Time Format.
- $dateformat = 'd M Y'; Date format.
- $shortdateformat = 'M Y'; Shorter Date Format.
- $antispam = 60; Users are disallowed from posting within this number of seconds after making a post. Set it to 0 and users will be able to flood the forum with posts.
Setting Special Forum Options
SEO-Board supports special forums (private, readonly..). This is set in seo-board_options.php using php arrays. Forums are identified by their Forum IDs as kept in the database. To find the ForumID of a forum click on it and you'll see the ID in the URL (as f=id or forumid.htm). SEO-Board uses seo-board_options.php to store all these options in order to save database queries and speed the forum script up maximally.
- $privateforums = array(); If you want to have private forums this array is the place to set it. Format: =array(privateforumID => (alloweduserID1, alloweduserID2..));
Example: $privateforums = array(7 => array(5, 12, 1277)); will make forum with ID 7 private and only admin and users with IDs 5, 12 and 1277 will see this forum.
- $readonlyforums = array(); Make some forums read only (only admin will be able to post). Format: = array(readonly_forum_id, readonly_forum_id2);
Example: $readonlyforums = array(1, 5); will make forums with ID 1 and 5 read only.
- $postonlyforums = array(); Make some forums post only (only admin will be able to create topics). Format: = array(postonly_forum_id, postonly_forum_id2..);
Example: $postonlyforums = array(11); will make forum with ID 11 post only.
- $guestscanpostforums = array(); By default guest cannot post. They must register/login. This option will allow some forums to allow anonymous posting. Format: = array(guestcanpost_forum_id1, guestcanpost_forum_id2..);
Example: $guestscanpostforums = array(4, 13); will allow guests to posts in forums with IDs 4 and 13.
- $allowhtmlforums = array(); Allow HTML tags in some forums. Format: = array(allowedhtmlforumid1,...);
Example: $allowhtmlforums = array(5); will allow posting of HTML tags in forum with ID 5.
- $articleforums = array (); This options sets forums that show all topics sorted by time of creation (not by time of last post). Format: = array(forumid1, forumid2..);
Example: $articleforums = array (16); Forum with ID 16 will be sorted by time of topic creation.
You can assign moderators to every forum. These options are set in seo-board_options.php to avoid unnecessary queries to the database. You need to know the Forum IDs and User IDs of the moderators. To find the User ID of a user click on his/her user profile and the ID will appear in its URL.
- $showmoderators = 0; 0- don't show a moderators list; 1- show a moderators list on each forum.
- $moderators = array(); This array will set the moderators of every forum. Format: = array(forum1ID => array(moderatorID => 'ModeratorName', moderatorID2 => 'ModeratorName2'), forum2ID => array(ModeratorID => 'ModeratorName...;
Example: $moderators = array(1 => array(34 => 'Peter', 123 => 'John')); This will set users with IDs 34, 123 moderator rights on forum with ID 1.
Setting Up the RSS/Atom Feeds
- $feedexcludeforums = array(); If you want to exclude some forums from the feeds list their forum IDs here. SEO-Board will exclude private to the guest visitor forums by default.
Example: $feedexcludeforums = array(3, 6); This will exclude topics from forums with IDs 3 and 6 from the rss/atom feeds
- $feednumtopics = 10; Sets the number of topics to put in the feeds
Apache Mod-Rewrite Support
If you want to use search engine friendly URLs read this section. Instead of having an URL like index.php?a=vtopic&t=12, you can have topic12.htm This will work only on Apache.
1. In seo-board_options.php set the $modrewrite variable to 1 ($modrewrite = 1;). Now SEO-Board will generate search engine friendly URLs.
2. Put the mod_rewrite rules in the .htaccess file in your forum directory. See the htaccess_example.txt file for the default way to do it:
RewriteRule ^forum([0-9]+)\.htm$ ./index.php?a=vforum&f=$1
RewriteRule ^forum([0-9]+)-([0-9]+)\.htm$ ./index.php?a=vforum&f=$1&p=$2
RewriteRule ^article([0-9]+)\.htm$ ./index.php?a=vtopic&t=$1
RewriteRule ^article([0-9]+)-([0-9]+)\.htm$ ./index.php?a=vtopic&t=$1&p=$2
You may need to make some changes to the above text (like include the path to the forum files or sth else)
Skin your Board
Colors, borders etc. are kept in style.css file in your /skin/ subdirectory. Edit the file to change colors/borders etc.
All HTML is kept in files in the /skin/ subdirectory. Edit the HTML files to make changes to the overall design. Files: main_header.htm and main_footer.htm are common to all forum pages and you can edit them to make your forum fit into your site's design.
To find which HTML template file you need to edit, view the HTML source of a page and you'll see the start and end of each template. Example: <!-- START: mainguestnavigation --> means start of mainguestnavigation.htm template.
Smilie info is kept in /smilies/smilies.php file. Array $sm_search contains the smilie text codes and $sm_replace the path to the corresponding smilie image. Edit these 2 arrays to change the installed smilies.
The $barsmilies variable specifies how many smilies should be shown on the smilie bar (when you make posts). If there are more smilies than shown, SEO-Board inserts a link "All Smilies" that runs a popup showing all smilies.
To change the way the popup shows all smilies edit smilies_popup.php
1. I am not responsible for anything that happens by the usage of SEO-Board (except high search engine traffic, great speed and satisfied forum users)
2. You can edit/customize the forum, use it free for personal/commercial sites.
3. You can use parts of the code in your own applications.
4. You cannot rebrand and sell SEO-Board.
Got Questions? Need Help?
I will be happy to help you. Ask your questions on the community forums.