Normative for Wheatblog Release 1.0
Previous Revision: (April 12th, 2005)
This Revision: (May 26th, 2005)
This document covers the basic requirements, setup and maintenence
of Wheatblog. <More specific documentation can be found
on our main documentation page>.
For a simple, fast implementation of wB, check out the quickstart guide.
Wheatblog was originally designed to run under the Apache Web server, but is likely to work on similar HTTP/1.1 compliant server platforms, provided they support PHP>=4 and either MySQL or SQLite. Consult your hosting provider's documentation to determine if you meet these requirements.
When beginning your install, there are several things to consider. Most important is probably familiarizing yourself with the basic required elements: the web server, PHP, a compatible database, and the ability to perform file permission changes. Most hosts provide a web-based control panel, and changing permissions is a common task often accomplished in the File transfer process.
Once you have established that Wheatblog will work with your setup, you should choose a location for your blog. If you want your blog to be a stadalone part of your website, you should pick a
directory separate from your document root (i.e., whatever directory represents http://yoursite.com/
) Consider this
position carefully. One of the most common mistakes made when establishing a web presence is the shifting of files on a web server, which, without complex
server-side redirection, creates 404's — something the web has far too many of already. Another good reason to be sure of the
location for your blog is search engines; moving your pages around after they have been exposed to the web will negate any search engine records that have been established, effectively bringing your site back to
square one. This link discipline is an important part of conveying your message to the public, and a bit of thought in the beginning will pay dividends down the road.
With a full two-thirds of the market, Apache is far and away the most popular web server on the internet. The design and subsequent testing of Wheatblog
was concentrated on an Apache-based hosting environment, though no real special configuration of the web server itself is required. There are certain benefits to customizing
your blog with .htaccess
files, such as niceURLs, but such customizations exist outside of the scope of this document and are neither recommended nor discouraged.
In short: There are no known issues with Wheatblog under Apache.
In the interest of code efficiency and security, Wheatblog is designed to work with servers that implement PHP>=4. Due to security issues with PHP3, the vast majority of web hosts have adopted PHP4. If this is not true in your case, we suggest emailing your hosting provider and asking them to get with the program, so to speak. ;-)
Wheatblog was specifically designed around the PHP4 language structure. There are, however, some minor bugaboos regarding the magic_quotes_gpc directive; Consult your host about the status of magic_quotes_gpc on your server.
PHP5 At this point, Wheatblog's stability on PHP5 is unknown.
Wheatblog requires six database tables. The code provided to create this structure varies depending on which database you are using, but the semantic structure is the same.
The names of these tables and columns are flexible, but for the sake of organization, it is probably advantageous to leave them as is. If you do decide to change the table names to something personalized, You can set their names in settings.php. The SQLsyntax for creating these tables is located in the .sql file that corresponds to your database implementation. Most hosts provide a web-based GUI for setting up databases and running SQLcode to create tables; phpMyAdmin is often provided and makes this process very easy.
Below is a universal pseudocode representation of the database structure:
* If you can't figure this out, ring the bell and someone will be over to hit you in the head with a tackhammer, because you are a retard. EDIT_ME
Before Version 1.0, wB was only designed to work with MySQL. Support and security for MySQL has been increased, and wB should function properly with all versions of MySQL.
The syntax required to create a MySQL database for Wheatblog is contained in the docs/
directory of your install.
this file is called wheatblog-mysql.sql
, and is basically a text file that can be fed into the MySQL command-line interface or a
web-based MySQL interface such as _phpMyAdmin_.
SQLite is a lightweight and powerful database system that stores information in a single file, commonly called a flatfile database. As of version 1.0, SQLite is fully supported.
The syntax required to create a SQLite database for Wheatblog is contained in the docs/
directory of your install.
this file is called wheatblog-sqlite.sql
.
PostgreSQL is an Open-Source, SQLcompliant database system designed primarily for large systems where scalability is a concern. Wheatblog is not currently capable of using PostgreSQL, though support is envisioned in future releases.
Microsoft SQLServer is specifically designed to run on Microsoft Internet Information Server. Wheatblog does not currently support MSSQL, though support is planned for a subsequent release.
Wheatblog requires more than one distinct directory on your site:
Throughout the development process, this structure has been shown to be the most desirable; isolating the admin and includes directories prevents any unauthorized viewing by visitors, and the language, tools and css directories are sequestered for organizational purposes.
For example, we'll assume your blog lives here:
http://www.your-domain.com/your_blog_directory/
And, we'll assume the admin interface lives here:
http://www.your-domain.com/your_blog_directory/admin/
Add these locations and your database user/password information to the settings.php file and upload everything to your server.
There have been no changes to the database structure, so you can use .05b with
your existing posts without making any changes to your database tables. There have
been minor code changes to almost every file in the project, so if your install has
many customizations, you may want to examine the code closely before trying
implement it in whole or in part. The CSS file has remained largely unchanged.
If you are using your own CSS file, you will only need to add the following
declaration:
The main Settings file, called settings.php
, is located in the main Wheatblog directory. This file contains all the variables you might need (or want) to change
for your blog. Below is a list of these variables, their functions, and the values required.
localhost
.wbtbl_posts
.wbtbl_users
. wbtbl_comments
wbtbl_categories
wbtbl_links
http://www.your-domain.com/
/your_blog_directory
http://www.your-domain.com/your_blog_directory/ .
Wheatblog provides no extra security for the admin layer. Please password
protect your admin directory. If you use Apache as your web server,
you'll do this via an .htaccess file in the admin directory. You can read up
on how to do that elsewhere. Most web hosting companies provide a web-based
GUI that makes it really easy.
Besides the values in settings.php, all the layout is controlled by the includes/header.php, includes/footer.php, and the CSS file. Take a look at these and modify them if you'd like to get away from the default templates.
.Wheatblog_textarea_002 {
color: black;
background-color: #A8A8A8;
width: 99%;
height: 32px;
font-size: 12px;
font-family: "Trebuchet MS", arial, sans-serif;
}
RSS is a great way to share your content with others, either by allowing syndication or through the increasingly popular use of
RSS clients such as Sharpreader. The basic RSS file is called rss.xml. This file located in your blog's main directory, allowing for simple access
by RSS readers and other methods of feed aggregation. You can personalize the name of this file by modifying the $wb_rss
variable found in
settings.php.
The rss.xml file is automatically generated by two Wheatblog processes: Adding a post and Editing a Post. This process represents a change from previous version of Wheatblog which required a manual update of the RSS file. Careful editing is necessary when posting to your blog, as many news readers will reject RSS files that are not valid. The use of HTML entities is required; Future versions of wB will contain input validation and/or regular expression modification to output well-formed XML.
Note: You MUST change the file permissions on rss.xml to 777 so that your web server can successfully create and maintain your RSS feed. Most FTP clients allow you to modify file permissions; If you have an issue, contact your hosting provider for help.
More information about revisions and specific versions can be found on the wB SourceForge Project Page.
See Changelog for a history of changes and known issues.
See History for background on this project.
Wheatblog is free as in freedom and free as in free beer. It is released under the GNU Public License (GPL). You can read about the license at http://www.gnu.org. A copy is included in with the distribution.
Please see the Official Wheatblog Copyright Disclaimer