Finally having tired of writing lots of HTML ever time I updated my
website, I decide it was time for some automation. I wasn't able to
find anything I liked that would run on my university's server (though
Simple PHP Blog has
progressed quite nicely since then), so I set out to write my own.
After three weeks or so of coding and learning PHP, I had the first
version of RCBlog, which was used to manage my website, but wasn't
very stable. Now, a couple upgrades and a few hundred bug fixes
later, I feel I have something worth distributing to the public. Enjoy.
top
RCBlog is released under the RCFS (RC's Free Stuff) license,
which means you can whatever you want with the code. I cannot
be held responsible for anything it does or doesn't do, and
I ask that if you use my code, you give me credit for the work
I did (though that isn't necessary).
top
RCBlog has the same features as a lot of other packages. Here are a few that aren't
very common, and that I am most proud of:
- requires only PHP
All data is stored in flat text files, so no database software
is required. All you need is PHP 4.3.2 and appropriate write permissions
on your server.
- easy-to-manage static posts
Aside from the weblog format of the front page, RCBlog allows for static
posts that are linked to from the navigation menu. These are for pages
that contain information that remains relevant for extended periods of time,
like an about page or a list of software releases.
- automatic color scheme generation
You can give RCBlog a single color (in 24-bit hex format), and it will
generate an entire color scheme for you. Of course you can still specify
each individual color if you want to, but you don't have to.
top
Installation of RCBlog is fairly simple. First, you need to extract
the contents of the installation archive to the root directory of your
webspace. Next, create three directories named "data",
"config", and "files", and (if you're on a UNIX system)
give them write and execute permissions for everybody (777). That's it.
Next, you need to open up a web browser and configure it.
top
The first time you navigate to your RCBlog website, there won't be much on it.
Before you can add some content, you need to do some configuration. If at any
time during this procedure, you get the "Cannot write to file" error, your
permissions are not set properly. Head back to the installation
section to fix them.
Logging In
First, you'll need to log in. Follow the Login link from the menu at the right
side of the page. The default username and password are both "RCBlog". Once
you've logged in, the menu will contain a few more options than it did before.
The first you need to visit it Change Login. This will allow you to specify your
own username and password so that other people won't be able to mess with your
site.
Configuration
You probably will want to change the title and copyright information. To do this,
follow the Configuration link from the menu. This will allow you to customize
various parts of the site. On this page, you will find entries for various aspects
of RCBlog:
- Site Title
The text that appears in the browser's title bar, and is
used when bookmarking your site.
- Blog Title
This is the title that appears at the top of every page
within RCBlog. Markup is allowed
here.
- Description
A description of your site, used by most search engines
to index pages
- Keywords
Some comma-separated list of keywords describing your site.
These are used by most search engines, in addition to the
description, to index web pages.
- Footer
The text that appears at the bottom of every page within
RCBlog. Markup is allowed here.
- # of Recent Posts
The maximum number of posts to display on the front page
- Date Display Format
This is the format for displaying the date and time of your
blog posts. Markup
is allowed, but not recommended.
- Menu Date Format
This is the format for displaying dates in the archive at
the right side of the page.
- Server Offset
The number of hours difference between you and your server.
- Display Menu when Not Logged In
If you don't want a Login button on your front page, you can
set this option to no. In order to log in later, you will have
to navigate to login.php
Colors
If you don't like the default color scheme, you can follow
the Set Colors link from the menu to change it. The first area, titled Set
Colors Automatically, does exactly what it says. Give it a color for the page
background, and it will automatically generate an entire color scheme to match
the color you chose. If you would rather specify colors yourself, you can use
the second area, titled Set Colors Individually. This will allow you to specify
each color used within RCBlog. Note that all colors are in 24-bit (6 digits)
hexadecimal format. If you don't know your hex colors very well, there are some
decent color pickers here
and here.
Banners
The area below the menu that reads simply "powered by RCBlog" can be edited to
contain more information, such as banners and links to other sites. When you
are logged in, simply follow the edit link at the top of the box. Note that
code here is straight HTML ( XHTML 1.1), and not RCBlog's markup.
If you don't know HTML, then leave this section alone.
Now that you're all set up, you should post something.
top
Blog Posts:
Blog posts are the ones that appear on the front page. The most recent post
always appears at the top, followed in reverse chronological order by other
posts up to a limit specified in the configuration.
Posts too old to be displayed on the front page are accessible via the archives
section on the right side of the page.
Static Posts:
Static posts always appear alone in the content area, and are linked from the
navigation area, at the top of the right-hand side of the page. The Manage Static
Posts area of the menu allows you to change the order of these links, as well as
edit and delete them, and add and remove dividers. You may also add external links
to the navigation page using the Add Link pane at the bottom.
Notes
Below the Logout link in the menu is a link titled "Notes". This is a single post
that can only be viewed when logged in. It is for keeping notes and storing
information that you don't want visitors to see.
Adding Posts:
To add a post, follow either the Add Blog Post or Add Static Post links from the menu.
The page that appears contains space for a title and text. The title is what appears
in the post's header when viewed. The text area holds the post's body text.
Markup may be added in either area, but using it in the title
is advised against, due to possible illegibility (especially static posts, whose titles
are displayed in the navigation area as well as their headers). The Preview button allows
you to view your post before committing the changes. The Edit button submits the post.
Editing Posts:
When logged in, an Edit link is displayed at the top of each post (these links are also
accessible from the Manage Static Posts page). Following this link will bring you to a
page very similar to the one used to add posts. Press Preview to view changes, and press
Edit to commit them.
Deleting Posts:
Delete links are displayed in the same places as Edit links (at the top of posts, and
on the Manage Static Posts page). When deleting a post, you will be asked for a
confirmation. Press No to cancel the operation or Yes to remove the post.
top
RCBlog includes a built-in file manager that allows you to upload and manage various
files without needing an FTP client. The file manager can be accessed by following
the link titled "File Manager" from the menu.
Browsing:
You can browse the files you have uploaded by clicking on them in the list at the
top of the file manager. Clicking on a directory brings up a list of that directory's
contents, and clicking on a file opens that file.
Uploading:
To upload a file, either type the name of the file in the box provided, or click
Browse and navigate the the file's location. When you are ready, press the Submit
button to send the file to the file manager's current directory. Uploads are
limited in size by PHP's upload_max_filesize variable (usually 2M; you can run
phpinfo to determine this
value on your server). If all goes well, your file will be added to the current
directory.
Creating Directories:
To create a new directory, simply enter the name of the directory in the box, and
press Submit.
Renaming:
To rename a file or directory, follow the rename link on the right. In the resulting
dialog, enter the new name and press Submit to rename the file or directory.
Deleting:
To delete a file or directory, follow the delete link at the right-hand side of
the file list. This will bring up a dialog asking for your confirmation. Press
Yes to delete the file or directory, or press No to cancel the operation. Note
that you cannot delete directories unless they are empty.
top
RCBlog doesn't allow you to use HTML in posts, and instead relies on a
set of custom tags. Using these tags, it is impossible to break the layout
using malformed HTML. RCBlog fully supports phpBB
2.0's BBCode,
in addition to several other tags I created myself.
Text Styling:
Bold: [b]btext [/b] --> btext
Itallic: [i]itext [/i] --> itext
Underline: [u]utext [/u] --> utext
Monospace: [mono]mtext [/mono] --> mtext
Color and Size:
Color: [color=#hexcolor]ctext [/color] --> ctext
Color: [color=colorname]ctext [/color] --> ctext
Size: [size=pixelsize]stext [/size] --> stext
hexcolor == 24- or 12-bit (6 or 3 digits) hexadecimal value; format is RRGGBB or RGB
colorname == name of a color (i.e., red, blue, etc.)
pixelsize == size of text, measured in pixels (default is 16)
Quotes and Code:
Quote: [quote="author ]qtext [/quote] --> author wrote:
qtext
Quote: [quote]qtext [/quote] --> qtext
Code: [code]ctext [/code] --> ctext
Text Alignment:
Center: [center]ctext [/center] --> ctext
Right: [right]rtext [/right] --> rtext
Justify: [justify]jtext [/justify] --> jtext
Lists:
Unordered List:
[list]
[*]item1
[*]item2
[*]item3
[/list]
-->
Ordered List:
[list=liststyle]
[*]item1
[*]item2
[*]item3
[/list]
--> - item1
- item2
- item3
liststyle == [ 1 | a | A | i | I ]
Links, Anchors, and E-Mail:
External URL: [url]url[/url] --> http://www.google.com/
Internal URL: [urls]url[/urls] --> http://www.google.com/
External Link: [url=url]ltext [/url] --> ltext
Internal Link: [url=url]ltext [/url] --> ltext
Anchor: [a=aname]atext --> atext
E-Mail: [email]email[/email] --> idiot@village.net
url == a Uniform Resource Locator (e.g., http://www.google.com/), or aname preceded by #
aname == the name of an anchor; can be linked to later with #aname
email == an e-mail address
Images:
Image: [img]url[/img] --> 
Image: [img=url]alt[/img] --> 
Left Image: [imgl]url[/imgl]itext [clear] -->
 itext
Left Image: [imgl=url]alt[/imgl]itext [clear] -->
 itext
Right Image: [imgr]url[/imgr]itext [clear] -->
 itext
Right Image: [imgr=url]alt[/imgr]itext [clear] -->
 itext
url == a Uniform Resource Locator (e.g., images/rcblog.gif)
alt == alternate text for an image (default is same as url)
Horizontal Rules:
Horizontal Rule: [hr] -->
top
Here are some features that RCBlog may have in future releases:
- Image Galleries
Being somewhat of an artist myself, a built-in image gallery is
a must. At the time of writing this readme, I've already started
work on this one.
- Comments
Everybody else has them. Why not me?
- 1.02 - 2004-11-09
Added external links to the navigation bar.
- 1.01 - 2004-11-02
Added the file manager, and cleaned up a lot of the code.
- 1.00 - 2004-10-25
Second public release of RCBlog, and the first stable one.
You can reach me by e-mail at
noah.medling@gmail.com,
or you can visit my website at
rcsoft.co.nr.
top
|