WordPress Troubleshooting – cannot modify header information

y'a bon Banania
y’a bon Banania

Sorry if I make your eyes glaze over, but I had some trouble with my blog yesterday, and here is how I solved it.

Background: upgraded a WordPress plugin called Better WP Security, under its new name, iThemes Security Pro, and instantly my blog broke. I could no longer access my dashboard, could no longer make any changes to the blog, all that would happen would be an error message like this:

Warning: Cannot modify header information – headers already sent by (output started at [redacted]/wp-config.php:33) in [redacted]/wp-includes/pluggable.php on line 896

 so of course I copied this error out, and Googled it. Unfortunately for me, I searched on the second phrase first, which led to instructions about fixing the code in pluggable.php

Silly me, I was too busy to read more. I opened my FTP program, opened the file pluggable.php and sure enough, the last line did not include a close tag. I added ?> and my blog was working again. I immediately went into plugins and deleted iThemes Security Pro, and as everything seemed fine, went back to my other tasks, considering the matter finished.

G3 case open
G3 case open

This morning, I noticed that the daily blog email didn’t get sent, and then noticed that my blog’s RSS feed reported an error. A few of my plugins were not working at all (such as my anti-spam plugin, Askimet, and others). Ru-oh!

I went back to the Codex WordPress FAQ Troubleshooting page, and read the entire entry:

It is usually because there are spaces, new lines, or other stuff before an opening <?php tag or after a closing ?> tag, typically in wp-config.php. 

If the error message states: Warning: Cannot modify header information – headers already sent by (output started at /path/blog/wp-config.php:34) in /path/blog/wp-login.php on line 42, then the problem is at line #34 of wp-config.php, not line #42 of wp-login.php. In this scenario, line #42 of wp-login.php is the victim. It is being affected by the excess whitespace at line #34 of wp-config.php.

If the error message states: Warning: Cannot modify header information – headers already sent by (output started at /path/wp-admin/admin-header.php:8) in /path/wp-admin/post.php on line 569, then the problem is at line #8 of admin-header.php, not line #569 of post.php. In this scenario, line #569 of post.php is the victim. It is being affected by the excess whitespace at line #8 of admin-header.php.

(click here to continue reading FAQ Troubleshooting « WordPress Codex.)

Doh! My error message had told me the problem was in wp-config.php, and pluggable.php was the victim. I opened wp-config.php, and sure enough, there were 2 extra blank lines after the close tag. I don’t know how iThemes Security Pro added them, nor why, but once I deleted these two blank lines, my RSS feed validated through feed burner, etc. I trust the blog daily email will go out tonight, whether or not it will contain yesterday’s information too.

Safari is Stupid for HTTPS

Irritatingly, I clicked “Use SSL” on my WordPress dashboard for the Ted Cruz post I just published, because I didn’t know what that would do. Now, Safari won’t load the page at all. I unchecked the checkbox, but the page still won’t load. I looked closely at the URL and it should be http://www.b12partners.net/wp/2013/09/23/ted-calgary-cruz/ but Safari insists upon loading the “https:” version. As far as I can tell, there is no way to edit URLs directly in Safari, and this behavior persists even after I quit Safari and restarted – I still get taken to the nonexistent “HTTPS” secure version of the page, even if I hand-type the “HTTP” myself.

Safari is Stupid
Safari is Stupid


I tried using the “Short URL” version, I tried typing the correct URL, I tried copying and pasting, but all attempts lead instead to the HTTPS version.  

If there is a typo on the page, let me know in comments or email or Twitter, since I can’t see the damn post myself (well, other than in the WordPress Dashboard version, which is not always perfectly accurate). I guess I could click the category archive (Politics), or the tag archive (GOP for instance), but I’m too irritated to do so at the moment.

Blog error – Postalicious crapped out

Not sure what happened exactly, but my Postalicious plugin went a bit nutso last night, creating several posts that were erroneous. The plugin is a simple way to keep track of interesting URLs that I don’t have the time to make a full blog post about, when it works correctly.

Not Tonight Dear

The way the plugin is supposed to work is that it polls my delicious links ever hour, finds if there are any additions, merges these snippets into a page, and publishes the page once three entries are found. There is supposed to be a time regulator as well so that a Links post is only published ever 26 hours (so there aren’t multiple Links posts a day), but that didn’t keep several posts from being published last night, posts with empty URLs at that.

500 Internal Server Error – 500 Internal Server Error

I’ve disabled the plugin until I can figure out what went wrong (or there’s a new version, whichever comes first). It could be a problem at Delicious.com, or it could be because of the new version of the Postalicious plugin I installed yesterday, or some other factor.

Sorry about that.

WordPress Week 29 – plugin overview

Used WordPress for over 6 months now, and am still pleased with it. There are so many plugins available for WordPress that tweaking minor nuances is a fun hobby.

