Act II: Setting Up WordPress
Previously in Site Setup Journal: Prologue and Act I: Domains and Hosting.
One-Click Install Attempts
1-click installs are totally the way to go, right? I mean, 1-click sounds faster and easier than the famous 5-minute install that you get if you do it manually over FTP (according to the Codex). I immediately go into the Dreamhost control panel and went for a 1-click.
Okay, so 1-click, but 10 minutes. That doesn’t seem right, that it should take twice as long for the automated 1-click install as for a manual one. Well, too late now, right? Guess I’ll go feed the cats while I wait.
I have to kill a little more time than just feeding the cats, but eventually I get an email from Dreamhost telling me my WordPress install is ready for me, and linking me to install.php to set up an admin user and get going. I click the link and get a white screen. Hm. Try again. Hm. Open up FTP to see if the files are there, and they are. Start wondering if maybe 1-clicks can’t handle being in a subdirectory (where I’d put it), so think I’ll try another one in the root. Same thing, the 10-minute notice. Set up web email for the domain and send a test email so I can see if it’s just the website, or if it’s everything on the domain. Webmail is also whitescreened. Hm. Status on Dreamhost says my server is going to be getting some software updates and will be offline during this maintenance, but it doesn’t look like I’m in that time window. I get a 2nd automated email saying the 2nd 1-click has failed. I head into the support section.
The Live Chat support option shows as available, but when I click it it says that due to heavy activity there will be a 5-hour wait. Come on, just take down the Live Chat option when it’s 4am and you don’t have people on staff. I send an email, then another (first one re white screen, 2nd re install failure). In the meantime I start scrubbing through the Dreamhost support wiki.
I find the answer to the 2nd install failure before support gets back to me. Apparently, 1-clicks don’t work if there is anything in there already. So since I already have a subfolder in the root domain (from the 1st 1-click), trying to do a 1-click into the root won’t work. I have to empty it out first. That doesn’t make sense to me, but whatever. I wind up deleting everything via FTP and doing a manual install instead. Two, actually.
Well, then, back to the WordPress.org!
The “handy guide” is the Codex’s installation instructions page. Let’s take a look.
Before You Start
1. Minimum server requirements. As it happens, I had checked the php version stuff when I re-upped the hosting account for this domain, and had upped the version of PHP. Someone setting things up without my account gymnastics wouldn’t have encountered that, though, so I set out to find my hosting versions as specified in the ask-for-it text on the requirements page on wordpress.org:
- PHP 5.2.4 or greater
- MySQL 5.0 or greater
- The mod_rewrite Apache module
I log into the Dreamhost control panel. I look for a navigation label that says something like hosting environment, version information, about, etc. Don’t see anything. Click into Manage Account, nothing. Click into Manage Domains. Oh ho!
Clearly I’d only upped the version on the one domain, not both on that account, but even so, I can see that the php versions are both above the minimum requirement to run WordPress.
Next up, MySQL version. Clicking the MySQL Databases navigation item seems the most likely, so I do. Nope. No information shown here about MySQL versions. You’d really think you would see that on the page labeled MySQL Databases, wouldn’t you? There is a link on that screen to phpMyAdmin, so maybe I can find it there. Wait — Authentication Required!
Bah, which username and password combination does it want? The hosting account (server?) or a database user? A note here saying which password is needed would be helpful. I can’t get in with the ones I know off the top of my head so I close out of that and go back to the main Dreamhost control panel (the phpMyAdmin attempt had bumped me into a new tab). In the search box at the top, I type “MySQL version” and hit enter. The page refreshes, but I’m still on the MySQL Databases page where there is no version info displayed. I think maybe there’s some documentation with version info, so I look for support.
Now, having been around a long time, I know that Wiki, a small link in the upper right corner, means documentation. But a lot of people don’t (I doubt my mom — the most recent person to ask me to set up a site — would), so for the sake of the experiment I go looking for a Help or Docs or Support link. I find it (Support) in the bottom left navigation after scrolling down (below the fold), because for some reason the “Goodies” navigation section is open. Why? Because apparently that’s where the MySQL Databases page actually lives, despite being in the navigation up above as a top-level item. Come on, Dreamhost, who’s your information architect, and what are they doing?
Anyway, I click on Support. It drops a layer with 3 options. Contact, History, and Data Centers. Why not have a link here for Wiki (or better, Documentation, which is less jargony)? Hmph. If you do click on Contact Support, it takes you into a form. There’s a live chat button, but no links here to documentation either. Hm, what’s this “Help is Off” button?
I decide to click it. Then I see this:
Oh, how handy, a link to documentation and forums. Why it’s even optional to hide that text is ridiculous. Anyway, to the wiki!
On the Wiki Home there is a nice little menu, and MySQL is listed there, so I click it. I come to another list of topics. None of them say Version, so I start clicking them in the order that makes the most sense. MySQL and PHP does not have version info. Neither does phpMyAdmin, but it does tell me that the authentication password request was for the database user password. Upgrading from MySQL 4.1 to 5.0 tells me that, “DreamHost is currently slowly upgrading your MySQL servers from version 4.1 to 5.0. You can also email support and request they upgrade your databases. There are some incompatibilities between versions 4.1 and 5.0, particularly with JOINs. This upgrade could cause some breakage of your application(s).” It does not say how to tell which version you are currently on. At this point, some people might email support, but I think a lot would just shrug and decide to take a chance and hope they were already on 5.0. So I do that. Because let’s face it, any host that is listed on wordpress.org/hosting had better be running the minimum requirements, right?
Mod_rewrite! Since I’m already in the wiki, I do a search for “mod_rewrite Apache module,” the last item in the ’email your host” list. The 4 search results are not helpful in any way. I remove “Apache module” from the search term and try again. Lots of results, none of them helpful. I decide again to shrug and assume, because this documentation is for the birds when it comes to confirming minimum requirements, and who has time to wait for support emails? Not me!
Around now I get an email from support about my earlier white screen issue. They say that it’s because the DNS hasn’t finished replicating. I might add that there’s a “works for me” comment in there that makes me purse my lips. But I stop to think about DNS. Yes, in the past I’ve had to set up a temp site on a dreamhosters subdomain if I wanted to work on a site before DNS caught up. Pain in the ass, yeah? Having to then do a move once the real domain is showing up? I hadn’t thought about that this time because the GoDaddy registration of the domain had been pointing at Dreamhost servers all along. I guess the hosting being down and then up created a DNS interruption. It was not explained to me satisfactorily, but I move on. Specifically, to step 2 of preparing for the install.
Step 2. Download the latest release of WP. Easy. Go to wordpress.org, click the big Download button. Oh, okay. That wasn’t really a download button, that was a navigation link to a download page. Okay. I skim the content in the middle and go to click on the… oh, that button at the bottom of the content area is to find a mobile app, and goes to a site at get.wp.com. That’s not right. Oh, there’s the real download button up in the sidebar. It seems like those should have been switched, but whatever. Click! Download! 6.3MB, it takes 7 seconds.
Step 3. Unzip the file. Also easy. Do Show in Finder from the download bar on the bottom of my browser, double click the file, see the wordpress folder appear. 3 seconds.
Step 4. Secure password for secret key. Click on the link to read about it. Get distracted by the big-ass blue-i information icon alert at the top that says, “Interested in functions, hooks, classes, or methods? Check out the new WordPress Code Reference!” Why is that following me around on every page of the Codex? For someone installing WordPress for the first time, that is not helpful. At all. Further, there’s no x to dismiss the box, so if I’m not interested, I still have to scroll past it every time, and it pushes the content farther down on the page, not to mention making me feel like I’m probably not in the right place because they obviously think I am way technical. (Tangent: People keep saying that the fold is dead, but I think they are wrong.) Anyway, I’m already confused. I clicked on a link that said Secure password for secret key, but I don’t see that language on this page. It doesn’t anchor link me to the specific section I needed, so I guess I have to read this whole page? With multiple mentions of passwords but no headlines that say secret key? I command+f to do a search for text on the page, which shows that “secret key” is mentioned in the section titled Security Keys. Hmph. Would a little consistency here be so much to ask?
Read the section. Questions that should be answered in this section before jumping into the history of adding stuff.
- What is a key?
- What is a salt?
Then it shows what secret keys look like from the online generator. Cool, I like online generators. But the wording all over is inconsistent and confusing — is it one secret key, or four, or eight? And where do I set a secure password for the key (or keys)? I don’t understand this! So! Many! Words! Used! Indiscriminately!
I cheat and use the fact that I know what all that confusing language means, and what it wants, which is simply the block of generated keys and salts, not a password for them.
Step 5. Print this page. So I have it handy during installation? I’m thinking this list was written in the days before browser tabs, because why would I print it when I can just keep a tab open? Silly directions. But! On to the actual install!
Famous 5-Minute Install
That sure was a lot to do before doing the install, but I’m ready now!
Download and unzip — check. This step, which was 2 of the steps in the Before You Install list, took under a minute total, about 20% of a 5-minute install.
Create a database and a MySQL user — check. This takes a couple of minutes. I have to log in to the hosting panel, locate MySQL Databases in the menu, and scan the resulting page to orient myself. The first thing on the page is creating a new hostname, and the WP instructions didn’t say anything about creating a new hostname. Below that is create a database, which has fields to create the first user at the same time. There’s no instruction on the difference between a database user, an ftp user, and an account user. I go ahead and made new host, db, and user (and while I’m in there I delete the databases left from the aborted 1-clicks), but I think it would intimidate someone who hadn’t done it before and didn’t really know what a database was in relation to a hosting account or a website. This takes me a minute or two, but would probably take someone who’d never done something like this a little longer, maybe up to 5 while they tried to grok the setup page on the host panel.
Edit wp-config.php — check. This step is labeled optional, but I’m not sure why. If you click the Editing wp-config.php link, it says WP will create the config file for you from info you enter, and that turning wp-config-sample.php into a real wp-config.php file is for advanced users. If it works fine to have it be auto-generated, then why have this step in there at all? If it’s really better to do it manually, then why have the auto-create version? In any case, I’m used to editing the config file at this step, so I do it. Takes a couple of minutes because I had to go back and forth between tabs and copy/paste stuff. I happen to have Coda installed so the file opened in that program, but normally I’d have used textedit.
At this point I’ve passed 5 minutes.
Upload files via FTP — check. I open Transmit and start the transfer. It takes twelve minutes. Why? My first guess is that it is shipping with 3 default themes now, all with retina-ready images. But I don’t know, I could be wrong. I know I don’t need all those themes, so I delete Twenty Fourteen and Twenty Thirteen while I’m in FTP, and plan to start out with Twenty Twelve.
Tangent: Why do I want to start with Twenty Twelve? I think Twenty Thirteen is really aimed at bloggers and it has an overwhelming brand/design to it. The site I’m making is for a class, and needs to be chill. Twenty Fourteen I just personally don’t like, for the same reasons I don’t like the general mp6 coloring/style, which I’ve posted about elsewhere before.
Run the script at the URL where you installed — screeech! Screech to a halt here, because I wind up on another white screen. Side note: the wordpress.org instructions say to go right to the root URL, not to install.php directly (like the 1-click email tells you). Are they two different locations? Does install.php automatically load at root? Bah.
I go ahead and do a second manual install, so now I have one in root and one in a subdirectory. White screens on both. So it seems that the DNS stuff is really going to hold things up. I decide to go to school and finish it off when I get home that night.
Stay tuned for the exciting conclusion in Act III, which will cover finishing the WP install, installing BuddyPress and other plugins, and setting up BuddyPress.