<?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"
	>

<channel>
	<title>All Things Seen and Unseen</title>
	<atom:link href="http://rmarsh.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://rmarsh.com</link>
	<description>Spirituality and Theology</description>
	<pubDate>Mon, 12 May 2008 22:02:42 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Monday Week 6 Year II</title>
		<link>http://rmarsh.com/2008/05/12/monday-week-6-year-ii/</link>
		<comments>http://rmarsh.com/2008/05/12/monday-week-6-year-ii/#comments</comments>
		<pubDate>Mon, 12 May 2008 22:02:42 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
		
		<category><![CDATA[Homilies]]></category>

		<category><![CDATA[Loyola Hall]]></category>

		<guid isPermaLink="false">http://rmarsh.com/?p=590</guid>
		<description><![CDATA[Edel McClean offers these reflections:
Readings: James 1:1-11, Psalm 118, Mark 8:11-13
The liturgical title for today is Monday of the Sixth Week of Ordinary Time.  Ordinary Time.  A quick look at ordinary in the dictionary tells us &#8216;unexceptional, plain, uninteresting&#8217;.  It seems a little like what the Pharisees are accusing Jesus of in [...]]]></description>
			<content:encoded><![CDATA[<p><em>Edel McClean offers these reflections:</em></p>
<p>Readings: <a href="http://bible.oremus.org/?passage=James+1%3A1-11&amp;vnum=yes&amp;version=nrsv" title="New Revised Standard Version">James 1:1-11</a>, <a href="http://bible.oremus.org/?passage=Psalm+118&amp;vnum=yes&amp;version=nrsv" title="New Revised Standard Version">Psalm 118</a>, <a href="http://bible.oremus.org/?passage=Mark+8%3A11-13&amp;vnum=yes&amp;version=nrsv" title="New Revised Standard Version">Mark 8:11-13</a></p>
<p>The liturgical title for today is Monday of the Sixth Week of Ordinary Time.  Ordinary Time.  A quick look at ordinary in the dictionary tells us &#8216;unexceptional, plain, uninteresting&#8217;.  It seems a little like what the Pharisees are accusing Jesus of in our gospel today.  They seem to think he&#8217;s a little too ordinary and they come demanding a sign.  Prove to us that you&#8217;re exceptional.  Give us something remarkable.  Do something out of the ordinary.  And then we&#8217;ll believe you.</p>
<p>Of course, what the Pharisees were getting was anything but ordinary.  They were getting a sign.  They had Jesus.  Standing slap bang in front of them.  Not just any old preacher, but, if we follow Mark&#8217;s gospel, a man who had just healed a young child, made a deaf man hear, and fed four thousand people.  And still the Pharisees say, we want more.  They&#8217;re unable to see the sign right there in front of them.</p>
<p><span id="more-590"></span></p>
<p>The question is, I suppose, what are the signs right there in front of us?  We listened to Gerard Manley Hopkins&#8217; poem yesterday, of kingfishers and dragonflies.  And we can look at moments of beauty and something in us knows they&#8217;re a sign.  We catch the softness in an older person&#8217;s eye as they tell of someone they once loved, and something in us knows it&#8217;s a sign.  We see a young couple stand in front of a church full of people and, with their hearts pounding, promise themselves to each other for ever. Something in us knows this is a sign.  We see a child dancing barefoot, graceful and unselfconscious and we know, it&#8217;s a sign.  We see a cherry tree, bursting into flower, singing and dancing its colour to the world and, if we take the time to notice, it makes our hearts sing and dance too.  And we know that this too, is a sign of something beyond what we can grasp.</p>
<p>Older people, young couples, children, cherry trees.  They all belong to ordinary time.  But they&#8217;re extraordinary too.  Because Jesus, it seems, has no desire to be confined to &#8217;special&#8217; times, but comes to meet us, to grace our lives, right in the middle of the ordinary.</p>
<p>And perhaps we recognise too, those moments in ourselves. The glory of God is a person fully alive, which is another way of saying, the glory of God is a person being who God&#8217;s called them to be, which is another way of saying the glory of God is a person being fully themselves.  The moment when our hearts sing.  The moment when we are so fully ourselves that God shines through us.  The moments when, like the old person, or the young couple, like the child or the cherry tree, we are so fully what we&#8217;re meant to be, that others look at us and see in us a sign, and know God is right there with them.  What the world needs most, perhaps, is our having the courage to be ourselves - to bring our true, unique, God-given selves out from the shadows and allow them to shine.  To let our very lives, which belong in this, ordinary time, to be signs of God&#8217;s grace, touching the ordinary, and setting it dancing.</p>
Similar Posts:<ul><li><a href="http://rmarsh.com/2001/10/28/sunday-week-30-year-c/" rel="bookmark" title="October 28, 2001">Sunday Week 30 Year C</a></li>

<li><a href="http://rmarsh.com/1998/03/29/sunday-week-4-of-lent-year-ca/" rel="bookmark" title="March 29, 1998">Sunday Week 4 of Lent Year C(A)</a></li>

<li><a href="http://rmarsh.com/2004/08/02/monday-week-18-year-ii-bl-pierre-favre-sj/" rel="bookmark" title="August 2, 2004">Monday Week 18 Year II (Bl. Pierre Favre SJ)</a></li>
</ul><!-- Similar Posts took 0.068 ms (cached) -->]]></content:encoded>
			<wfw:commentRss>http://rmarsh.com/2008/05/12/monday-week-6-year-ii/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Similar Posts and Pentecost</title>
		<link>http://rmarsh.com/2008/05/11/similar-posts-and-pentecost/</link>
		<comments>http://rmarsh.com/2008/05/11/similar-posts-and-pentecost/#comments</comments>
		<pubDate>Sun, 11 May 2008 17:27:59 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<category><![CDATA[WP Plugins]]></category>

		<guid isPermaLink="false">http://rmarsh.com/?p=589</guid>
		<description><![CDATA[Similar Posts v.2.5b28 has just been posted.
Working on Similar Posts I have learned more than I care to know about the vagaries of MySQL, PHP, and Unicode. One particular issue that has so far resisted my attempts has been the satisfactory handling of content in Chinese, Korean, or Japanese (CJK). 
Similar Posts uses the full-text [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://rmarsh.com/plugins/similar-posts/">Similar Posts v.2.5b28</a> has just been posted.</p>
<p>Working on Similar Posts I have learned more than I care to know about the vagaries of MySQL, PHP, and Unicode. One particular issue that has so far resisted my attempts has been the satisfactory handling of content in Chinese, Korean, or Japanese (CJK). </p>
<p>Similar Posts uses the full-text indexes provided by MySQL to compare one post with another and the MySQL index is word-based. The CJK languages (I am told) are not based on discrete words &#8212; at least not words delimited by &#8216;white space&#8217; &#8212; so they pose a big problem to full-text indexing. </p>
<p><span id="more-589"></span></p>
<p>My workaround (hack?/fiddle?/trick?) is to separate the CJK text into individual characters (while leaving single-byte encoded text alone) and use them as the basis for similarity matching. It is clearly not an ideal solution but I would love to hear from the users of WordPress blogs in Chinese, Korean, or Japanese if it is better than no solution at all. </p>
<p>The experiment has a couple of limitations: although not the ideal encoding for CJK languages, this method only works for now on blogs using UTF-8 encoding; also, to get around MySQL&#8217;s habit of ignoring words shorter than 4 characters long, each CJK &#8216;word&#8217; is padded to that length, making for a rather large index.</p>
<p>To try this approach, use the Settings | Similar Posts | Manage the Index screen, set the option, and re-index. This setting overrides the other settings on that screen.</p>
<p><em>The reference to Pentecost in this post&#8217;s title is because today&#8217;s Feast celebrates the <a href="http://rmarsh.com/1998/05/31/pentecost-sunday/">undoing of Babel</a>.</em></p>
Similar Posts:<ul><li><a href="http://rmarsh.com/2008/05/11/similar-posts-and-pentecost/" rel="bookmark" title="May 11, 2008">Similar Posts and Pentecost</a></li>

<li><a href="http://rmarsh.com/2008/03/17/wordpress-post-plugins-25/" rel="bookmark" title="March 17, 2008">WordPress Plugins Updated: Similar Posts, Recent Posts, Random Posts, and Recent Comments</a></li>

<li><a href="http://rmarsh.com/2006/10/16/similar-posts-version-103/" rel="bookmark" title="October 16, 2006">Similar Posts: Version 1.03</a></li>
</ul><!-- Similar Posts took 0.078 ms (cached) -->]]></content:encoded>
			<wfw:commentRss>http://rmarsh.com/2008/05/11/similar-posts-and-pentecost/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Some Big(-gish) Changes to the Post Plugins</title>
		<link>http://rmarsh.com/2008/05/07/some-big-gish-changes-to-the-post-plugins/</link>
		<comments>http://rmarsh.com/2008/05/07/some-big-gish-changes-to-the-post-plugins/#comments</comments>
		<pubDate>Wed, 07 May 2008 15:40:38 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<category><![CDATA[WP Plugins]]></category>

		<guid isPermaLink="false">http://rmarsh.com/?p=588</guid>
		<description><![CDATA[Since bug reports for the post plugins have dwindled to a slow drip I thought I ought to make some substantial changes in the latest version (2.5b25) and get the flow going again&#8230;
In previous versions the {image} tag did its resizing just by changing the &#60;img&#62; tag&#8217;s width and height attributes. Now, in addition, it [...]]]></description>
			<content:encoded><![CDATA[<p>Since bug reports for the post plugins have dwindled to a slow drip I thought I ought to make some substantial changes in the latest version (<a href="http://rmarsh.com/plugins/">2.5b25</a>) and get the flow going again&#8230;</p>
<p>In previous versions the {image} tag did its resizing just by changing the <code>&lt;img&gt;</code> tag&#8217;s width and height attributes. Now, in addition, it serves properly resized thumbnails.</p>
<p><span id="more-588"></span></p>
<p>For a long time Recent Comments has allowed you to sort its output by post or by commenter and include group headings in the output list. This capacity has been generalised and extend to all the post plugins. The plugin output can now be sorted according to any output tag. For example, you might want to sort similar posts by date rather than score &#8212; to do so you sort by {date:raw}. </p>
<p>Recent Comments retains the &#8216;group_by&#8217; option (which simply overrides any other sort options) but other sort schemes can be used.</p>
<p>Both the changes above probably need some cleaning up so please mess about with them and find any bugs.</p>
<p>Finally, I have replaced the &#8216;trim_before&#8217; option with the &#8216;divider&#8217; option. This will break some existing output templates I am sure but they should be even easier to fix.</p>
Similar Posts:<ul><li><a href="http://rmarsh.com/2008/05/07/some-big-gish-changes-to-the-post-plugins/" rel="bookmark" title="May 7, 2008">Some Big(-gish) Changes to the Post Plugins</a></li>

<li><a href="http://rmarsh.com/2008/03/17/wordpress-post-plugins-25/" rel="bookmark" title="March 17, 2008">WordPress Plugins Updated: Similar Posts, Recent Posts, Random Posts, and Recent Comments</a></li>

<li><a href="http://rmarsh.com/2007/01/19/similar-posts-for-your-content-feeds/" rel="bookmark" title="January 19, 2007">Similar Posts for your Content Feeds</a></li>
</ul><!-- Similar Posts took 0.108 ms (cached) -->]]></content:encoded>
			<wfw:commentRss>http://rmarsh.com/2008/05/07/some-big-gish-changes-to-the-post-plugins/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Oops&#8230; Ever-So-Slightly Fifty&#8230;</title>
		<link>http://rmarsh.com/2008/04/30/oops-ever-so-slightly-fifty/</link>
		<comments>http://rmarsh.com/2008/04/30/oops-ever-so-slightly-fifty/#comments</comments>
		<pubDate>Wed, 30 Apr 2008 13:53:50 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
		
		<category><![CDATA[Thoughts]]></category>

		<guid isPermaLink="false">http://rmarsh.com/?p=587</guid>
		<description><![CDATA[It&#8217;s not as if you do anything to make it happen but all of a sudden here it is &#8212; 50!
So far the day is turning out a lot of fun&#8230;
Similar Posts:Oops&#8230; Ever-So-Slightly Fifty&#8230;

Saturday Week 4 of Easter

Conversion of St Paul
]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s not as if you do anything to make it happen but all of a sudden here it is &#8212; 50!</p>
<p>So far the day is turning out a lot of fun&#8230;</p>
Similar Posts:<ul><li><a href="http://rmarsh.com/2008/04/30/oops-ever-so-slightly-fifty/" rel="bookmark" title="April 30, 2008">Oops&#8230; Ever-So-Slightly Fifty&#8230;</a></li>

<li><a href="http://rmarsh.com/2003/05/17/saturday-week-4-of-easter/" rel="bookmark" title="May 17, 2003">Saturday Week 4 of Easter</a></li>

<li><a href="http://rmarsh.com/2006/01/26/conversion-of-st-paul/" rel="bookmark" title="January 26, 2006">Conversion of St Paul</a></li>
</ul><!-- Similar Posts took 0.061 ms (cached) -->]]></content:encoded>
			<wfw:commentRss>http://rmarsh.com/2008/04/30/oops-ever-so-slightly-fifty/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Feeling So Very Forty-Nine</title>
		<link>http://rmarsh.com/2008/04/29/feeling-so-very-forty-nine/</link>
		<comments>http://rmarsh.com/2008/04/29/feeling-so-very-forty-nine/#comments</comments>
		<pubDate>Tue, 29 Apr 2008 09:44:32 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
		
		<category><![CDATA[Thoughts]]></category>

		<guid isPermaLink="false">http://rmarsh.com/?p=586</guid>
		<description><![CDATA[Wooo hoooo!
Similar Posts:Feeling So Very Forty-Nine
]]></description>
			<content:encoded><![CDATA[<p>Wooo hoooo!</p>
Similar Posts:<ul><li><a href="http://rmarsh.com/2008/04/29/feeling-so-very-forty-nine/" rel="bookmark" title="April 29, 2008">Feeling So Very Forty-Nine</a></li>
</ul><!-- Similar Posts took 0.047 ms (cached) -->]]></content:encoded>
			<wfw:commentRss>http://rmarsh.com/2008/04/29/feeling-so-very-forty-nine/feed/</wfw:commentRss>
		</item>
		<item>
		<title>New Beta for Similar Posts Plugin</title>
		<link>http://rmarsh.com/2008/04/19/new-beta-for-similar-posts-plugin/</link>
		<comments>http://rmarsh.com/2008/04/19/new-beta-for-similar-posts-plugin/#comments</comments>
		<pubDate>Sat, 19 Apr 2008 10:14:04 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<category><![CDATA[WP Plugins]]></category>

		<guid isPermaLink="false">http://rmarsh.com/?p=585</guid>
		<description><![CDATA[The latest beta (2.5b22) attempts to address some of the issues users have been running into when upgrading. It fixes various conflicts with various configurations and tries to be give the upgrader as little work as possible. I will be very interested to hear whether the attempt has worked! If you run into problems (new [...]]]></description>
			<content:encoded><![CDATA[<p>The latest beta (<a href="http://rmarsh.com/plugins/similar-posts/">2.5b22</a>) attempts to address some of the issues users have been running into when upgrading. It fixes various conflicts with various configurations and tries to be give the upgrader as little work as possible. I will be very interested to hear whether the attempt has worked! If you run into problems (new or ones or old) please use the bug report screen under settings | similar posts to let me know.</p>
<p>One issue that I have addressed concerned indexing the blog. In an attempt to simplify matters I have made the initial indexing on first activation automatic and I have brought the index management under the settings subpages as some users found the separate Manage page complicated things.</p>
<p><span id="more-585"></span></p>
<p>I have had the occasional report of Similar Posts not working when the WP-Cache plugin is installed. I&#8217;d like to hear more, either way, if you try to run both. I can confirm that Similar Posts is working fine alongside WP-SuperCache on my development site.</p>
<p>Anyway&#8230; as the fireworks say &#8216;light the blue touchpaper and retire&#8217;!</p>
Similar Posts:<ul><li><a href="http://rmarsh.com/2008/04/19/new-beta-for-similar-posts-plugin/" rel="bookmark" title="April 19, 2008">New Beta for Similar Posts Plugin</a></li>

<li><a href="http://rmarsh.com/2008/05/11/similar-posts-and-pentecost/" rel="bookmark" title="May 11, 2008">Similar Posts and Pentecost</a></li>

<li><a href="http://rmarsh.com/2008/04/08/post-plugins-almost-out-of-beta/" rel="bookmark" title="April 8, 2008">Post Plugins Almost out of Beta</a></li>
</ul><!-- Similar Posts took 0.056 ms (cached) -->]]></content:encoded>
			<wfw:commentRss>http://rmarsh.com/2008/04/19/new-beta-for-similar-posts-plugin/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Post Plugins Almost out of Beta</title>
		<link>http://rmarsh.com/2008/04/08/post-plugins-almost-out-of-beta/</link>
		<comments>http://rmarsh.com/2008/04/08/post-plugins-almost-out-of-beta/#comments</comments>
		<pubDate>Tue, 08 Apr 2008 10:32:03 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
		
		<category><![CDATA[Thoughts]]></category>

		<guid isPermaLink="false">http://rmarsh.com/?p=582</guid>
		<description><![CDATA[I&#8217;ve just published version 2.5b15 of the post plugins: Similar Posts, Recent Posts, Random Posts, and Recent Comments. Thank you to all who have found bugs and especially for those who have tested and re-tested when I couldn&#8217;t reproduce the bug myself.
There have been particular problems with the installation of Similar Posts on some systems [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just published version 2.5b15 of the post plugins: <a href="http://rmarsh.com/plugins/similar-posts/">Similar Posts</a>, <a href="http://rmarsh.com/plugins/recent-posts/">Recent Posts</a>, <a href="http://rmarsh.com/plugins/random-posts/">Random Posts</a>, and <a href="http://rmarsh.com/plugins/recent-comments/">Recent Comments</a>. Thank you to all who have found bugs and especially for those who have tested and re-tested when I couldn&#8217;t reproduce the bug myself.</p>
<p>There have been particular problems with the installation of Similar Posts on some systems and with the behaviour of Random Posts as a widget (seems to be a language issue). If anyone has difficulties with these or any other bugs please contact me. The best way is <em>via</em> the Bug Report screen in the plugins&#8217; options/settings pages but a comment or email will do if you remember to give me enough information about your setup to help me debug.</p>
Similar Posts:<ul><li><a href="http://rmarsh.com/2008/04/08/post-plugins-almost-out-of-beta/" rel="bookmark" title="April 8, 2008">Post Plugins Almost out of Beta</a></li>

<li><a href="http://rmarsh.com/2008/03/24/still-fighting-the-official-plugins-directory/" rel="bookmark" title="March 24, 2008">Still Fighting the Official Plugins Directory&#8230;</a></li>

<li><a href="http://rmarsh.com/2006/12/06/post-plugins-updated-2/" rel="bookmark" title="December 6, 2006">Post Plugins Updated</a></li>
</ul><!-- Similar Posts took 0.078 ms (cached) -->]]></content:encoded>
			<wfw:commentRss>http://rmarsh.com/2008/04/08/post-plugins-almost-out-of-beta/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How to Give Your Plugin Settings a Submenu</title>
		<link>http://rmarsh.com/2008/03/27/plugin-settings-submenus/</link>
		<comments>http://rmarsh.com/2008/03/27/plugin-settings-submenus/#comments</comments>
		<pubDate>Thu, 27 Mar 2008 11:46:10 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<category><![CDATA[WP Plugins]]></category>

		<guid isPermaLink="false">http://rmarsh.com/?p=579</guid>
		<description><![CDATA[While rebuilding the posts plugins for WordPress 2.5 I became frustrated by the excessive length of their settings pages and more than a little envious of other plugins which managed to split their settings into subpages accessible from a submenu. 
I pored through more opaque code than is comfortable and eventually decided I should try [...]]]></description>
			<content:encoded><![CDATA[<p>While rebuilding the <a href="http://rmarsh.com/2008/03/17/wordpress-post-plugins-25/">posts plugins</a> for WordPress 2.5 I became frustrated by the excessive length of their settings pages and more than a little envious of other plugins which managed to split their settings into subpages accessible from a submenu. </p>
<p>I pored through more opaque code than is comfortable and eventually decided I should try and build an easy, reusable solution. Here&#8217;s the end result (<a href="http://rmarsh.com/files/plugin-subpages.zip">download code</a>):<span id="more-579"></span></p>
<pre><code>
class PluginSubpages {
  var $pages = array();
  var $parent_page = '';
  var $current_page = array();

  function PluginSubpages() {
    $this-&gt;__construct();
  }	

  function __construct() {
    $this-&gt;parent_page = $_SERVER['QUERY_STRING'];
    $p1 = strpos($this-&gt;parent_page, 'page=');
    $p2 = strpos($this-&gt;parent_page, '&amp;');
    if ($p2 === false) {
      $this-&gt;parent_page = substr($this-&gt;parent_page, $p1+5);
    } else {
      $this-&gt;parent_page = substr($this-&gt;parent_page, $p1+5, $p2-$p1-5);
    }
  }
	
  function add_subpage( $title, $slug, $view ) {
    $this-&gt;pages[] = array('title' =&gt; $title, 'slug' =&gt; $smVrwfWrrGfWrТРТgV7FvUg&amp;6^ug( $slug ) {
    if (!isset($smVrТ&amp;WGW&amp;GF2vW5ӰТТf&amp;V6GF2vW22GvRТbGvUw6VruG6VrТ&amp;WGW&amp;GvSТТТFRvW7FVB6^ug');
  }
	
  function display() {
    echo "\n&lt;ul id=\"submenu\" style=\"display: block\"&gt;\n";
    $base = $_SERVER['PHP_SELF'] . '?page=' . $this-&gt;parent_page . '&amp;subpage=';
    $this-&gt;current_page = $this-&gt;page_from_slug($_GET['subpage']);
    foreach($this-&gt;pages as $page) {	
      if($page === $this-&gt;current_page) {
        echo "&lt;li&gt;&lt;a href=\"$base{$page['smVru"673&amp;7W'&amp;VE#GvUwFFRuƓ#ТV6RТV6#Ɠ&amp;Vc"F&amp;6WGvUw6Vru#GvUwFFRuƓ#ТТТV6#V#ТGF27W'&amp;VEvUwfWru҂ТРЧР</code></pre>
<p>There&#8217;s one nasty trick in there which I&#8217;ll come to but first &#8230; how to use it.</p>
<p>You&#8217;ll already have the code to register your admin settings page:</p>
<pre><code>
function plugin_option_menu() {
  add_options_page('Plugin Options', 'Plugin', 8,'plugin-file', 'plugin_options_page');
}

add_action('admin_menu', 'plugin_option_menu', 1);

function plugin_options_page(){
...
}
</code></pre>
<p>Instead of filling &#8216;plugin_options_page&#8217; with all your settings code you use PluginSubpages to delegate the hard work.</p>
<pre><code>
function plugin_options_page(){
  echo '&lt;div class="wrap"&gt;&lt;h2&gt;Plugin&lt;/h2&gt;&lt;/div&gt;';
  $m = new PluginSubpages();
  // register the subpages
  $m-&gt;add_subpage('General', 'general', 'plugin_general_options_subpage');
  ...
  $m-&gt;add_subpage('Other', 'other', 'plugin_other_options_subpage');
  // show them!
  $m-&gt;display();
}
</code></pre>
<p>Each of the subpage functions behaves independently, e.g.,</p>
<pre><code>
function plugin_general_options_subpage(){
  $options = get_option('plugin-general');
  if (isset($_POST['update_options'])) {
    ...
  } 
  ?&gt;
    &lt;div class="wrap"&gt;
    &lt;h2&gt;General Settings&lt;/h2&gt;
    &lt;form method="post" action=""&gt;
    ...
    &lt;div class="submit"&gt;
      &lt;input type="submit" name="update_options" value="Save General Settings" /&gt;
    &lt;/div&gt;
    &lt;/form&gt;  
    &lt;/div&gt;
  &lt;?php	
}
</code></pre>
<p>Now about that &#8216;nasty trick&#8217;&#8230; PluginSubpages->display() spits out the HTML for the menu as an unordered list. How should the menu list be styled? I could include specific inline CSS styles for the menu but I thought it would be better if the subpage menu looked like the preexisting admin menu. </p>
<p>This is the evil bit. I found that giving the subpage menu the <strong>id</strong> of &#8217;submenu&#8217;, the id of the admin menu I could steal all its styles and the subpage menu would fit into its surrounding seamlessly. The only catch is that CSS ids cannot be duplicated &#8212; each must be unique. In practice, though, every browser I tried coped without a squeak. Just don&#8217;t expect your admin pages to validate if you use this technique.</p>
Similar Posts:<ul><li><a href="http://rmarsh.com/2008/03/27/plugin-settings-submenus/" rel="bookmark" title="March 27, 2008">How to Give Your Plugin Settings a Submenu</a></li>

<li><a href="http://rmarsh.com/2006/09/23/moving-your-blog/" rel="bookmark" title="September 23, 2006">Moving Your Blog: A WordPress Plugin to Permanently Redirect Your Posts</a></li>

<li><a href="http://rmarsh.com/2006/10/26/recent-posts/" rel="bookmark" title="October 26, 2006">Recent Posts: WordPress Plugin</a></li>
</ul><!-- Similar Posts took 0.103 ms (cached) -->]]></content:encoded>
			<wfw:commentRss>http://rmarsh.com/2008/03/27/plugin-settings-submenus/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Novice Notes on the Official Wordpress Plugin Directory</title>
		<link>http://rmarsh.com/2008/03/25/novice-notes-on-the-official-wordpress-plugin-directory/</link>
		<comments>http://rmarsh.com/2008/03/25/novice-notes-on-the-official-wordpress-plugin-directory/#comments</comments>
		<pubDate>Tue, 25 Mar 2008 18:02:09 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<category><![CDATA[WP Plugins]]></category>

		<guid isPermaLink="false">http://rmarsh.com/?p=578</guid>
		<description><![CDATA[As I&#8217;ve said I&#8217;ve been wrestling with the plugin directory and, as I suspected, the trouble is down to my lack of smarts. Two things to be aware of if you are wanting to host your plugins at the official site:

When they say that you should name your tags/releases using only numbers and periods they [...]]]></description>
			<content:encoded><![CDATA[<p>As I&#8217;ve said I&#8217;ve been wrestling with the plugin directory and, as I suspected, the trouble is down to my lack of smarts. Two things to be aware of if you are wanting to host your plugins at the <a href="http://wordpress.org/extend/plugins/about/">official site</a>:</p>
<ul>
<li>When they say that you should name your tags/releases using only numbers and periods they mean it. I was using 2.5 bxx not thinking a space would cause an issue but of course it did when the automatic updater kept giving up on the zip files it downloaded. From now on, 2.5bxx until I can drop the beta designation.</li>
<li>That stray space thing managed to keep hidden for a few days because I couldn&#8217;t even get <em>that</em> far. I&#8217;ve been grumbling that my installation instructions were not showing correctly and trying, in vain, to get help&#8230; well, a little while ago as I was poring over the readme.txt for the umpteenth time I was struck by lightning (OK I&#8217;m exaggerating) and thought to check the encoding of the file. I don&#8217;t know how but the readme.txt files I&#8217;d uploaded were encoded as utf-8. The <a href="http://wordpress.org/extend/plugins/about/validator/">Readme Validator</a> hadn&#8217;t caught the problem but it was enough to make the directory ignore the files.</li>
</ul>
<p><span id="more-578"></span></p>
<p>So <strong>no spaces in release tags</strong> and just <strong>plain old ANSI in the readme</strong>.</p>
Similar Posts:<ul><li><a href="http://rmarsh.com/2008/03/25/novice-notes-on-the-official-wordpress-plugin-directory/" rel="bookmark" title="March 25, 2008">Novice Notes on the Official Wordpress Plugin Directory</a></li>

<li><a href="http://rmarsh.com/2008/03/23/wordpress-25-and-automatic-plugin-updates/" rel="bookmark" title="March 23, 2008">WordPress 2.5 and Automatic Plugin Updates</a></li>

<li><a href="http://rmarsh.com/2008/03/24/still-fighting-the-official-plugins-directory/" rel="bookmark" title="March 24, 2008">Still Fighting the Official Plugins Directory&#8230;</a></li>
</ul><!-- Similar Posts took 0.109 ms (cached) -->]]></content:encoded>
			<wfw:commentRss>http://rmarsh.com/2008/03/25/novice-notes-on-the-official-wordpress-plugin-directory/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Once</title>
		<link>http://rmarsh.com/2008/03/24/once/</link>
		<comments>http://rmarsh.com/2008/03/24/once/#comments</comments>
		<pubDate>Mon, 24 Mar 2008 21:28:56 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
		
		<category><![CDATA[Thoughts]]></category>

		<guid isPermaLink="false">http://rmarsh.com/?p=577</guid>
		<description><![CDATA[I saw the film &#8216;Once&#8216; tonight. Very moving. Here&#8217;s a clip with the Oscar-winning song.


Glen Hansard - Falling Slowly

I don&#8217;t know you
But I want you
All the more for that
Words fall through me
And always fool me
And I can&#8217;t react
And games that never amount
To more than they&#8217;re meant
Will play themselves out
Take this sinking boat and point it [...]]]></description>
			<content:encoded><![CDATA[<p>I saw the film &#8216;<a href="http://www.iconmovies.co.uk/once/">Once</a>&#8216; tonight. Very moving. Here&#8217;s a clip with the Oscar-winning song.</p>
<p><object type="application/x-shockwave-flash" style="width:425px; height:355px;" data="http://www.youtube.com/v/_LMv0BOKkWc"><param name="movie" value="http://www.youtube.com/v/_LMv0BOKkWc" /></object><br />
<!--nevermore--><br />
<strong>Glen Hansard - <em>Falling Slowly</em></strong></p>
<blockquote><p>
I don&#8217;t know you<br />
But I want you<br />
All the more for that<br />
Words fall through me<br />
And always fool me<br />
And I can&#8217;t react<br />
And games that never amount<br />
To more than they&#8217;re meant<br />
Will play themselves out</p>
<p>Take this sinking boat and point it home<br />
We&#8217;ve still got time<br />
Raise your hopeful voice you have a choice<br />
You&#8217;ve made it now</p>
<p>Falling slowly, eyes that know me<br />
And I can&#8217;t go back<br />
Moods that take me and erase me<br />
And I&#8217;m painted black<br />
You have suffered enough<br />
And warred with yourself<br />
It&#8217;s time that you won</p>
<p>Take this sinking boat and point it home<br />
We&#8217;ve still got time<br />
Raise your hopeful voice you had a choice<br />
You&#8217;ve made it now</p>
<p>Take this sinking boat and point it home<br />
We&#8217;ve still got time<br />
Raise your hopeful voice you had a choice<br />
You&#8217;ve made it now<br />
Falling slowly sing your melody<br />
I&#8217;ll sing along
</p></blockquote>
Similar Posts:<ul><li><a href="http://rmarsh.com/2008/03/24/once/" rel="bookmark" title="March 24, 2008">Once</a></li>

<li><a href="http://rmarsh.com/2003/07/19/saturday-week-15-year-i/" rel="bookmark" title="July 19, 2003">Saturday Week 15 Year I</a></li>

<li><a href="http://rmarsh.com/2005/08/02/tuesday-week-18-year-i-2/" rel="bookmark" title="August 2, 2005">Tuesday Week 18 Year I</a></li>
</ul><!-- Similar Posts took 0.092 ms (cached) -->]]></content:encoded>
			<wfw:commentRss>http://rmarsh.com/2008/03/24/once/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