Currently I have these plugins installed and active, in no particular order:

  1. WP-Footnotes – quite useful – adds a numbered footnote to a post. Good for my style of breezy, top of mind writing. Triggered by enclosing text in double parentheses.1
  2. WP Super Cache
    – supposedly speeds access to particular pages, and WordPress blogs in general. Haven’t tested it really, but who wouldn’t want a speedier rendered page?
  3. WP Ajax Edit Comments
    – some Ajax goodness, eases editing of comments for me, and from you. Registered users can edit their comments, non-registered can edit in a certain time frame.
  4. Smart Youtube
    – better YouTube embedding than the default from the YouTube site. Copy and paste a YouTube URL into a post and add the letter v to the URL right before the “://”. Simple, yet useful.
  5. SimplePie Core
    Load the core SimplePie API library for any extension that wants to utilize it.
  6. Postalicious
    – creates the daily links page via delicious.com. Requires SimplePie Core these days, but other than that, seems more reliable than the links post option from delicious.com itself. I’ve started going back in and editing to add quirky images for some reason.
  7. Quotes Collection
    – fuels the Random Quote sidebar widget on the upper right margin. More for me than you probably. Love me some quotes…
  8. AJAXed WordPress
    – don’t use all the options this plugin enables, but some are useful.
  9. Akismet
    – spam comment filter. The last few days quite a number of spam comments have made it past the Akismet filter, but all in all, it does a great job. Occasionally, marks quasi-legitmate comments as spam, but no more than 5 times. According to its statistics, 4,872 spams caught, 18,972 legitimate comments, and an overall accuracy rate of 99.849%. Umm, no, but we’ll keep you anyway.
  10. All in One SEO Pack
    – not so sure about the usefulness of this plugin, but have kept it so far.
  11. Around this date in the past… – Widget Edition
    – testing this (see the lower sidebar), a tip toe through this blog’s history. Of course, a year ago, I was using Movable Type, so only reposted items end up there currently.
  12. Blog Copyright (by BTE)
    – sure, why not. Preemptive move against the splogs.
  13. FD Feedburner Plugin
    – re-directs the default RSS feed over to FeedBurner which has a hell of a lot of more interesting features. FeedBurner also generates the “email of today’s posts” feature, which is pretty useful if you don’t use a newsreader or visit everyday, as it includes Flickr, Digg, and whatever else.
  14. Flickr Photo Album
    – haven’t really used this, might go away.
  15. Google Analyticator
    – Adds the necessary JavaScript code to enable Google’s Analytics.
  16. Google XML Sitemaps
    -generates a sitemaps.org compatible sitemap of your WordPress blog which is supported by Ask.com, Google, MSN Search and YAHOO. Contributes to good search engine ranking presumedly.
  17. Lightbox 2
    – used to make uploaded images appear in their own “embiggened” window. Am using it less and just using Picasa’s bandwidth instead of my own, but will probably keep this too.
  18. MobilePress
    – just installed this – presumedly creates a mobile friendly version of the blog, suitable for iPhones and the like. Haven’t tested it yet.
  19. WordPress Automatic Upgrade
    – aids in painless upgrade to the WordPress software.
  20. WordPress Popular Posts
    – again, enables archive digging. Currently residing in the sidebar under “Hot Action”.
  21. WordPress.com Stats
    – Tracks views, post/page views, referrers, and clicks.
  22. Twitter for WordPress
    – sometimes fails, but works better than a straight RSS feed. Haven’t given up on Twitter yet, come follow me
  23. Subscribe To Comments
    – useful addition to a comment feed, not that I get many comments, but in the rare instances.
  24. ShareThis
    – for posting to Digg, delicious, FaceBook and various other social media sites. Don’t know if it ever gets used, but its here anyway.
  25. Redirection
    – for those occasions where I make a typo in the URL of a post, and don’t notice until later, this plug-in smoothly re-directs to the proper page.
  26. Random Redirect
    try it!!

Geez, didn’t realize this would turn out to be such a long list.
Do you have any plugins essential to your blog’s functioning and aesthetic?

  1. like this, duh []

Installed WordPress 2.7 Coltrane

A fairly simple upgrade, took less than a few minutes.

The first thing you’ll notice about 2.7 is its new interface. From the top down, we’ve listened to your feedback and thought deeply about the design and the result is a WordPress that’s just plain faster. Nearly every task you do on your blog will take fewer clicks and be faster in 2.7 than it did in a previous version.

Next you’ll begin to notice the new features subtly sprinkled through the new interface: the new dashboard that you can arrange with drag and drop to put the things most important to you on top, QuickPress, comment threading, paging, and the ability to reply to comments from your dashboard, the ability to install any plugin directly from WordPress.org with a single click, and sticky posts.

