<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>I Like WordPress! &#187; Tech stuff</title>
	<atom:link href="http://ilikewordpress.com/category/tech-stuff/feed/" rel="self" type="application/rss+xml" />
	<link>http://ilikewordpress.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Fri, 08 Apr 2011 21:30:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>You Do Not Have Sufficient Permissions to Access This Page</title>
		<link>http://ilikewordpress.com/357/you-do-not-have-sufficient-permissions-to-access-this-page/</link>
		<comments>http://ilikewordpress.com/357/you-do-not-have-sufficient-permissions-to-access-this-page/#comments</comments>
		<pubDate>Sat, 11 Sep 2010 17:46:01 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Tech stuff]]></category>
		<category><![CDATA[Troubleshooting WordPress issues]]></category>
		<category><![CDATA[add_menu_page]]></category>
		<category><![CDATA[add_submenu_page]]></category>
		<category><![CDATA[administration menu]]></category>
		<category><![CDATA[plugin options]]></category>
		<category><![CDATA[theme options]]></category>
		<category><![CDATA[version 3.0]]></category>

		<guid isPermaLink="false">http://ilikewordpress.com/?p=357</guid>
		<description><![CDATA[More than a few people have contacted me after seeing this message. It usually appears after upgrading to WordPress version 3 or above, when accessing a plugin&#8217;s Dashboard menu. This article isn&#8217;t an exhaustive treatment of this issue, but if you&#8217;re a developer you&#8217;ll at least walk away with an idea of what needs to [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>More than a few people have contacted me after seeing this message. It usually appears after upgrading to WordPress version 3 or above, when accessing a plugin&#8217;s Dashboard menu.</p>
<p>This article isn&#8217;t an exhaustive treatment of this issue, but if you&#8217;re a developer you&#8217;ll at least walk away with an idea of what needs to be fixed in your plugin or theme options menus.</p>
<h3>The cause of the &#8220;You Do Not Have Sufficient Permissions to Access This Page&#8221; error message</h3>
<p>The common cause appears to be plugins that use an older method of  generating menu and submenu items. Those are the links in your  Dashboard&#8217;s menu column that appear when you activate a plugin.</p>
<p>When a plugin is activated, certain values are stored in the options   table, one of them being a sanitized, shortened version of the plugin   name. Later versions of WordPress use slightly different functions for  doing this than previous versions. This is where the weirdness starts,  and where some plugin developers drop the ball in their testing &#8211; previous installs of the plugin will throw errors on upgrading WordPress. Plugins installed <strong>after </strong>upgrading will be fine, with no errors.</p>
<p>Here is how a main menu item is generated:</p>
<p><code>add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position );</code></p>
<p>And a sub-menu item:</p>
<p><code>add_submenu_page( $parent_slug, $page_title, $menu_title, $capability, $menu_slug, $function);</code></p>
<p>There are two stumbling blocks here: the $capability and $menu_slug attributes.</p>
<p>First, the $menu_slug. The following is from the <a href="http://codex.wordpress.org/Adding_Administration_Menus">Adding Administration Menus</a> page of the WordPress Codex:</p>
<blockquote><p>The slug name to refer to this menu by (should be unique for this menu). Prior to <a title="Version 3.0" href="http://codex.wordpress.org/Version_3.0">Version 3.0</a> this was called the file (or handle) parameter.  If the function  parameter is omitted, the menu_slug should be the PHP file that handles  the display of the menu page content.</p></blockquote>
<p>Prior to Version 3.0, the value in the menu_slug attribute was used &#8216;as-is&#8217;, no sanitization was performed. This value populates the $_registered_pages[$hookname] value in wp-admin/includes/plugins.php. Here&#8217;s where the problem comes in: this is the value that is stored in the options table, <strong>including space characters</strong>.</p>
<p>Beginning in Version 3.0, space characters in $menu_slug are stripped before storage. Hence, a menu_slug with the value &#8220;My Plugin Slug&#8221; is stored as &#8220;MyPluginSlug&#8221;. Prior to 3.0, they were stored as they were passed, spaces and all.</p>
<p>The problem comes when the stored value is compared with the passed value in the add_menu_page and add_submenu_page calls. The new routine strips space characters from the value passed to the function, then compares against the options table entry. Surprise! They don&#8217;t match. &#8220;MyPluginSlug&#8221; &lt;&gt; &#8220;My Plugin Slug&#8221;.</p>
<p>The $capability attribute:</p>
<blockquote><p>The <a title="Roles and Capabilities" href="http://codex.wordpress.org/Roles_and_Capabilities">capability</a> required for this menu to be displayed to the user.  <a title="User Levels" href="http://codex.wordpress.org/User_Levels">User levels</a> are deprecated and should not be used here!</p></blockquote>
<p>This is a little easier to fix, as WordPress translates the old number-based user_level value to the new capability value. However, it&#8217;s problematic to rely on this conversion as no one knows how long it will be there.</p>
]]></content:encoded>
			<wfw:commentRss>http://ilikewordpress.com/357/you-do-not-have-sufficient-permissions-to-access-this-page/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fixing the Blank Screen Syndrome on a WordPress Blog</title>
		<link>http://ilikewordpress.com/354/fixing-the-blank-screen-syndrome-on-a-wordpress-blog/</link>
		<comments>http://ilikewordpress.com/354/fixing-the-blank-screen-syndrome-on-a-wordpress-blog/#comments</comments>
		<pubDate>Sat, 11 Sep 2010 16:59:42 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[On WordPress]]></category>
		<category><![CDATA[Tech stuff]]></category>
		<category><![CDATA[Troubleshooting WordPress issues]]></category>
		<category><![CDATA[blank screen]]></category>
		<category><![CDATA[fixits]]></category>
		<category><![CDATA[plugin problems]]></category>
		<category><![CDATA[white screen]]></category>

		<guid isPermaLink="false">http://ilikewordpress.com/?p=354</guid>
		<description><![CDATA[With the advent of WordPress version 3, my most common fixit request has been, &#8220;Help! I just see a white screen on my blog!&#8221; I&#8217;ll share with you what I&#8217;ve found to be the most common cause, but first there&#8217;re a few things you can do to at least get back up and running again. [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><a href="http://ilikewordpress.com/wp-content/uploads/2010/09/iStock_000011483172XSmall.jpg"><img class="alignright size-medium wp-image-355" title="Scared" src="http://ilikewordpress.com/wp-content/uploads/2010/09/iStock_000011483172XSmall-300x200.jpg" alt="" width="300" height="200" /></a>With the advent of WordPress version 3, my most common fixit request has been, &#8220;Help! I just see a white screen on my blog!&#8221;</p>
<p>I&#8217;ll share with you what I&#8217;ve found to be the most common cause, but first there&#8217;re a few things you can do to at least get back up and running again.</p>
<p>If you have Dashboard access, first disable ALL of your plugins. 9 times out of 10, you&#8217;ll see your site reappear.</p>
<p>If you still see just a white screen, the next step is to switch themes. Activate WordPress&#8217;s default theme (the twenty-ten theme, now) and check your site again.</p>
<p>If that didn&#8217;t fix your problem, you&#8217;ll need to start verifying core files and such, or employ the services of a WordPress professional to help you get your site back up and running.</p>
]]></content:encoded>
			<wfw:commentRss>http://ilikewordpress.com/354/fixing-the-blank-screen-syndrome-on-a-wordpress-blog/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Changing WordPress Auto-Save and Revisions Settings</title>
		<link>http://ilikewordpress.com/349/changing-wordpress-auto-save-and-revisions-settings/</link>
		<comments>http://ilikewordpress.com/349/changing-wordpress-auto-save-and-revisions-settings/#comments</comments>
		<pubDate>Sat, 11 Sep 2010 16:13:27 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[On WordPress]]></category>
		<category><![CDATA[Tech stuff]]></category>

		<guid isPermaLink="false">http://ilikewordpress.com/?p=349</guid>
		<description><![CDATA[The WordPress  team did a great and wonderful thing when they included auto-save and revisions for posts/pages. If you&#8217;re in a collaborative environment, referring to previous revisions can be a useful tool. And auto-save? If you haven&#8217;t had a computer crash in the middle of writing a blog post, you&#8217;re probably in the minority On [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>The WordPress  team did a great and wonderful thing when they included auto-save and revisions for posts/pages. If you&#8217;re in a collaborative environment, referring to previous revisions can be a useful tool. And auto-save? If you haven&#8217;t had a computer crash in the middle of writing a blog post, you&#8217;re probably in the minority <img src='http://ilikewordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>On the flip side, most of us don&#8217;t need to see countless revisions that we may have made. Fix a typo? One more revision. The list can get pretty long.</p>
<p>And really &#8211; do we really need an auto save once every <strong>minute</strong>? I don&#8217;t know about you, but I don&#8217;t type that fast&#8230;</p>
<p>Fortunately, as for most annoyances in WordPress, there is a relatively easy fix for both auto-saves and post/page revisions. You&#8217;ll need to edit your wp-config.php file (for those of you who installed WP by hand, that&#8217;s the file where you entered your database information).</p>
<p>FTP into your WordPress installation on your server, then download the wp-config.php file to your computer. Immediately, before you do anything else, <em><strong>make a backup copy</strong></em>. Always always always keep a backup copy of files you edit. An error as tiny as a misplaced comma can render your blog unusable.</p>
<h3>Changing the AutoSave interval</h3>
<p>You&#8217;ll need to add the following line to your wp-config.php file:</p>
<pre>define('AUTOSAVE_INTERVAL', 180 );  // # of seconds between saves</pre>
<p>Change the &#8217;160&#8242; number to whatever autosave interval you want. I usually use 180, or 3 minutes.</p>
<h3>Change the post Revisions settings</h3>
<p>Unlike AutoSave, you can actually turn post/page revisions <strong>off</strong> if you really want to. Or, you can specify the number of revisions you want to keep.</p>
<p>To turn revisions off, add this line to wp-config.php:</p>
<pre>define('WP_POST_REVISIONS', false );</pre>
<p>If you want to keep revisions on, but limit the number that WordPress saves, use a number instead of the keyword <em>false</em>:</p>
<pre>define('WP_POST_REVISIONS', 6);</pre>
<p>There. Pretty simple, eh? Save your wp-config.php file, then upload it back to your server. Your changes will take effect immediately.</p>
]]></content:encoded>
			<wfw:commentRss>http://ilikewordpress.com/349/changing-wordpress-auto-save-and-revisions-settings/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Protect Your Email Address From Spammers</title>
		<link>http://ilikewordpress.com/97/protect-your-email-address-from-spammers/</link>
		<comments>http://ilikewordpress.com/97/protect-your-email-address-from-spammers/#comments</comments>
		<pubDate>Tue, 01 Jun 2010 15:11:30 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Tech stuff]]></category>
		<category><![CDATA[Template coding]]></category>

		<guid isPermaLink="false">http://ilikewordpress.com/?p=97</guid>
		<description><![CDATA[So you&#8217;ve started a new blog, and now the worst has happened &#8211; the spammers have your email address. You know, the one that&#8217;s on every post where you&#8217;re listed as the author. You can do what a lot of people do to combat the dreaded email harvester. Give them a throw-away address to chew [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>So you&#8217;ve started a new blog, and now the worst has happened &#8211; the spammers have your email address. You know, the one that&#8217;s on every post where you&#8217;re listed as the author.</p>
<p>You can do what a lot of people do to combat the dreaded email harvester. Give them a throw-away address to chew on, and when the spam gets too bad close that account and start another. Throw-away addresses are the free accounts &#8211; Hotmail, Yahoo, GMail.</p>
<p>But that&#8217;s a pain.</p>
<p>Why not just make it so the spam bots can&#8217;t find your email address in the first place? Fortunately, it&#8217;s pretty easily done, using a built-in WordPress function: <a title="http://codex.wordpress.org/Function_Reference/antispambot" href="http://codex.wordpress.org/Function_Reference/antispambot">antispambot()</a>. This function takes the email address enclosed in the parentheses, converts it to HTML entities ( the &amp;#xx characters ) and returns the value.</p>
<p>How do you use it? Again, pretty simple. Somewhere in your templates, if the template author chose to display your email address at all, is a call to the WordPress template tag <a title="Template Tags/the author email" href="http://codex.wordpress.org/Template_Tags/the_author_email">the_author_email()</a>. This tag, as you might suspect, outputs the post author&#8217;s email address. Open your single.php template (the most likely template to display the author&#8217;s email address ) in your fav text editor, and search for the tag. Once you&#8217;ve found it, you&#8217;ll make the substitution. Change <code>the_author_email()</code> to the following:</p>
<p><code>echo antispambot( get_the_author_email())</code></p>
<p>Nothing to it, right?</p>
<p>Those of you with sharp eyes will notice we&#8217;re using a slightly different function to get the author&#8217;s email address &#8211; get_the_author_email() vs. the_author_email(). The difference is that the latter actually outputs the email address to the screen, and we don&#8217;t want that. We want to pass the email address to the antispambot() function rather than print it to the screen, so we use the get_the_author_email() function which <strong>returns</strong> the value rather than <strong>echo</strong>ing it. Small but important distinction.</p>
]]></content:encoded>
			<wfw:commentRss>http://ilikewordpress.com/97/protect-your-email-address-from-spammers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Graphic Design Book Blowout! Over 70% Off Retail!</title>
		<link>http://ilikewordpress.com/291/graphic-design-book-blowout-over-70-off-retail/</link>
		<comments>http://ilikewordpress.com/291/graphic-design-book-blowout-over-70-off-retail/#comments</comments>
		<pubDate>Sun, 28 Mar 2010 17:27:02 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Tech stuff]]></category>

		<guid isPermaLink="false">http://ilikewordpress.com/?p=291</guid>
		<description><![CDATA[I am done completely with print design and design in general. Because it&#8217;s also spring-cleaning time for my office in preparation for a move, these books really need to find a new home. I would prefer to sell them as one package, but let me know if there&#8217;s one or two that you want. There [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>I am done completely with print design and design in general. Because it&#8217;s also spring-cleaning time for my office in preparation for a move, these books really need to find a new home. I  would prefer to sell them as one package, but let me know if there&#8217;s one or two that you want.</p>
<p>There are almost $250 worth of books here, all in good shape. They have been read, though, so they&#8217;re not pristine.</p>
<p>Buy-it-now price: $75 + $10 shipping, total $85. Hit the preloaded PayPal button below or at the end of the post. Yes, you can use credit card or debit card.</p>
<p>Or &#8211; give me an offer. I&#8217;d like to see these go to someone who can use them and will appreciate them.</p>
<form style="text-align: center;" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="XYZFR5MTL8EY8">
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"  style="width: 122px; border: none; background: transparent;" >
<img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1"><br />
</form>
<p><img src="http://ecx.images-amazon.com/images/I/512i04f2f5L._SL160_.jpg" alt="" /> Graphic effects and typographic treatments. Jim Krause, $22.99 USD. ISBN 1-58180-046-0</p>
<p><img src="http://ecx.images-amazon.com/images/I/515bTVmux%2BL._SL160_.jpg" alt="" /> Brochure, poster/flyer, web design, advertising, newsletter, page layout, stationery ideas. Jim Krause, $22.99 USD. ISBN 1-58180-146-7</p>
<p><img src="http://ecx.images-amazon.com/images/I/51MAF1WE4NL._SL160_.jpg" alt="" /> An index of 150+ concepts, images and exercises to ignite your design  ingenuity. Jim Krause, $24.99 USD. ISBN 1-58180-438-5</p>
<p><img src="http://ecx.images-amazon.com/images/I/51MxJK29EML._SL160_.jpg" alt="" /> Over 1100 Color Combinations, CMYK &amp; RGB Formulas, for print and web media. Jim Krause, $23.99 USD. ISBN 1-58180-236-6</p>
<p><img src="http://ecx.images-amazon.com/images/I/41fxWU6VCPL._SL160_.jpg" alt="" /> A graphic designer&#8217;s guide to designing effective compositions, selecting dynamic components &amp; devloping creative concepts. Jim Krause, $24.99 USD. ISBN 1-58180-501-2</p>
<p><img src="http://ecx.images-amazon.com/images/I/51j3paLw4OL._SL160_.jpg" alt="" /> 375+ pages of design ideas, edited by the famous David E. Carter, $29.99 USD. ISBN 0-06-008763-3</p>
<p><img src="http://ecx.images-amazon.com/images/I/41QW3VWFNHL._SL160_.jpg" alt="" /> Design and Typographic Principles for the Visual Novice, Robin Williams, $14.95USD. ISBN 1-56609-159-4</p>
<p><img src="http://ecx.images-amazon.com/images/I/51AFQ4R3WGL._SL160_.jpg" alt="" /> The Non-Designer&#8217;s Type Book, Robin Williams, $24.99USD. ISBN 0-201-35367-9</p>
<p><img src="http://ecx.images-amazon.com/images/I/51B1MSE5E9L._SL160_.jpg" alt="" /> Everything you need to know to create dynamic layouts. Graham Davis, $21.99USD. ISBN  1-58180-260-9</p>
<p><img src="http://ecx.images-amazon.com/images/I/51BF6Z5XDCL._SL160_.jpg" alt="" /> Design principles, decisions, projects. David Dabner, $23.99USD. ISBN 1-58180-435-0</p>
<form style="text-align: center;" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="XYZFR5MTL8EY8">
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"  style="width: 122px; border: none; background: transparent;" >
<img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1"><br />
</form>
]]></content:encoded>
			<wfw:commentRss>http://ilikewordpress.com/291/graphic-design-book-blowout-over-70-off-retail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Skype Can Be a Pain In the Ass</title>
		<link>http://ilikewordpress.com/260/skype-can-be-a-pain-in-the-ass/</link>
		<comments>http://ilikewordpress.com/260/skype-can-be-a-pain-in-the-ass/#comments</comments>
		<pubDate>Sun, 06 Sep 2009 19:26:16 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Tech stuff]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[skype]]></category>
		<category><![CDATA[startup error]]></category>

		<guid isPermaLink="false">http://ilikewordpress.com/?p=260</guid>
		<description><![CDATA[I don&#8217;t restart my computer very often; it mostly runs 24/7. So when I did have occasion to do a restart, I was hit with the issue that my development instance of Apache wouldn&#8217;t start. I would get the error: &#8220;Windows could not start Apache 2.2 on Local Computer. For more information, review the System [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>I don&#8217;t restart my computer very often; it mostly runs 24/7. So when I did have occasion to do a restart, I was hit with the issue that my development instance of Apache wouldn&#8217;t start. I would get the error: &#8220;Windows could not start Apache 2.2 on Local Computer. For more information, review the System Event Log. If this is a non-Microsoft service, contact the service vendor, and refer to service-specific error code 1.&#8221;</p>
<p>Never one to follow instructions, after several retries, much teeth-gnashing and hair-pulling, I decided I might make more headway were I to have a look at the Apache error log.</p>
<p>Nothing. Zip. Zilch. Zero. Nada. Just a note that the httpd.pid file had been overwritten.</p>
<p>So, maybe following suggestions is a good thing. Opened up the WinXP event viewer. Hallelujah, there it is.</p>
<p>&#8220;The Apache service named  reported the following error: &gt;&gt;&gt; no listening sockets available, shutting down.&#8221;</p>
<p>I have Apache configured to listen on port 80, so I don&#8217;t have to go through shenanigans when I&#8217;m developing a site. What this error is telling me is that port 80 isn&#8217;t available to attach to &#8211; probably because some other program got there first.</p>
<p>I&#8217;ve never had this problem before. What&#8217;s different between now and the last time I restarted my machine with no problems?</p>
<p><strong>Aha!</strong> I upgraded Skype.</p>
<p>Sure enough: shut down Skype, Apache starts up normally.</p>
<p>Skype was hijacking my listening socket, and because it&#8217;s higher up on the auto-start list than Apache, Apache choked.</p>
<p>AFAICT, this wasn&#8217;t previous Skype behavior. I&#8217;ve never had the issue before, so logically the last upgrade changed things.</p>
<p>So I set Skype to start manually instead of automatically. Problem solved.</p>
<p><strong>45 minutes wasted, never to return.</strong> I know that&#8217;s not much, but still.</p>
]]></content:encoded>
			<wfw:commentRss>http://ilikewordpress.com/260/skype-can-be-a-pain-in-the-ass/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

