<?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>Konstruktors &#187; plugins</title>
	<atom:link href="http://konstruktors.com/blog/tag/plugins/feed/" rel="self" type="application/rss+xml" />
	<link>http://konstruktors.com</link>
	<description>Web Design, WordPress and Performance Services</description>
	<lastBuildDate>Sat, 19 May 2012 16:41:40 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4-beta4-20805</generator>
<atom:link rel="hub" href="http://konstruktors.superfeedr.com/"/><atom:link rel="hub" href="http://pubsubhubbub.appspot.com/"/>		<item>
		<title>Request for Feedback: Widget Context UI Update 2011,&#160;v1</title>
		<link>http://konstruktors.com/blog/wordpress/3116-feedback-widget-context-ui-2011-v1/</link>
		<comments>http://konstruktors.com/blog/wordpress/3116-feedback-widget-context-ui-2011-v1/#comments</comments>
		<pubDate>Sat, 20 Aug 2011 21:34:40 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[ui]]></category>
		<category><![CDATA[Widget Context]]></category>

		<guid isPermaLink="false">http://konstruktors.com/?p=3116</guid>
		<description><![CDATA[Update: there is a new version of the UX update available. For the next release of the Widget Context plugin I have two goals &#8212; simplified user interface and code clean-up to eliminate PHP notices. However, due to the complex logic of combined &#8216;show&#8217; and &#8216;hide&#8217; visibility rules, I haven&#8217;t yet settled on the final [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Update:</strong> there is <a href="http://konstruktors.com/blog/design/3147-widget-context-ui-2011-v-2/">a new version of the UX update</a> available.</p>
<p><a href="http://lab.konstruktors.com/widget-context-ui-2011/"><img class="alignnone size-medium wp-image-3133" title="Widget Context UI Update 2011, Version 1" src="http://konstruktors.com/wp-content/uploads/2011/08/widget-context-2011-ui-screenshot-500x357.png" alt="Widget Context UI Update 2011, Version 1" width="500" height="357" /></a></p>
<p>For the next release of the Widget Context plugin I have two goals &#8212; simplified user interface and code clean-up to eliminate PHP notices. <span id="more-3116"></span></p>
<p>However, due to the complex logic of combined &#8216;show&#8217; and &#8216;hide&#8217; visibility rules, I haven&#8217;t yet settled on the final layout and naming of various buttons and labels. Therefore, it would be really great if you could take a look at this video and leave your feedback in the comments. There is also <a href="http://lab.konstruktors.com/widget-context-ui-2011/">a working demo of the UI</a>.</p>
<h3>Video:</h3>
<p><iframe title="Twitvid video player" src="http://www.twitvid.com/embed.php?guid=GTD26&amp;autoplay=0" frameborder="0" width="500" height="280"></iframe></p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/design/3147-widget-context-ui-2011-v-2/' rel='bookmark' title='Widget Context UI Update 2011, Version&nbsp;2'>Widget Context UI Update 2011, Version&nbsp;2</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/2491-widget-context-user-interface-update/' rel='bookmark' title='Widget Context User Interface&nbsp;Update'>Widget Context User Interface&nbsp;Update</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/944-widget-context-update-word-count-check/' rel='bookmark' title='Widget Context Update &#8212; Word Count&nbsp;Check'>Widget Context Update &#8212; Word Count&nbsp;Check</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/wordpress/3116-feedback-widget-context-ui-2011-v1/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Enable Automatic Updates for Plugins Hosted by&#160;Developers</title>
		<link>http://konstruktors.com/blog/wordpress/1660-enable-automatic-updates-for-plugins-hosted-by-developers/</link>
		<comments>http://konstruktors.com/blog/wordpress/1660-enable-automatic-updates-for-plugins-hosted-by-developers/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 00:21:28 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=1660</guid>
		<description><![CDATA[Currently WordPress doesn&#8217;t offer an easy way for plugins which are not hosted on wordpress.org to use its built-in automatic update feature. Fortunately, I have found a quick and simple way to add this functionality to any plugin and allow plugin authors to take a complete control over when and how the updates are released. [...]]]></description>
			<content:encoded><![CDATA[<p>Currently WordPress doesn&#8217;t offer an easy way for plugins which are not hosted on wordpress.org to use its built-in automatic update feature.</p>
<p>Fortunately, I have found a quick and simple way to add this functionality to any plugin and allow plugin authors to take a complete control over when and how the updates are released.<span id="more-1660"></span> The solution consist of two parts:</p>
<ol class="spaced">
<li>filtering the contents of <code>get_transient('update_plugins')</code> under <code>wp_update_plugins()</code> in <code><a href="http://svn.automattic.com/wordpress/trunk/wp-includes/update.php">/wp-includes/update.php</a></code>, and</li>
<li>providing your own update API.</li>
</ol>
<p>Here is a working (and a very basic) example of <a href="http://konstruktors.com/lab/my-plugin-updates/plugin.txt">a plugin</a> and <a href="http://konstruktors.com/lab/my-plugin-updates/api.txt">an API</a> (works with WordPress 2.8).</p>
<p>This solution also enables developers to sell their plugins and still retain the convenience of automatic updates for their users.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/wordpress/2538-automatic-updates-for-plugins-and-themes-hosted-outside-wordpress-extend/' rel='bookmark' title='Automatic Updates for Plugins and Themes Hosted Outside WordPress&nbsp;Extend'>Automatic Updates for Plugins and Themes Hosted Outside WordPress&nbsp;Extend</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/1672-automatic-updates-for-developer-hosted-themes/' rel='bookmark' title='Automatic Updates for Developer Hosted&nbsp;Themes'>Automatic Updates for Developer Hosted&nbsp;Themes</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/2885-enable-plugin-theme-updates-and-pretty-permalinks-nginx/' rel='bookmark' title='Enable WordPress Plugin, Theme Updates and Pretty Permalinks on&nbsp;Nginx'>Enable WordPress Plugin, Theme Updates and Pretty Permalinks on&nbsp;Nginx</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/wordpress/1660-enable-automatic-updates-for-plugins-hosted-by-developers/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>WordPress, Plugins and Open&#160;Source</title>
		<link>http://konstruktors.com/blog/wordpress/1252-wordpress-plugins-and-open-source/</link>
		<comments>http://konstruktors.com/blog/wordpress/1252-wordpress-plugins-and-open-source/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 18:11:01 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=1252</guid>
		<description><![CDATA[It&#8217;s funny how only now when WordPress has been updated and many plugins have stopped working, people realize how important and significant the plugins are. Show your love for open source &#8212; say Thanks and donate. Get the developers&#8217; enthusiasm flowing. Related posts WordPress Plugins which&#160;I&#160;Use Enable Automatic Updates for Plugins Hosted by&#160;Developers Proprietary vs. [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s funny how only now when WordPress has been updated and many plugins have stopped working, people realize how important and significant the plugins are.</p>
<p>Show your love for open source &#8212; say <em>Thanks</em> and donate. Get the developers&#8217; enthusiasm flowing.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/wordpress/831-wordpress-plugins-which-i-use/' rel='bookmark' title='WordPress Plugins which&nbsp;I&nbsp;Use'>WordPress Plugins which&nbsp;I&nbsp;Use</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/1660-enable-automatic-updates-for-plugins-hosted-by-developers/' rel='bookmark' title='Enable Automatic Updates for Plugins Hosted by&nbsp;Developers'>Enable Automatic Updates for Plugins Hosted by&nbsp;Developers</a></li>
<li><a href='http://konstruktors.com/blog/free-software/1309-licencing-proprietary-vs-liberal-vs-gpl/' rel='bookmark' title='Proprietary vs. Liberal vs. GNU&nbsp;GPL'>Proprietary vs. Liberal vs. GNU&nbsp;GPL</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/wordpress/1252-wordpress-plugins-and-open-source/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OpenID Plugin and WordPress&#160;2.8</title>
		<link>http://konstruktors.com/blog/wordpress/1241-openid-plugin-and-wordpress-2-8/</link>
		<comments>http://konstruktors.com/blog/wordpress/1241-openid-plugin-and-wordpress-2-8/#comments</comments>
		<pubDate>Thu, 11 Jun 2009 21:59:13 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=1241</guid>
		<description><![CDATA[Ever since using the nightly versions of WordPress, I got used to doing regular updates and not checking if all plugins work fine afterward. Therefore only today I discovered that leaving comments on this blog has been impossible for a while already. Turns out that changes in the WordPress core have made the OpenID plugin [...]]]></description>
			<content:encoded><![CDATA[<p>Ever since using the nightly versions of WordPress, I got used to doing regular updates and not checking if all plugins work fine afterward.</p>
<p>Therefore only today I discovered that <strong>leaving comments on this blog has been impossible for a while already</strong>. Turns out that changes in the WordPress core have made the <em>OpenID plugin</em> unaware of the comment author&#8217;s <em>name</em> and <em>e-mail</em>.</p>
<p><del datetime="June 19, 2009">Haven&#8217;t found a solution yet.</del> <span id="more-1241"></span></p>
<h3>The Solution</h3>
<p>Open <code>comments.php</code> within the OpenID plugin folder and move the <em>name &amp; email input verification</em> from line 73:</p>
<pre lang="php">
// duplicate name and email check from wp-comments-post.php
openid_require_name_email();</pre>
<p>right after line 68, like this:</p>
<pre lang="php">
// just ignore the error... it just means the user entered a normal URL.
if (array_key_exists('openid_identifier', $_POST)) {
	openid_repost_comment_anonymously($_SESSION['openid_comment_post']);
	// duplicate name and email check from wp-comments-post.php
	openid_require_name_email();
}</pre>
<h4>Why this works</h4>
<p>We need to check name and e-mail input only if the URL is not an OpenID.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/the-web/268-openid-seatbelt-firefox-plugin/' rel='bookmark' title='OpenID SeatBelt plugin for&nbsp;Firefox'>OpenID SeatBelt plugin for&nbsp;Firefox</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/2534-openid-and-php-5-3/' rel='bookmark' title='OpenID and PHP&nbsp;5.3'>OpenID and PHP&nbsp;5.3</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/259-how-to-be-your-own-openid-provider-and-use-your-blogs-url-for-identification/' rel='bookmark' title='How to Be Your Own OpenID Provider and Use Your blog&#8217;s URL for&nbsp;Identification'>How to Be Your Own OpenID Provider and Use Your blog&#8217;s URL for&nbsp;Identification</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/wordpress/1241-openid-plugin-and-wordpress-2-8/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Widget Context Plugin for WordPress&#160;2.8</title>
		<link>http://konstruktors.com/blog/wordpress/1193-widget-context-plugin-for-wordpress-2-8/</link>
		<comments>http://konstruktors.com/blog/wordpress/1193-widget-context-plugin-for-wordpress-2-8/#comments</comments>
		<pubDate>Sun, 17 May 2009 14:24:02 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[upgrade]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/understanding-web/1193-widget-context-plugin-for-wordpress-2-8/</guid>
		<description><![CDATA[If you are using my Widget Context plugin and you have just upgraded to WordPress 2.8 Beta, please use this new version of Widget Context plugin. Related posts Widget Context Plugin Added to the Official Plugin&#160;Repository Widget Logic plugin for&#160;WordPress Request for Feedback: Widget Context UI Update 2011,&#160;v1]]></description>
			<content:encoded><![CDATA[<p>If you are using my <em>Widget Context</em> plugin and you have just upgraded to WordPress 2.8 Beta, please use this <a href="http://konstruktors.com/projects/wordpress-plugins/widget-context/">new version of Widget Context plugin</a>.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/wordpress/1443-widget-context-in-official-plugin-repository/' rel='bookmark' title='Widget Context Plugin Added to the Official Plugin&nbsp;Repository'>Widget Context Plugin Added to the Official Plugin&nbsp;Repository</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/435-widget-logic-plugin-for-wordpress/' rel='bookmark' title='Widget Logic plugin for&nbsp;WordPress'>Widget Logic plugin for&nbsp;WordPress</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/3116-feedback-widget-context-ui-2011-v1/' rel='bookmark' title='Request for Feedback: Widget Context UI Update 2011,&nbsp;v1'>Request for Feedback: Widget Context UI Update 2011,&nbsp;v1</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/wordpress/1193-widget-context-plugin-for-wordpress-2-8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Plugins which&#160;I&#160;Use</title>
		<link>http://konstruktors.com/blog/wordpress/831-wordpress-plugins-which-i-use/</link>
		<comments>http://konstruktors.com/blog/wordpress/831-wordpress-plugins-which-i-use/#comments</comments>
		<pubDate>Wed, 17 Dec 2008 05:38:56 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[Meta]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=831</guid>
		<description><![CDATA[Here is a list of plugins that are currently active behind this blog. Admin CSS (my own), Akismet, Chunk Urls for WordPress, Comment Saver, Custom Function Widgets (mine), del.icio.us for WordPress, Digg &#38; Reddit Me (almost completely rewritten by me), FeedBurner FeedSmith, Feed Universe (mine), Filosofo Comments Preview, Get Recent Comments, Google XML Sitemaps, Grunion Contact Form [...]]]></description>
			<content:encoded><![CDATA[<p>Here is a list of plugins that are currently active behind this blog.<span id="more-831"></span></p>
<p><a href="http://konstruktors.com/projects/wordpress-plugins/admin-css/">Admin CSS</a> (my own), <a href="http://akismet.com/">Akismet</a>, <a href="http://www.village-idiot.org/plugins">Chunk Urls for WordPress</a>, <a href="http://wordpress.org/extend/plugins/comment-saver/">Comment Saver</a>, <a href="http://konstruktors.com/projects/wordpress-plugins/custom-function-widgets/">Custom Function Widgets</a> (mine), <a href="http://rick.jinlabs.com/code/delicious">del.icio.us for WordPress</a>, <a href="http://www.michelem.org/wordpress-plugin-digg-reddit-me/">Digg &amp; Reddit Me</a> (almost completely rewritten by me),  <a href="http://www.feedburner.com/fb/a/help/wordpress_quickstart">FeedBurner FeedSmith</a>, <a href="http://konstruktors.com/projects/wordpress-plugins/rss-feed-universe-combiner-plugin/">Feed Universe</a> (mine), <a href="http://www.ilfilosofo.com/blog/comments-preview/">Filosofo Comments Preview</a>,  <a href="http://blog.jodies.de/archiv/2004/11/13/recent-comments/">Get Recent Comments</a>, <a href="http://www.arnebrachhold.de/redir/sitemap-home/">Google XML Sitemaps</a>, 	<a href="http://wordpress.org/extend/plugins/grunion-contact-form/">Grunion Contact Form</a> (<a href="http://konstruktors.com/contact/">heavily</a> modified), <a href="http://www.prelovac.com/vladimir/wordpress-plugins/insights">Insights</a>, <a href="http://adambrown.info/b/widgets/category/kb-advanced-rss/">KB Advanced RSS Widget</a>, <a href="http://www.piepalace.ca/blog/projects/miniposts/">MiniPosts2</a>, <a href="http://www.yuriko.net/dist/nonce_please/">Nonce, Please!</a>, <a href="http://wordpress.org/extend/plugins/openid">OpenID</a>, <a href="http://www.theblog.ca/blog-url-shortcodes">Peter&#8217;s Blog URL Shortcodes</a>, <a href="http://aciddrop.com/">PHP Speedy WP</a>, <a href="http://rmarsh.com/plugins/post-plugin-library/">Post-Plugin Library</a>, <a href="http://www.entropytheblog.com/blog/2008/12/wordpress-quick-reply-template-plugin/">Quick Reply Template Plugin</a>, <a href="http://rmarsh.com/plugins/random-posts/">Random Posts</a>, <a href="http://urbangiraffe.com/plugins/redirection/">Redirection</a>, <a href="http://www.thunderguy.com/semicolon/2007/07/30/share-this-jquery-a-wordpress-plugin/">Share This (jQuery)</a>, <a href="http://justinblanton.com/projects/smartarchives/">Smart Archives</a>, <a href="http://txfx.net/code/wordpress/subscribe-to-comments/">Subscribe To Comments</a>, <a href="http://wordpress.org/extend/plugins/tabbed-widgets/">Tabbed Widgets</a> (mine), Thumbnails for Post Excerpts (mine, not public yet), Widget Context (mine, not released yet), <a href="http://wordpress.org/extend/plugins/stats/">WordPress.com Stats</a>, <a href="http://thesandbox.wordpress.com/wpads/">WP-Ads</a>,  		<a href="http://www.mis-algoritmos.com/2007/09/09/wp-digg-style-pagination-plugin-v-10/">WP-Digg Style Paginator</a>, <a href="http://singpolyma.net/plugins/oauth/">WP-OAuth</a>, <a href="http://wordpress.org/extend/plugins/wp-syntax/">WP-Syntax</a>, <a href="http://ocaoimh.ie/wp-super-cache/">WP Super Cache</a> and <a href="http://wordpress.org/extend/plugins/xrds-simple/">XRDS-Simple</a>.</p>
<p>This is what I call the <em>amazing</em> part of open-source and WordPress.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/wordpress/101-wordpress-plugin-custom-function-widgets/' rel='bookmark' title='WordPress Plugin: Custom Function&nbsp;Widgets'>WordPress Plugin: Custom Function&nbsp;Widgets</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/277-fixing-postpost-and-ozh-absolute-comments-plugins/' rel='bookmark' title='Fixing «PostPost» and «Ozh&#039; Absolute Comments»&nbsp;Plugins'>Fixing «PostPost» and «Ozh&#039; Absolute Comments»&nbsp;Plugins</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/322-tabbed-widgets-plugin-for-wordpress/' rel='bookmark' title='Tabbed Widgets Plugin&nbsp;for WordPress'>Tabbed Widgets Plugin&nbsp;for WordPress</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/wordpress/831-wordpress-plugins-which-i-use/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Tabbed Widgets Now Better than&#160;Ever</title>
		<link>http://konstruktors.com/blog/wordpress/458-tabbed-widgets-now-better-than-ever/</link>
		<comments>http://konstruktors.com/blog/wordpress/458-tabbed-widgets-now-better-than-ever/#comments</comments>
		<pubDate>Sun, 24 Aug 2008 23:31:33 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=458</guid>
		<description><![CDATA[Tabbed Widgets plugin for WordPress has been updated to include most of the features that users of the plugin have requested since it was first released. Here is a quick list of all the improvements that are available in version 0.71: An &#8220;invisible&#8221; sidebar or widgetized area is added to the list of the available [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Tabbed Widgets plugin for WordPress" href="http://wordpress.org/extend/plugins/tabbed-widgets/"><img class="size-medium wp-image-465 alignright" title="Tabbed Widgets plugin for WordPress logo" src="http://konstruktors.com/wp-content/uploads/2008/08/tabbed-widgets-logo1.png" alt="" width="82" height="82" /> Tabbed Widgets plugin</a> for WordPress has been updated to include most of the features that users of the plugin have requested since it was first released. Here is a quick list of all the improvements that are available in version 0.71:</p>
<ul class="spaced">
<li>An &#8220;invisible&#8221; sidebar or widgetized area is added to the list of the available sidebars automatically. Now you can easily prepare and configure the widgets that you want to use inside a tabbed interface. Previously you would have to manually edit <code>template.php</code> of your theme, but now the plugin does it for you and for every theme.</li>
<li><a rel="attachment wp-att-460" href="http://konstruktors.com/blog/wordpress/458-tabbed-widgets-now-better-than-ever/attachment/tabbed-widgets-07-widgets-with-titles/"><img class="size-thumbnail wp-image-460 withborder alignright" title="Tabbed Widgets plugin - choose widgets by their titles" src="/wp-content/uploads/2008/08/tabbed-widgets-07-widgets-with-titles-150x150.png" alt="List of widgets includes also their titles" width="150" height="150" /></a> The drop-down list of widgets that are available  for placement inside a tabbed interface now includes titles of the widgets which makes it possible to distinguish between multiple text widgets, for example. Previously you could end up having multiple text and rss widgets without any way of determining which is which.</li>
<li>Make any of the tabs open by default. Previously you could choose only a random or a hardcoded &#8220;start&#8221; tab.</li>
<li>The horizontal tabs are now as smart as the accordion ones &#8212; the automatic rotation stops when a reader hovers it.</li>
<li>Improved performance and significantly reduced database calls.</li>
</ul>
<p class="info"><strong>Notice:</strong> Version 0.7 has a bug which somehow makes some posts under &#8216;Edit&#8217; section of WordPress dashboard to disappear. This is now fixed in 0.71.</p>
<p><a rel="attachment wp-att-459" href="http://konstruktors.com/blog/wordpress/458-tabbed-widgets-now-better-than-ever/attachment/tabbed-widgets-07-choose-start-tab/"><img class="size-thumbnail wp-image-459 withborder alignleft" title="Tabbed Widgets choose default start tab" src="/wp-content/uploads/2008/08/tabbed-widgets-07-choose-start-tab-150x150.png" alt="Choose any tab to be opened by default" width="150" height="150" /></a></p>
<h3>Update Now</h3>
<p>Get the latest version of <em>Tabbed Widgets</em> using the automatic plugin update feature within your WordPress dashboard, or from the <a title="Download Tabbed Widgets plugin" href="http://wordpress.org/extend/plugins/tabbed-widgets/">dedicated page on WordPress Extend</a>.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/wordpress/1797-tabbed-widgets-updated-for-wordpress-2-8/' rel='bookmark' title='Tabbed Widgets Updated for WordPress&nbsp;2.8'>Tabbed Widgets Updated for WordPress&nbsp;2.8</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/2729-tabbed-widgets-update-version-1-3/' rel='bookmark' title='Tabbed Widgets Update: Version&nbsp;1.3'>Tabbed Widgets Update: Version&nbsp;1.3</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/375-tabbed-widgets-in-wild/' rel='bookmark' title='Tabbed Widgets in the&nbsp;Wild'>Tabbed Widgets in the&nbsp;Wild</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/wordpress/458-tabbed-widgets-now-better-than-ever/feed/</wfw:commentRss>
		<slash:comments>68</slash:comments>
		</item>
		<item>
		<title>Tabbed Widgets in the&#160;Wild</title>
		<link>http://konstruktors.com/blog/wordpress/375-tabbed-widgets-in-wild/</link>
		<comments>http://konstruktors.com/blog/wordpress/375-tabbed-widgets-in-wild/#comments</comments>
		<pubDate>Mon, 14 Jul 2008 21:29:34 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=375</guid>
		<description><![CDATA[Here they are &#8212; at Onkel Andys Tagebuch ‏ &#8212; the very first and beautifully customized tabbed widgets. Related posts Tabbed Widgets Updated for WordPress&#160;2.8 Tabbed Widgets Now Better than&#160;Ever Tabbed Widgets Update: Version&#160;1.3]]></description>
			<content:encoded><![CDATA[<p>Here they are &#8212; at <a href="http://www.onkelandy.com/blog/13.07.2008/neue-blog-sidebar-und-besuch-daheim.htm">Onkel Andys Tagebuch</a> ‏ &#8212; the very first and beautifully customized <a title="Tabbed/accordion widgets plugin for WordPress" href="http://konstruktors.com/blog/wordpress/322-tabbed-widgets-plugin-for-wordpress/">tabbed widgets</a>.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/wordpress/1797-tabbed-widgets-updated-for-wordpress-2-8/' rel='bookmark' title='Tabbed Widgets Updated for WordPress&nbsp;2.8'>Tabbed Widgets Updated for WordPress&nbsp;2.8</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/458-tabbed-widgets-now-better-than-ever/' rel='bookmark' title='Tabbed Widgets Now Better than&nbsp;Ever'>Tabbed Widgets Now Better than&nbsp;Ever</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/2729-tabbed-widgets-update-version-1-3/' rel='bookmark' title='Tabbed Widgets Update: Version&nbsp;1.3'>Tabbed Widgets Update: Version&nbsp;1.3</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/wordpress/375-tabbed-widgets-in-wild/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fixing «PostPost» and «Ozh&#039; Absolute Comments»&#160;Plugins</title>
		<link>http://konstruktors.com/blog/wordpress/277-fixing-postpost-and-ozh-absolute-comments-plugins/</link>
		<comments>http://konstruktors.com/blog/wordpress/277-fixing-postpost-and-ozh-absolute-comments-plugins/#comments</comments>
		<pubDate>Sun, 22 Jun 2008 14:33:50 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=277</guid>
		<description><![CDATA[I use a modified version of the simple PostPost plugin created by Douglas Karr to display one sentence affiliate advertising in my RSS feed for entries that contain more than 700 letters. Today I installed the very useful Ozh&#8217; Absolute Comments plugin that makes the process of replying to comments a lot easier. However, when [...]]]></description>
			<content:encoded><![CDATA[<p>I use a modified version of the simple <em><a title="Read more about PostPost plugin" href="http://www.douglaskarr.com/projects/postpost/">PostPost</a></em> plugin created by <a title="Visit author homepage" href="http://www.douglaskarr.com/">Douglas Karr</a> to display one sentence affiliate advertising in my <a title="Konstruktors Notes RSS feed" href="http://feeds.feedburner.com/KonstruktorsNotes">RSS feed</a> for entries that contain more than 700 letters.</p>
<p>Today I installed the very useful <em><a title="Author of Absolute Comments plugin" href="http://planetozh.com/">Ozh&#8217;</a> <a title="Read more about Ozh' Absolute Comments plugin" href="http://planetozh.com/blog/my-projects/absolute-comments-manager-instant-reply/">Absolute Comments</a></em> plugin that makes the process of replying to comments a lot easier. However, when trying out the inline (and ajaxy) <em>comment reply</em> feature within the &#8216;Manage Comments&#8217; section of WordPress admin for the first time, I got the following error message:<span id="more-277"></span></p>
<blockquote class="code"><p><strong>Error (duplicate comment, or posting too quickly ?). Aborted</strong></p>
<p><code>Fatal error:  Call to undefined function:  add_options_page() in /.../wp-content/plugins/postpost/postpost.php on line 88</code></p></blockquote>
<div class="image wide"><a href="http://konstruktors.com/wp-content/uploads/2008/06/postpost-error-message.png"><img class="alignnone size-medium wp-image-283 withborder" title="PostPost plugin causing error in Absolute Comments" src="/wp-content/uploads/2008/06/postpost-error-message-480x208.png" alt="PostPost plugin causing error in Absolute Comments" width="480" height="208" /></a></div>
<p>Line 88 of <code>postpost.php</code> contains the following:</p>
<blockquote class="code"><p><code>add_action('admin_head', 'wppp_add_options_page');</code></p></blockquote>
<p>In all of my plugins I have used the <code>admin_menu</code> hook for adding plugin settings page, so <strong>the solution</strong> was simply to <strong>replace <code>admin_head</code> with <code>admin_menu</code></strong>, like this:</p>
<blockquote class="code"><p><code>add_action('admin_menu', 'wppp_add_options_page');</code></p></blockquote>
<p class="info"><a href="http://konstruktors.com/wp-content/uploads/2008/06/postpost-plugin-settings-feed-footer.png"><img class="withborder alignnone size-thumbnail wp-image-288" src="/wp-content/uploads/2008/06/postpost-plugin-settings-feed-footer-96x150.png" alt="PostPost plugin (version 1.3) which allows random feed footers for specific post length" width="96" height="150" /></a> <a href="http://konstruktors.com/wp-content/uploads/2008/06/postpost-feed-footer-advertising.png"><img class="withborder alignnone size-thumbnail wp-image-287" src="/wp-content/uploads/2008/06/postpost-feed-footer-advertising-142x150.png" alt="Advertising in post footer in RSS feed" width="142" height="150" /></a> <strong>Download <a href="http://konstruktors.com/wp-content/uploads/2008/06/postpost.zip">PostPost 1.3</a></strong> which allows you to specify three rotating feed footers for posts that exceed certain number of letters.</p>
<h3>Fixing the <em>Reply Prefill</em> backslash error in Ozh’ Absolute Comments (2.2)</h3>
<p class="info"><strong>Update</strong>: Ozh has updated the plugin (version 2.2.1) and it fixes the problem mentioned below. To get the latest version use the automatic plugin updater or download it from the <a title="Get the latest version of Ozh Absolute Comments" href="http://wordpress.org/extend/plugins/ozh-absolute-comments/">WordPress Extend</a>.</p>
<p>Reply Prefill is a really handy feature that automates the process of referring to the author of a comment you are replying to.</p>
<p>The default reply prefill looks like this: <code>@%%name%%:... ,</code> but I wanted to include also a link to the original comment: <code>&lt;a href="%%link%%"&gt;%%name%%&lt;/a&gt;, ...</code></p>
<p>However, after saving the settings, the new prefill contained added backslashes before the quotes: <code>&lt;a href=\"%%link%%\"&gt;%%name%%&lt;/a&gt;, ...</code>. It was immediately clear that backslashes are added when the user input is sanitized before saving it <em>to</em> the database, and not removed when retrieved <em>from</em> the database.</p>
<div class="image wide"><a href="http://konstruktors.com/wp-content/uploads/2008/06/absolute-comments-prefill-error.png"><img class="withborder alignnone size-medium wp-image-284" title="Absolute Comments Prefill error -- added backslashes" src="/wp-content/uploads/2008/06/absolute-comments-prefill-error-480x136.png" alt="Absolute Comments Prefill error -- added backslashes" width="480" height="136" /></a></div>
<p>The <strong>solution</strong> is to strip slashes <em>before</em> the output is presented to a user &#8212; open the <code>_admin.php</code> file located in <code>/ozh-absolute-comments/includes/</code> folder, and replace</p>
<blockquote class="code"><p><code>$prefill = $wp_ozh_cqr['prefill_reply'];</code> (line 40)</p></blockquote>
<p>with</p>
<blockquote class="code"><p><code>$prefill = <strong>stripslashes</strong>($wp_ozh_cqr['prefill_reply']);</code></p></blockquote>
<p>and that&#8217;s it &#8212; comment prefills look exactely like they should.</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/wordpress/1162-quick-reply-templates-plugin-and-wordpress-2-8/' rel='bookmark' title='Quick Reply Templates Plugin and WordPress&nbsp;2.8'>Quick Reply Templates Plugin and WordPress&nbsp;2.8</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/831-wordpress-plugins-which-i-use/' rel='bookmark' title='WordPress Plugins which&nbsp;I&nbsp;Use'>WordPress Plugins which&nbsp;I&nbsp;Use</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/1241-openid-plugin-and-wordpress-2-8/' rel='bookmark' title='OpenID Plugin and WordPress&nbsp;2.8'>OpenID Plugin and WordPress&nbsp;2.8</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/wordpress/277-fixing-postpost-and-ozh-absolute-comments-plugins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Solving the Authentication and Plugin Errors After an Upgrade to WordPress&#160;2.5</title>
		<link>http://konstruktors.com/blog/wordpress/169-solving-authentication-and-plugin-errors-after-upgrade-to-wordpress-2-5/</link>
		<comments>http://konstruktors.com/blog/wordpress/169-solving-authentication-and-plugin-errors-after-upgrade-to-wordpress-2-5/#comments</comments>
		<pubDate>Mon, 31 Mar 2008 04:32:16 +0000</pubDate>
		<dc:creator>Kaspars</dc:creator>
				<category><![CDATA[Meta]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://konstruktors.com/blog/?p=169</guid>
		<description><![CDATA[The upgrade process to WordPress 2.5 was as smooth as it can possibly be &#8212; simple, fast and without a single error message. However, there were a few problems that became apparent only after the upgrade. This article will explain those issues in detail and show how to solve them. Here is a short list [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://konstruktors.com/wp-content/uploads/2008/03/konstruktors-wordpress-25-dashboard.png"><img class="size-thumbnail wp-image-170 withborder alignright" title="Konstruktors Notes dashboard running WordPress 2.5" src="/wp-content/uploads/2008/03/konstruktors-wordpress-25-dashboard-150x150.png" alt="" width="150" height="150" /></a> The upgrade process to <a title="Download WordPress 2.5" href="http://wordpress.org">WordPress 2.5</a> was as smooth as it can possibly be &#8212; simple, fast and without a single error message. However, there were a few problems that became apparent only <em>after</em> the upgrade. This article will explain those issues in detail and show how to solve them. Here is a short list of problems solved:</p>
<ol class="spaced">
<li>When trying to log-in after the upgrade, the following error message is displayed: &#8220;You do not have sufficient permissions to access this page.&#8221;</li>
<li><em>Yet Another Related Posts</em> plugin returns &#8220;Fatal error: Call to undefined function merge_filters() in … includes.php on line 73”.</li>
<li><em>Popularity Contest</em> plugin returns &#8220;Plugin could not be activated because it triggered a fatal error” when reactivated.</li>
</ol>
<p><span id="more-169"></span></p>
<p>Here are the problems in detail with the suggested solutions:</p>
<h3>Problem: &#8220;You do not have sufficient permissions to access this page&#8221; error</h3>
<p><strong>Description</strong>: You follow the upgrade instructions supplied by the WordPress 2.5 which state:</p>
<ol>
<li>Delete your old WP files, saving ones you&#8217;ve modified.</li>
<li>Upload the new files.</li>
<li>Point your browser to <code>/wp-admin/upgrade.php</code></li>
<li>You wanted more, perhaps? That&#8217;s it!</li>
</ol>
<p>After creating a backup of <em>all</em> the files, I deleted them from the server (including the <code>wp-config.php</code> one) and uploaded the new ones, and pointed browser to <code>/wp-admin/upgrade.php</code> to discover that it asks me to create a new <code>wp-config.php</code> file.</p>
<div class="image wide"><a href="http://konstruktors.com/wp-content/uploads/2008/03/wordpress-25-upgrade-config-not-found.png"><img class="alignnone size-medium wp-image-172" title="During WordPress 2.5 upgrade: wp-config.php not found" src="/wp-content/uploads/2008/03/wordpress-25-upgrade-config-not-found-480x360.png" alt="" width="480" height="360" /></a></div>
<p>For some reason I decided that instead of creating a new file, it would be easier to upload the previous <code>wp-config.php</code> which I thought contains all the information necessary also for the WordPress 2.5. That seemed to help as I was able to continue the upgrade and all the update scripts run successfully.</p>
<p>However, after supplying the credentials for the log-in, I was greeted with the following error message:</p>
<div class="image wide"><a href="http://konstruktors.com/wp-content/uploads/2008/03/wordpress-25-you-do-not-have-sufficient-permissions-to-access-this-page.png"><img class="alignnone size-medium wp-image-178" title="WordPress 2.5 error: you do not have sufficient permissions to access this page" src="/wp-content/uploads/2008/03/wordpress-25-you-do-not-have-sufficient-permissions-to-access-this-page-480x158.png" alt="" width="480" height="158" /></a></div>
<p>After a few Google searches, it was clear that it had something to do with the user permissions and the way they were handled in this new version of WordPress. I also remembered reading about the <a href="http://codex.wordpress.org/Editing_wp-config.php">SECRET_KEY</a> which has been introduced in WordPress 2.5. It all lead to the idea of actually modifying and using the version of <code>wp-config.php</code> supplied with this new version of WordPress.</p>
<div class="info"><strong>Solution</strong>: Do <em>not</em> upload the <code>wp-config.php</code> from your previous (2.3 or earlier) installation of WordPress, but rather edit <code>wp-config-example.php</code> supplied with the WordPress 2.5, save it as <code>wp-config.php</code> and upload to the root directory of your blog. More detailed instructions  are available in <a title="Read more about how to edit wp-config.php configuration file" href="http://codex.wordpress.org/Editing_wp-config.php">this section of WordPress Codex</a>.</p>
<p>Equally you could simply follow the &#8216;Create a Configuration File&#8217; link and supply all the information there.</p>
</div>
<h3>Problem: <em>Yet Another Related Posts</em> plugin returns &#8220;Fatal error: Call to undefined function merge_filters() in &#8230; includes.php on line 73&#8243;</h3>
<p><a title="Visit plugin's release page" href="http://mitcho.com/code/yarpp/">Yet Another Related Posts</a> is a very useful and smart plugin created by <a title="Author of Yet Another Related Posts plugin" href="http://mitcho.com/">Michael Erlewine</a>.</p>
<p>Due to the fact that this plugin uses a &#8220;dirty, dirty hack&#8221; to:</p>
<blockquote><p>avoid a loop in <code>apply_filters('the_content')</code> &gt; <code>yarpp_default()</code> &gt; <code>yarpp_related()</code> &gt; <code>current_post_keywords()</code> &gt; <code>apply_filters('the_content')</code>. The code is straight up stolen from <code>wp-includes/plugin.php</code> and, with the exception of the single hack line below, should match what happens in <code>plugin.php</code></p></blockquote>
<p>In WordPress 2.5 the <code>apply_filters()</code> function found in <code>plugin.php</code> has changed a lot, therefore the altered version of this function in <em>Yet Another Related Posts</em> plugin should resemble these changes as well.</p>
<div class="info"><strong>Solution</strong>: Download <a title="Yet Another Related Posts plugin, version 1.5.2 which is compatible with WordPress 2.5" href="http://konstruktors.com/wp-content/uploads/2008/03/yet-another-related-posts-plugin-152.zip"><em>Yet Another Related Posts</em> (version 1.5.2)</a> where I have modified the necessary portion of code to reflect the changes in WordPress core.</p>
<p>Note: This 1.5.2 version of <em>Yet Another Related Posts</em> plugin will not work with versions of WordPress prior to 2.5.</p>
</div>
<p>Although this plugin doesn&#8217;t offer widget support by default, I use it together with my <em><a href="http://konstruktors.com/blog/wordpress/101-wordpress-plugin-custom-function-widgets/">Custom Function Widgets</a></em> plugin and it works like a charm. And I am proud to say that <em>Custom Function Widgets</em> plugin didn&#8217;t require any changes at all &#8212; it just works.</p>
<h3>Problem: <em>Popularity Contest</em> plugin returns &#8220;Plugin could not be activated because it triggered a fatal error”</h3>
<p><strong>Description</strong>: This problem occurs only during a fresh installation/activation of the plugin or when it is reactivated after an update.</p>
<div class="info"><strong>Solution</strong>: Open <code>popularity-contest.php</code>, go to line 59 and replace <code>require('../../wp-blog-header.php');</code> with <code>require('../wp-blog-header.php');</code>.</p>
<p>Solution was originally described in <a title="Alex king fatal error Popularity Contest" href="http://wordpress.org/support/topic/163895">this section of WordPress Support forum</a>.</p>
</div>
<h3>On a Sidenote</h3>
<p>It may seem that these errors could be a significant obstacle for the not-so-savvy WordPress users to successfully upgrade their blogs. In reality, however, it should be emphasized that the rest (and the majority) of plugins <strong>didn&#8217;t have any problems at all</strong>. And it is very likely that most of the solutions are just <a title="Search the official WordPress support forum" href="http://wordpress.org/support/">one</a> or <a href="http://www.google.com">two</a> searches away (or <em>close</em>). There is even an official <a href="http://codex.wordpress.org/Plugins/Plugin_Compatibility/2.5">Plugin Compatibility list on WordPress Codex</a>.</p>
<h3>How about you?</h3>
<p>Did you upgrade? If so, how did it go? If not, what are the reasons for not doing it yet?</p>
<h4>Related posts</h4><ol>
<li><a href='http://konstruktors.com/blog/wordpress/1241-openid-plugin-and-wordpress-2-8/' rel='bookmark' title='OpenID Plugin and WordPress&nbsp;2.8'>OpenID Plugin and WordPress&nbsp;2.8</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/984-wordpress-28-bleeding-edge-and-wordpress_module_weak_escape/' rel='bookmark' title='WordPress 2.8 bleeding-edge and&nbsp;WordPress_Module::_weak_escape()'>WordPress 2.8 bleeding-edge and&nbsp;WordPress_Module::_weak_escape()</a></li>
<li><a href='http://konstruktors.com/blog/wordpress/1261-widget-context-update-for-wordpress-2-8/' rel='bookmark' title='Widget Context Update for WordPress&nbsp;2.8'>Widget Context Update for WordPress&nbsp;2.8</a></li>
</ol>]]></content:encoded>
			<wfw:commentRss>http://konstruktors.com/blog/wordpress/169-solving-authentication-and-plugin-errors-after-upgrade-to-wordpress-2-5/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>