Digging in further you might notice that every screen is customizable. Let’s say you never care about author on your post listings — just click “Screen Options” and uncheck it and it’s instantly gone from the page. The same for any module on the dashboard or write screen. If your screen is narrow and the menu is taking up too much horizontal room, click the arrow to minimize it to be icon-only, and then go to the write page and drag and drop everything from the right column into the main one, so your posting area is full-screen. (For example I like hiding everything except categories, tags, and publish. I put categories and tags on the right, and publish under the post box.)

[From WordPress › Blog » WordPress 2.7 “Coltrane”]

Ask me in a week if I noticed anything major. I’ve almost spit out 1,000 entries1 in WordPress since installing it last May, certainly is much less frustrating an experience than using MoveableType ever was. Let me know if you see anything odd, will ya?


swanksalot's Your favorites photoset swanksalot’s Your favorites photoset

  1. this will be number 967, if you want precision []

WordPress Week 9 update

Sometimes just publicly complaining is enough to fix problems. I haven’t noticed errors recently. So culprit was probably LibraryThing, Amazon, LastFM, or a combination of the three, or something else unrelated. I know you were just dying to know…

I have a bad problem with cluttering up my sidebars – I want my blog to resemble my office, which is nearly always thick with piles of papers, notebooks, newspapers, magazine, books, CDs, DVDs, coffee cups, half-eaten food, and cat toys. Perhaps the error was warning to clean my act up! Or not, I’m sure in a week or two, I’ll have a bunch of crap everywhere.

Oh, and while I’m bloviating about non-important topics,1 there is a new option: subscription by email, courtesy of FeedBurner. If you click the link in the upper right column (appropriately enough: subscribe to B12 Solipsism by Email), and follow the simple directions, you’ll receive a fairly nicely formatted HTML email theoretically every morning between 7 AM and 9 AM containing all the new content for the day. If it doesn’t work for whatever reason, I’ll be happy to help (if I can, of course).

  1. unless you are me, then every topic is the most important topic, at that moment []

Word Press Week 9

First real problem with WordPress. Avert your eyes if technical talk hurts your brain.

Friday night (I believe), I made some changes, installed a couple of plugins, and generally futzed around. Saturday I noticed pages never finished loading. Glancing at the error console in Safari, I see reams of errors that read something like:

SyntaxError: Parse error

http://www.b12partners.net/wp/2008/06/29/the-best-god-joke-ever/function%20(iterator,%20context)%20{%20%20var%20index%20=%200;%20%20iterator%20=%20iterator.bind(context);%20%20try%20%20%20{%20%20%20%20this._each(function%20(value)%20%20%20%20{%20%20%20%20%20%20iterator(value,%20index++);%20%20%20%20});%20%20}%20%20catch%20(e)%20%20{%20%20%20%20if%20(e%20!=%20$break)%20%20%20%20%20%20throw%20e;%20%20}%20%20return%20this;} (line 1)


Forbidden You don’t have permission to access /wp/function (object) { if (Object.isFunction(this.indexOf)) if (this.indexOf(object) != -1) return true; var found = false; this.each(function (value) { if (value == object) { found = true; throw $break; } }); return found;} on this server.

Goes on forever, hundreds of these. This can’t be good, I thought, so have tried these fixes:

turn off all plugins (no change).

turn off all recently addeded plugins (no change)

remove widgets (the sidebar column elements). This is sort of a pain if a widget is hand-created (such as the Google ad widget), once you remove it, it isn’t available to be put back. Moveable Type is superior in this instance – every widget was saved individually, and you can mix and match at your leisure.

Switching to different themes

Replacing the templates from originals for the theme I had been using, in case some garbage code got introducedToggled:

WordPress should correct invalidly nested XHTML automatically

because I did change this recently.

Crap. What next?

WordPress usage notes

Loneliness of the Parking Marker

WP notes from day 1.3 of use. 

  • No javascript-based widgets, meaning some of my sidebar elements will have to die (like the one I wanted most, additions to my librarything catalog. Oh well, less clutter is probably good for everyone.
  • Would like to be able to customize elements of individual pages/entries. The sidebar for the main page seems like it could contain more items than the individual pages, but as far as I can tell, they are required to be identical. Point for MT.
  • There are seemingly a gazillion plugins for WP. I’ve added a few, and am on the lookout for more. Installation is a breeze -upload a folder to /wp-content/plugins/, activate, and you are set. 
  • Speaking of, installed a Flickr gallery plugin that I wanted to try for a long time. If you want to see how it looks, go to http://www.b12partners.net/wp/photos/. For some reason, the ending slash in the URL is required (photos/). Just click it, and wait a second for the images to load. I haven’t yet figured out how to embed images directly in a post, probably because I’m running on fumes today (only 4 hours of sleep, don’t ask me why)
  • I don’t like the faint grey text on some sidebar elements, I will fix this once I have time to find the right CSS code.
  • I want to add a random image generator in the header (up at the top), but this will happen over some rainy weekend.