Suggestions for Setting Up WordPress
When I install a brand new copy of WordPress I typically have a ritual of sorts as I fire it up. The default configuration is okay, but I do make changes to better suit my needs and tastes. I feel this is a very important step and worthy of due consideration. I’m not saying this what you should do, nor am I working on their latest version so there’s no doubt that if you’re using version 2.2, some of these practices may be slightly different.
If you’re using 2.2, please feel free to add your suggestions/modifications. Anyway, in exquisite detail, here’s what I do setting up WordPress version 2.0.x. (2.0.10 is the latest as of this writing and it’s still being updated for those who cannot install version 2.2 because of their MySQL database version.)
Mike’s WordPress Setup Steps
- After I “install” WordPress and I log in as admin — not saving the data at first — I go into my Users > Profile page, change my password, and fill in the fields, being sure to enter my name. I also enter a quick bio (used in my BeastBlog v2 theme). I then de-select the “Use the visual rich editor when writing” option checkbox before saving (since I don’t like that editor). I “Update” the data once and then I’m able to select my “Display Name” on the same page so my articles aren’t carefully crafted by some “admin” dude. After I’m done I log out and log back in, this time setting the cookie to save the data and remember me.
- Once logged back in I head on over to the Options > General page to start process of making it mine. I begin with the tag line (which should be done carefully if you’re interested in being found by search engines). The blog name is taken care of upon installation.
- Still on that page I scroll down and set the date changing it from
F j, Y
toF jS, Y
— this changes the output from August 4, 2018 to August 4th, 2018 — the added “th” is the difference. I like it better that way. - I also change the start week to Sunday ‘cause that’s what it says on my calendar. Aside from that I have no particular reason to do this since I don’t publish a weekly archive list, but I do it all the same. Once this is done I “Update” the data and move to the Options > Writing page.
- On the Options > Writing page I de-select the “Users should use the visual rich editor by default” and “WordPress should correct invalidly nested XHTML automatically” check boxes. The former isn’t necessary if it’s a one-person blog, but I turn the Visual Rich Editor off anyway. I save my changes and move on to the next tab.
- Now on the Options > Reading I change everything. I change the “Show at most” count, usually between one and nine, depending on the blog. I then change “Show the most recent” count for the feed. I usually double the number entered above. I also select summary for the “For each article” choice for the feed. My thinking is I want them to come to the site if they want the rest of an article. I then change the character set to from
UTF-8
toutf-8
(lowercase, for absolutely no reason whatsoever). I save the changes and move to the next tab. - On the Options > Discussion page, I change the “Hold a comment in the queue if it contains 2 or more links.” to “Hold a comment in the queue if it contains 1 or more links.” I used to enter a large list of Spam Words (more extensive than the one WordPress offers) but I no longer find it necessary.
- I save it and move to the Options > Permalinks page to change the link structure. I didn’t do that on this blog but I’ve been meaning to (I don’t think any links will break — the default numeric system should still work). I set the structure to
/%year%/%monthnum%/%postname%/
. I think this is a safe and usable structure, and not unnecessarily long. I remove /index.php and the/%day%/
. I don’t suggest using categories in the structure. I feel it’s inaccurate and restrictive if you want to modify categories over time. - After setting the permalink structure I install an
.htaccess
file in the same directory WordPress is installed on and put this in it. (This is produced for a root-level installation.)<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
If the install is in a folder, these two lines would change:
RewriteBase /yourfolder/ RewriteRule . /yourfolder/index.php [L]
WordPress conveniently produces this for you. Scroll down the Options > Permalinks page.
- Once I’m done with that I hit the Options > Miscellaneous page and set an
uploads
folder. The default iswp-content/uploads
and I’ll use that as an example. I first temporarily set the permissions, CHMOD, on thewp-content
folder to777
. I then go to the Write > Post page and upload a small graphic. Doing this creates theuploads
sub-folder made by the script. I then manually add a dummy or blankindex.php
file to lock down the new sub-folder a bit. I will change the permissions back on thewp-content
as well, but not quite yet. There’s something else to do. - The next step is to do a database backup. Once a “write to server” backup is done a
backup
sub-folder andindex.php
file will be created by the script. I then change the permission of the wp-content folder back to755
. The directory doesn’t need to be777
any longer and that is a security concern so this step is important! - Once done with all that I set the theme. Lately this has meant I’ve installed the BeastBlog v2 theme. I make its file writable — set to 666 just during this process — and I do the very quick theme configuration. Some of the ordering involved here is slightly related to that theme and its included plugins.
- WordPress Database Back-up (included with WordPress).
- My Secure and Accessible PHP Contact Form.
- Semilogic Bookmark Me (Modified).
- The w-a-s-a-b-i “related Posts” plugin.
- The Bad Behavior Plugin.
- Aksimet (only if needed).
- The totally awesome Run PHP.
There are others I use now and then, and I sometimes make my own if I need something not available. For example, on a large site I’m building now I am using a plugin I made called the “Latinizer.” It processes the Latin text used on the site and adds the language attribute within the “
i
” element (which is proper usage for foreign languages and thoughts/dreams). - Once I’m done with all that things really start to come together. My next stop is the Manage > Pages page and start creating some site/blog Pages, giving them some place holder content, and setting their order, descriptions, and keywords (these are available options on my theme). The About page is there already by default, but to that I add at the very least a Contact page (then finish form config), a Site Map page, and Site Info page. This is, in part, due to the plugins and Page templates included with my theme.
- After that’s done I go to the Manage > Categories page and change the name of the default category and add other categories as I see fit. Do think this stuff over carefully. Once I’m done, I proceed to the Links page.
- Last thing, before I get to the actual theme styling and creating post content is to set up link categories and add links by going to Links > Link Categories and Links > Add Link pages. The how-to should be self-evident.
Custom Additions
I make two changes to the core WordPress files (by core files I mean non-theme files).
Quicktags.js on Steroids
The first thing I do is replace the default quicktags.js
file with a heavily modified version I made. The quicktags.js
file is located in the js
sub-folder found in the wp-includes
folder.
Actually Usable Text Areas
The second change I make is to add the following styles to the end of the wp-admin.css
file located in the wp-admin
folder. The default text area sizes leave a lot to be desired so this step is necessary in my mind. The rest of the styles are for the modified quicktags file.
/* These are for the editor and excerpt text areas. I like these sizes for my 1024×768 resolution monitor */ textarea#content { height : 450px; } textarea#excerpt { height : 200px; } /* These are to style the editor quicktags */ #quicktags #ed_strong { font-weight : bold; } #quicktags #ed_link { color : blue; } #quicktags #ed_em, #quicktags #ed_ital { font-style : italic; } #quicktags #ed_ital { color : #666; } #quicktags #ed_code, #quicktags #ed_pre, #quicktags #ed_kb, #quicktags #ed_amp, #quicktags #ed_leadcarr, #quicktags #ed_endcarr, #quicktags #ed_quot, #quicktags #ed_apos, #quicktags #ed_dash, #quicktags #ed_comment, #quicktags #ed_php { font-family : 'courier new', monospace; color : #888; } #quicktags #ed_close { color : #cd0000; } #quicktags #ed_img { color : green; }
Done
That’s it. Like I wrote, the choices I make may not be for everyone, and there may be some differences with version 2.2 (I’ve set it up before but don’t recall the specific differences), but this is what I do and it really works for me. Maybe you’ll get something out of it.
David Zemens responds:
Posted: June 25th, 2007 at 7:59 am →
Another great article, Mike, that gave me some ideas of my own as well. I use the “excerpt” feature of WordPress pretty heavily, and after reading your article I stumbled my way into the wp-admin.css and modified the size of the excerpt text area. As you know, it is unusually small in the default install, and I always thought it would be nice to have a bit more height to work with. So I added this to the wp-admin.css at or about line #650:
#excerpt, .attachmentlinks {
margin: 0px;
height: 4em;
width: 100%;
}
/* Added by David Zemens - www.1955Design.com */
#excerpt {
height: 12em;
}
Now I have a bit more room to view my excerpt on the dashboard page of Wordpress. Thanks again, Mike! Great read!
John Faulds responds:
Posted: June 25th, 2007 at 8:54 am →
You can actually change this under Options > Writing with the ‘Size of the post box’ value.
David Zemens responds:
Posted: June 25th, 2007 at 9:00 am →
Indeed you can, but you know Mike just has do it his way, don’t you?
Mike Cherim responds:
Posted: June 25th, 2007 at 9:12 am →
@John:
Is that for the admin editor textarea or the post box on the theme (if the theme is using the variable that would make this work)? I never noticed that that did anything, though I’m no doubt missing something.
David Zemens responds:
Posted: June 25th, 2007 at 9:15 am →
It does seem like it wouild be the post box of the theme based on how the Dashboard reads, Mike, but changing that number does affect the Admin text entry area.
ty responds:
Posted: June 25th, 2007 at 1:17 pm →
Thanks Mike,
I’m long since overdue to start doing some development with wordPress.
I’ll use the latest version, and my implement your mod’s and toDo list here.
If I run into any problems I may just drop you a line
All of this will happen when… ? Soon…
Jermayn Parker responds:
Posted: June 26th, 2007 at 12:44 am →
Good ideas and while I do some of those, I do not do all of them, so thank you..
I use WordPress a fair bit so these will definitely be a bonus
JackP responds:
Posted: June 26th, 2007 at 5:27 am →
Mike,
for what it’s worth, you can access pages on my site with the ?p=nnn version, despite the fact that I use a different link structure, so I’d presume that you would be correct in thinking that this would still work for Beast-Blog even if you changed the default link structure.
Mike Cherim responds:
Posted: June 26th, 2007 at 9:15 am →
Thanks Jack.
John Faulds responds:
Posted: June 29th, 2007 at 4:53 am →
Hi Mike,
It’s just for the textarea when creating a post, ie, in the admin section (not in the comments section of individual posts). I assumed that’s what you meant because you were talking about modifying wp-admin.css.
Mike Cherim responds:
Posted: June 29th, 2007 at 8:54 am →
Yes, John, the admin main editor textarea and the Option Excerpts textarea. Both are too small out of the box I think.
bobolo responds:
Posted: July 12th, 2007 at 5:02 pm →
Ok, I think I’m not that smart, but really want to just set-up the comments, like the one I’m writing in right now… is this done through wordpress? or something entirely different?
thanks
Mike Cherim responds:
Posted: July 12th, 2007 at 5:21 pm →
What do mean Bobolo? Alternating colors? Author comment colors?