<?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>MaisonBisson.com &#187; pulse</title>
	<atom:link href="http://maisonbisson.com/blog/post/tag/pulse/feed/" rel="self" type="application/rss+xml" />
	<link>http://maisonbisson.com</link>
	<description>A bunch of stuff I would have emailed you about.</description>
	<lastBuildDate>Sat, 14 Nov 2009 20:14:03 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>bsuite Bug Fixes (release b2v7)</title>
		<link>http://maisonbisson.com/blog/bsuite/</link>
		<comments>http://maisonbisson.com/blog/bsuite/#comments</comments>
		<pubDate>Mon, 16 Apr 2007 13:14:17 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[blog pulse]]></category>
		<category><![CDATA[bstat]]></category>
		<category><![CDATA[bstats]]></category>
		<category><![CDATA[bsuggestive]]></category>
		<category><![CDATA[bsuite]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[bug fix]]></category>
		<category><![CDATA[bug fixes]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[fix]]></category>
		<category><![CDATA[fixes]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[pulse]]></category>
		<category><![CDATA[recommendation system]]></category>
		<category><![CDATA[recommendations]]></category>
		<category><![CDATA[recommender]]></category>
		<category><![CDATA[recommending]]></category>
		<category><![CDATA[referrer]]></category>
		<category><![CDATA[related content]]></category>
		<category><![CDATA[search engine highlighting]]></category>
		<category><![CDATA[search term]]></category>
		<category><![CDATA[search term highlighting]]></category>
		<category><![CDATA[sehl]]></category>
		<category><![CDATA[stable]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[stats tracking]]></category>
		<category><![CDATA[tag]]></category>
		<category><![CDATA[tag management]]></category>
		<category><![CDATA[tag relationships]]></category>
		<category><![CDATA[tags]]></category>
		<category><![CDATA[usage]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/post/11613/#bsuite-bug-fixes-release-b2v7</guid>
		<description><![CDATA[
Work on bsuite3 is progressing well, thanks to help from Zach and Matt, who are collaborating with me on completely rearchitecting how stats are collected and reported. This, however, is not bs3. It&#8217;s a transitional release intended to fix some bugs in b2 and make upgrading easier. This upgrade is recommended for all current bsuite [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-11613"><!-- &nbsp; --></abbr>
<div class="innerindex">
<h3>Contents:</h3>
<ol>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_bsuite-features_1">bsuite Features</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_fixedchangedadded_1">Fixed/Changed/Added</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_installation_1">Installation</a>
<ol>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_upgrading_1">Upgrading</a></li>
</ol>
</li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_commands_1">Commands</a>
<ol>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_clear-bsuite_speedca_1">Clear bsuite_speedcache</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_rebuild-bsuite-tag-i_1">Rebuild bsuite tag index</a></li>
</ol>
</li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_options_1">Options</a>
<ol>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_minimum-userlevel-to_1">Minimum userlevel to view bsuite reports</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_output-default-css_1">Output default CSS</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_default-pulse-graph-_1">Default pulse graph style</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_suggest-related-entr_1">Suggest related entries in post</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_tag-input-format_1">Tag input format</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_highlight-search-wor_1">Highlight search words and offer search help</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_filter-incoming-sear_1">Filter incoming search terms using comment moderation and blacklist words</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_ignore-hits-from-reg_1">Ignore hits from registered users at or above userlevel</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_ignore-hits-from-the_1">Ignore hits from these IP numbers</a></li>
</ol>
</li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_tag-support_1">Tag Support</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_using-bsuite-functio_1">Using bsuite Functions</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_known-bugs_1">Known Bugs</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11613_money-grubbing_1">Money Grubbing</a></li>
</ol>
</div>
<p>Work on bsuite3 is progressing well, thanks to help from <a href="http://nosheep.net/">Zach</a> and <a href="http://borkweb.com/">Matt</a>, who are collaborating with me on completely rearchitecting how stats are collected and reported. This, however, is not bs3. It&#8217;s a transitional release intended to fix some bugs in b2 and make upgrading easier. This upgrade is recommended for all current bsuite users and new users.</p>
<h1 id="11613_bsuite-features_1" >bsuite Features</h1>
<ul>
<li>Tracks page loads (hits)</li>
<li>Tracks search terms used by visitors ariving at your site via search engines</li>
<li>Reports top-performing stories via a function that can be included in the sidebar</li>
<li>Reports recent comments via a function that can be included in the sidebar</li>
<li>Reports top search terms via a function that can be included in the sidebar</li>
<li>Outputs a pulse graph of activity on your site or specific stories</li>
<li>Lists related posts at the bottom of the current post’s content</li>
<li>Suggests posts that closely match the search criteria for visitors who arrive via search engines</li>
<li>Integrates <a href="http://maisonbisson.com/blog/post/10861/">bsuite_speedcache</a></li>
<li>Does some <a href="http://maisonbisson.com/blog/post/10922/">stuff with tags</a></li>
</ul>
<h1 id="11613_fixedchangedadded_1" >Fixed/Changed/Added</h1>
<ul>
<li>As mentioned above, a huge-but-invisible feature here is that this version includes some pieces that will make it easy to transition to the new plugin.</li>
<li>MySQL errors while creating the tables should now be fixed. It&#8217;s my shame that these have persisted so long.</li>
<li>The plugin now &#8220;rebuilds the tags table&#8221; as soon as you activate it. This is a good thing, but if you&#8217;ve got a huge number of posts (or a really short max execution time) it might cause a problem (please leave a comment if it does).</li>
<li>The related posts feature now works even if you aren&#8217;t tagging your posts. If there are no tags, the post&#8217;s title is used as a search string.</li>
<li>This list is probably incomplete and in some other way inaccurate. It’s not intentional, I’m just sloppy. Please leave comments with bug reports or corrections, I’ll do what I can to fix them.</li>
<li>Finally, I’m now hosting the download on a new server, so it won’t be subject to .Mac’s bandwidth consumption limits.</li>
</ul>
<p><span id="more-11613"></span></p>
<h1 id="11613_installation_1" >Installation</h1>
<ul>
<li>Download and unzip <a href="http://oz.plymouth.edu/~cbisson/projects/bsuite.zip">bsuite.zip</a></li>
<li>Place bsuite.php in you wp-content/plugins directory</li>
<li>Place spacer.gif in your wp-content directory</li>
<li>Log in to your WordPress <a href="http://codex.wordpress.org/Administration_Panels">admin panel</a> and <a href="http://codex.wordpress.org/Managing_Plugins#Plugin_management">activate the plugin</a>, then visit the new bsuite submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Options_-_Configuration_Settings">options tab</a>. This will allow bsuite to create its database tables.</li>
<li>Stats collection will start automatically; you can see the results in the new bsuite Reports submenu of your Dashboard</li>
<li>Once installed, be sure to enable the options and consider customizing the look by adding the bsuite CSS to your theme’s CSS (<a href="http://oz.plymouth.edu/~cbisson/projects/bsuite.css">sample CSS here</a>).</li>
<li>In order to view the stats reports reports on your public pages, you’ll need to add the display functions to your pages.</li>
</ul>
<h2 id="11613_upgrading_1" >Upgrading</h2>
<ul>
<li>Upgrades from earlier versions of bsuite are easy, just replace the old <code>bsuite.php</code> file with the new one.</li>
<li>Don’t forget to visit the bsuite submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Options_-_Configuration_Settings">options tab</a> so you can setup any new features.</li>
</ul>
<h1 id="11613_commands_1" >Commands</h1>
<p>The bsuite submenu of the options has a few command buttons:</p>
<ul>
<li>
<h2 id="11613_clear-bsuite_speedca_1" >Clear bsuite_speedcache</h2>
<p>The cache improves performance, but can sometimes get stale before its time. This command clears it.</li>
<li>
<h2 id="11613_rebuild-bsuite-tag-i_1" >Rebuild bsuite tag index</h2>
<p>bsuite maintains its tag index with every story edit. Use this command to bring old-content into the index or if you’ve edited the content in way WP doesn’t know about.</li>
</ul>
<h1 id="11613_options_1" >Options</h1>
<p>The bstat submenu of the options tab has a few configurable settings:</p>
<ul>
<li>
<h2 id="11613_minimum-userlevel-to_1" >Minimum userlevel to view bsuite reports</h2>
<p>The options are restricted to administrators, but you can choose who can view the reports.</li>
<li>
<h2 id="11613_output-default-css_1" >Output default CSS</h2>
<p>Some of the bsuite functions require CSS styles not found in the average style sheet. This will output default styles.</li>
<li>
<h2 id="11613_default-pulse-graph-_1" >Default pulse graph style</h2>
<p>This sets how values are interpolated in drawing the pulse graph. Experiment with the options to see how they work.</li>
<li>
<h2 id="11613_suggest-related-entr_1" >Suggest related entries in post</h2>
<p>This will insert a block of links at the tail of each (tagged) post’s content with links to related posts at your site.</li>
<li>
<h2 id="11613_tag-input-format_1" >Tag input format</h2>
<p>Name your style: square brackets or angle brackets / <code>&lt;tags></code> or <code>[tags]</code>.</li>
<li>
<h2 id="11613_highlight-search-wor_1" >Highlight search words and offer search help</h2>
<p>The first part of this should be obvious, but the real trick here is using those search words to offer other related content from your site to visitors. It works (and looks) a lot like the option above, but the suggestions only appear when search words are detected.</li>
<li>
<h2 id="11613_filter-incoming-sear_1" >Filter incoming search terms using comment moderation and blacklist words</h2>
<p>Referrer spam is as much of a problem as trackback spam. There are a few tricks in bstat to prevent the problem, but here’s one you can configure. Selecting this option tells bstat to not display search terms that contain words in your moderation list or blacklist.</li>
<li>
<h2 id="11613_ignore-hits-from-reg_1" >Ignore hits from registered users at or above userlevel</h2>
<p>No author wants to skew their stats just by poking around their own site.</li>
<li>
<h2 id="11613_ignore-hits-from-the_1" >Ignore hits from these IP numbers</h2>
<p>Sites with low traffic may find that activity by authors severely skews the stats tracking. Enter an IP address here to ignore it.</li>
</ul>
<h1 id="11613_tag-support_1" >Tag Support</h1>
<p>Until WordPress adopts a standardized way to manage tags, we’ll have to deal with things like this.</p>
<p>bsuite recognizes tags in three forms:</p>
<ul>
<li>Any link with a <a href="http://microformats.org/wiki/reltag"><code>rel=“tag”</code> attribute</a></li>
<li>Any number of single tags like this: <code>&lt;tag></code>tag name<code>&lt;/tag></code></li>
<li>A block of comma-delimited tags like this: <code>&lt;tags></code>WordPress, WordPress Plugin<code>&lt;/tags></code></li>
</ul>
<p>This appears to make it compatible with a number of existing tag management strategies now in use — including those used by <a href="http://ecto.kung-foo.tv/archives/001368.php">Ecto</a> and <a href="http://">SimpleTags</a>.</p>
<p>Tags are mapped to Technorati, but a future version will include an option to set other tag resolvers.</p>
<h1 id="11613_using-bsuite-functio_1" >Using bsuite Functions</h1>
<p>Function usage is unchanged from <a href="http://maisonbisson.com/blog/post/11390/">the last version</a>. Among the things at the top of the list for bs3: widgets.</p>
<h1 id="11613_known-bugs_1" >Known Bugs</h1>
<p>None yet, but I’m sure I’m forgetting something. Report what you find in the comments below.</p>
<h1 id="11613_money-grubbing_1" >Money Grubbing</h1>
<p>bsuite is <a href="http://www.gnu.org/copyleft/gpl.html">GPL-licensed</a> free software, but after some urging by friends, I&#8217;m opening the tip jar. If you use it and like it, let me know. And if you feel moved, leave a tip in the jar.</p>
<form action="https://checkout.google.com/cws/v2/Merchant/931882471552994/checkout" id="BB_BuyButtonForm" method="post" name="BB_BuyButtonForm">
<table cellpadding="5" cellspacing="0" width="1%">
<tr>
<td align="right" width="1%">
<select name="buyButtonCart">
                    <option value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxjaGVja291dC1zaG9wcGluZy1jYXJ0IHhtbG5zPSJodHRwOi8vY2hlY2tvdXQuZ29vZ2xlLmNvbS9zY2hlbWEvMiI+DQogIDxzaG9wcGluZy1jYXJ0Pg0KICAgIDxpdGVtcz4NCiAgICAgIDxpdGVtPg0KICAgICAgICA8cXVhbnRpdHk+MTwvcXVhbnRpdHk+DQogICAgICAgIDx1bml0LXByaWNlIGN1cnJlbmN5PSJVU0QiPjUuMDwvdW5pdC1wcmljZT4NCiAgICAgICAgPGl0ZW0tbmFtZT5Eb25hdGUgJDU8L2l0ZW0tbmFtZT4NCiAgICAgICAgPGl0ZW0tZGVzY3JpcHRpb24gLz4NCiAgICAgIDwvaXRlbT4NCiAgICA8L2l0ZW1zPg0KICA8L3Nob3BwaW5nLWNhcnQ+DQogIDxjaGVja291dC1mbG93LXN1cHBvcnQ+DQogICAgPG1lcmNoYW50LWNoZWNrb3V0LWZsb3ctc3VwcG9ydCAvPg0KICA8L2NoZWNrb3V0LWZsb3ctc3VwcG9ydD4NCjwvY2hlY2tvdXQtc2hvcHBpbmctY2FydD4NCg0K//separator///wH7cRg84KXJ5bs/p0xoxelqzYM=">&#x24;5.00 &#8211; Donate &#x24;5</option><br />
                    <option value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxjaGVja291dC1zaG9wcGluZy1jYXJ0IHhtbG5zPSJodHRwOi8vY2hlY2tvdXQuZ29vZ2xlLmNvbS9zY2hlbWEvMiI+DQogIDxzaG9wcGluZy1jYXJ0Pg0KICAgIDxpdGVtcz4NCiAgICAgIDxpdGVtPg0KICAgICAgICA8cXVhbnRpdHk+MTwvcXVhbnRpdHk+DQogICAgICAgIDx1bml0LXByaWNlIGN1cnJlbmN5PSJVU0QiPjEwLjA8L3VuaXQtcHJpY2U+DQogICAgICAgIDxpdGVtLW5hbWU+RG9uYXRlICQxMDwvaXRlbS1uYW1lPg0KICAgICAgICA8aXRlbS1kZXNjcmlwdGlvbiAvPg0KICAgICAgPC9pdGVtPg0KICAgIDwvaXRlbXM+DQogIDwvc2hvcHBpbmctY2FydD4NCiAgPGNoZWNrb3V0LWZsb3ctc3VwcG9ydD4NCiAgICA8bWVyY2hhbnQtY2hlY2tvdXQtZmxvdy1zdXBwb3J0IC8+DQogIDwvY2hlY2tvdXQtZmxvdy1zdXBwb3J0Pg0KPC9jaGVja291dC1zaG9wcGluZy1jYXJ0Pg0KDQo=//separator//UfRhTmuN9JxZ/cYOQNH96EW0+xM=">&#x24;10.00 &#8211; Donate &#x24;10</option><br />
                    <option value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxjaGVja291dC1zaG9wcGluZy1jYXJ0IHhtbG5zPSJodHRwOi8vY2hlY2tvdXQuZ29vZ2xlLmNvbS9zY2hlbWEvMiI+DQogIDxzaG9wcGluZy1jYXJ0Pg0KICAgIDxpdGVtcz4NCiAgICAgIDxpdGVtPg0KICAgICAgICA8cXVhbnRpdHk+MTwvcXVhbnRpdHk+DQogICAgICAgIDx1bml0LXByaWNlIGN1cnJlbmN5PSJVU0QiPjIwLjA8L3VuaXQtcHJpY2U+DQogICAgICAgIDxpdGVtLW5hbWU+RG9uYXRlICQyMDwvaXRlbS1uYW1lPg0KICAgICAgICA8aXRlbS1kZXNjcmlwdGlvbiAvPg0KICAgICAgPC9pdGVtPg0KICAgIDwvaXRlbXM+DQogIDwvc2hvcHBpbmctY2FydD4NCiAgPGNoZWNrb3V0LWZsb3ctc3VwcG9ydD4NCiAgICA8bWVyY2hhbnQtY2hlY2tvdXQtZmxvdy1zdXBwb3J0IC8+DQogIDwvY2hlY2tvdXQtZmxvdy1zdXBwb3J0Pg0KPC9jaGVja291dC1zaG9wcGluZy1jYXJ0Pg0KDQo=//separator//DBfWPm/LjmvvKwzyloydJLK6xTI=">&#x24;20.00 &#8211; Donate &#x24;20</option><br />
                    <option value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxjaGVja291dC1zaG9wcGluZy1jYXJ0IHhtbG5zPSJodHRwOi8vY2hlY2tvdXQuZ29vZ2xlLmNvbS9zY2hlbWEvMiI+DQogIDxzaG9wcGluZy1jYXJ0Pg0KICAgIDxpdGVtcz4NCiAgICAgIDxpdGVtPg0KICAgICAgICA8cXVhbnRpdHk+MTwvcXVhbnRpdHk+DQogICAgICAgIDx1bml0LXByaWNlIGN1cnJlbmN5PSJVU0QiPjUwLjA8L3VuaXQtcHJpY2U+DQogICAgICAgIDxpdGVtLW5hbWU+RG9uYXRlICQ1MDwvaXRlbS1uYW1lPg0KICAgICAgICA8aXRlbS1kZXNjcmlwdGlvbiAvPg0KICAgICAgPC9pdGVtPg0KICAgIDwvaXRlbXM+DQogIDwvc2hvcHBpbmctY2FydD4NCiAgPGNoZWNrb3V0LWZsb3ctc3VwcG9ydD4NCiAgICA8bWVyY2hhbnQtY2hlY2tvdXQtZmxvdy1zdXBwb3J0IC8+DQogIDwvY2hlY2tvdXQtZmxvdy1zdXBwb3J0Pg0KPC9jaGVja291dC1zaG9wcGluZy1jYXJ0Pg0KDQo=//separator//RY81IWA1wXQc6n4KAIHTxzOgno8=">&#x24;50.00 &#8211; Donate &#x24;50</option><br />
                    <option value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxjaGVja291dC1zaG9wcGluZy1jYXJ0IHhtbG5zPSJodHRwOi8vY2hlY2tvdXQuZ29vZ2xlLmNvbS9zY2hlbWEvMiI+DQogIDxzaG9wcGluZy1jYXJ0Pg0KICAgIDxpdGVtcz4NCiAgICAgIDxpdGVtPg0KICAgICAgICA8cXVhbnRpdHk+MTwvcXVhbnRpdHk+DQogICAgICAgIDx1bml0LXByaWNlIGN1cnJlbmN5PSJVU0QiPjEwMC4wPC91bml0LXByaWNlPg0KICAgICAgICA8aXRlbS1uYW1lPkRvbmF0ZSAkMTAwPC9pdGVtLW5hbWU+DQogICAgICAgIDxpdGVtLWRlc2NyaXB0aW9uIC8+DQogICAgICA8L2l0ZW0+DQogICAgPC9pdGVtcz4NCiAgPC9zaG9wcGluZy1jYXJ0Pg0KICA8Y2hlY2tvdXQtZmxvdy1zdXBwb3J0Pg0KICAgIDxtZXJjaGFudC1jaGVja291dC1mbG93LXN1cHBvcnQgLz4NCiAgPC9jaGVja291dC1mbG93LXN1cHBvcnQ+DQo8L2NoZWNrb3V0LXNob3BwaW5nLWNhcnQ+DQoNCg==//separator//s+L6saiSV8Sb4ChL9q7eVgG6lWA=">&#x24;100.00 &#8211; Donate &#x24;100</option><br />
                </select>
</td>
<td align="left" width="1%">
<input alt="" src="https://checkout.google.com/buttons/buy.gif?merchant_id=931882471552994&amp;w=117&amp;h=48&amp;style=white&amp;variant=text&amp;loc=en_US" type="image"/>
            </td>
</tr>
</table>
</form>
<p><tags>beta, blog pulse, bstat, bstats, bsuggestive, bsuite, bug, bug fix, bug fixes, bugs, fix, fixes, graph, plugin, pulse, recommendation system, recommendations, recommender, recommending, referrer, related content, search engine highlighting, search term, search term highlighting, sehl, stable, statistics, stats, stats tracking, tag, tag management, tag relationships, tags, usage, wordpress, wordpress plugin</tags></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/bsuite/feed/</wfw:commentRss>
		<slash:comments>85</slash:comments>
		</item>
		<item>
		<title>bsuite Bug Fixes (release b2v6)</title>
		<link>http://maisonbisson.com/blog/bsuite/</link>
		<comments>http://maisonbisson.com/blog/bsuite/#comments</comments>
		<pubDate>Mon, 24 Jul 2006 16:39:28 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[blog pulse]]></category>
		<category><![CDATA[bstat]]></category>
		<category><![CDATA[bstats]]></category>
		<category><![CDATA[bsuggestive]]></category>
		<category><![CDATA[bsuite]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[bug fix]]></category>
		<category><![CDATA[bug fixes]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[fix]]></category>
		<category><![CDATA[fixes]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[pulse]]></category>
		<category><![CDATA[recommendation system]]></category>
		<category><![CDATA[recommendations]]></category>
		<category><![CDATA[recommender]]></category>
		<category><![CDATA[recommending]]></category>
		<category><![CDATA[referrer]]></category>
		<category><![CDATA[related content]]></category>
		<category><![CDATA[search engine highlighting]]></category>
		<category><![CDATA[search term]]></category>
		<category><![CDATA[search term highlighting]]></category>
		<category><![CDATA[sehl]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[stats tracking]]></category>
		<category><![CDATA[tag]]></category>
		<category><![CDATA[tag management]]></category>
		<category><![CDATA[tag relationships]]></category>
		<category><![CDATA[tags]]></category>
		<category><![CDATA[usage]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/post/11390/</guid>
		<description><![CDATA[
Update: bugfix release b2v7 available.
It&#8217;s been a while since I released a new version of bsuite, my multi-purpose WordPress plugin. I&#8217;d been hoping to finish up a series of new features, but those have been delayed and this is mostly just a collection of bugfixes. This update is recommended for all bsuite users.
bsuite Features

Tracks page [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-11390"><!-- &nbsp; --></abbr>
<div class="innerindex">
<h3>Contents:</h3>
<ol>
<li><a href="http://maisonbisson.com/blog/bsuite/#11390_bsuite-features_1">bsuite Features</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11390_fixedchangedadded_1">Fixed/Changed/Added</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11390_installation_1">Installation</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11390_upgrading_1">Upgrading</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11390_commands_1">Commands</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11390_options_1">Options</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11390_tag-support_1">Tag Support</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11390_using-bsuite-functio_1">Using bsuite Functions</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11390_known-bugs_1">Known Bugs</a></li>
</ol>
</div>
<p><strong>Update:</strong> <a href="http://maisonbisson.com/blog/post/11613/">bugfix release b2v7 available</a>.</p>
<p>It&#8217;s been a while since I released a new version of <a href="http://maisonbisson.com/blog/post/10900/" title="bsuite WordPress Plugin (b2 release)">bsuite</a>, my multi-purpose WordPress plugin. I&#8217;d been hoping to finish up a series of new features, but those have been delayed and this is mostly just a collection of bugfixes. This update is recommended for all bsuite users.</p>
<h1 id="11390_bsuite-features_1" >bsuite Features</h1>
<ul>
<li>Tracks page loads (hits)<br /> </li>
<li>Tracks search terms used by visitors ariving at your site via search engines<br /> </li>
<li>Reports top-performing stories via a function that can be included in the sidebar<br /> </li>
<li>Reports recent comments via a function that can be included in the sidebar<br /> </li>
<li>Reports top search terms via a function that can be included in the sidebar<br /> </li>
<li>Outputs a pulse graph of activity on your site or specific stories<br /> </li>
<li><a href="http://maisonbisson.com/blog/post/10900/?bsuite_hilite=highlights+search+words&#038;bsuite_suggest=off">Highlights search words</a> used by visitors ariving at your site via search engines<br /> </li>
<li>Lists related posts at the bottom of the current post&#8217;s content<br /> </li>
<li>Suggests posts that closely match the search criteria for visitors who arrive via search engines<br /> </li>
<li>Integrates <a href="/blog/post/10861/">bsuite_speedcache</a><br /> </li>
<li>Does <a href="/blog/post/10922/">some stuff with tags</a></li>
</ul>
<h1 id="11390_fixedchangedadded_1" >Fixed/Changed/Added</h1>
<ul>
<li>The bsuite report consolidates the two uselessly differentiated top stories lists and <a href="http://www.flickr.com/photos/maisonbisson/196314951/">adds a top movers list</a>.<br /> </li>
<li>The report also includes a hugely <a href="http://www.flickr.com/photos/maisonbisson/196834225/">updated Quick Stats section</a> listing today&#8217;s current tally <em>and</em> a prediction of the day&#8217;s total along with other goodies.<br /> </li>
<li>The <a href="http://www.flickr.com/photos/maisonbisson/196314951/">table definitions have been updated</a> and optimized for better performance. <a href="http://nosheep.net/">Zach</a> contributed some optimizations to the <code>bstat_hitit()</code> function and underlying MySQL queries, and you&#8217;ll also find a number of small code optimizations scattered throughout.<br /> </li>
<li>This version finally <a href="http://maisonbisson.com/blog/post/11248/">creates and configures it&#8217;s tables automatically</a> upon activation. You no longer need to visit the plugin&#8217;s option screen for this to happen.<br /> </li>
<li>A fix to address a MySQL error for users running MySQL 5 has been long overdue. It&#8217;s in here.<br /> </li>
<li>Numbers in the reports are now formatted with commas or whatever local format you&#8217;ve set MySQL for, using <a href="http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html">MySQL&#8217;s <code>FORMAT()</code> function</a>.<br /> </li>
<li><a href="http://maisonbisson.com/blog/post/11032/#comment-31803">As requested</a>, I&#8217;ve added a function &#8212; <code>bstat_hits()</code> &#8212; return just the hit count for a story or for the whole blog.<br /> </li>
<li><a href="http://maisonbisson.com/blog/post/11032/#comment-26916">As requested</a>, you can now manually clear the bsuite_speedcache.<br /> </li>
<li>As <a href="http://maisonbisson.com/blog/post/10900/#comment-33053">prompted, prodded, and cajoled</a>, I&#8217;ve finally made a change to report hits to the front page (and other pages without post IDs).<br /> </li>
<li>I did <a href="http://maisonbisson.com/blog/post/11188/">a bunch of thinking about tags</a> a while ago, and bsuite now keeps an index of tags in a separate table. I&#8217;ve got plans to use this for later features, but for now it&#8217;s just a curiosity that shouldn&#8217;t cause any problems.<br /> </li>
<li>You can now switch between &lt;tags&gt; or [tags] for compatibility with other plugins (such as <a href="http://maisonbisson.com/blog/post/11032/#comment-26884">noted here</a>) and with WP2&#8217;s WYSIWYG editor.<br /> </li>
<li>The code now properly calls <code>get_settings(’siteurl’)</code> instead of <code>get_settings(’home’)</code> to build the URL for the spacer.gif that builds the pulse graph, fixing the problem where <a href="http://maisonbisson.com/blog/post/10900/#comment-41808">the graph wouldn&#8217;t display</a> for some users.<br /> </li>
<li>Not changed, but at least answered: <a href="http://www.kickingdragon.com/">Eddie</a> commented <a href="http://maisonbisson.com/blog/post/10900/#comment-52951">to explain</a> that ‘–disable-bcmath’ can cause the <a href="http://maisonbisson.com/blog/post/10900/#comment-18232">undefined function errors</a> some people were getting. A later release may incorporate <a href="http://blog.pramudita.com/call-to-undefined-function-bcmod-in-bsuite-wordpress-plugin-solved.html">Pramudita&#8217;s fix</a>. <br /> </li>
<li>Also not in this version are <a href="http://maisonbisson.com/blog/post/10999/">the user-contributed tag features</a> I&#8217;d gotten so excited about. These just aren&#8217;t ready for primetime, but people who want to hack about in alpha-ville will find all the supporting code in there.<br /> </li>
<li>This list is probably incomplete and in some other way inaccurate. It&#8217;s not intentional, I&#8217;m just sloppy. Please leave comments with bug reports or corrections, I&#8217;ll do what I can to fix them.<br /> </li>
<li>Finally, I&#8217;m now hosting the download on a new server, so it won&#8217;t be subject to <a href="http://www.mac.com/1/bandwidth.html">.Mac&#8217;s bandwidth consumption limits</a>. <br />&nbsp;</li>
</ul>
<h1 id="11390_installation_1" >Installation</h1>
<p><strong>Update:</strong> <a href="http://maisonbisson.com/blog/post/11613/">bugfix release b2v7 available</a>.</p>
<ul>
<li>Download and unzip <a href="http://oz.plymouth.edu/~cbisson/projects/bsuite.zip">bsuite.zip</a><br /> </li>
<li>Place bsuite.php in you wp-content/plugins directory<br /> </li>
<li>Place spacer.gif in your wp-content directory<br /> </li>
<li>Log in to your WordPress <a href="http://codex.wordpress.org/Administration_Panels">admin panel</a> and <a href="http://codex.wordpress.org/Managing_Plugins#Plugin_management">activate the plugin</a>, then visit the new bsuite submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Options_-_Configuration_Settings">options tab</a>. This will allow bsuite to create its database tables.
<p>Stats collection will start automatically; you can see the results in the new <strong>bsuite Reports</strong> submenu of your <a href="http://codex.wordpress.org/Administration_Panels#The_Dashboard">Dashboard</a><br /> </li>
<li>Once installed, be sure to enable the options and consider customizing the look by adding the bsuite CSS to your theme&#8217;s CSS (<a href="http://oz.plymouth.edu/~cbisson/projects/bsuite.css">sample CSS here</a>).</li>
</ul>
<p>In order to view the stats reports reports on your public pages, you&#8217;ll need to add the display functions to your pages.</p>
<h1 id="11390_upgrading_1" >Upgrading</h1>
<p><strong>Upgrades from earlier versions of bsuite</strong> are easy, just replace the old <code>bsuite.php</code> file with the new one.</p>
<p><strong>If you&#8217;re upgrading from bstat</strong> (which is so old I was tempted to remove this part of the docs), be sure to delete or deactivate the old plugin before activating the new one. Don&#8217;t forget to visit the bsuite submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Options_-_Configuration_Settings">options tab</a> so you can setup all the new features.</p>
<h1 id="11390_commands_1" >Commands</h1>
<p>The bstat submenu of the options has a few command buttons:</p>
<ul>
<li>Clear bsuite_speedcache</p>
<p>The cache improves performance, but can sometimes get stale before its time. This command clears it.<br /> </li>
<li>Rebuild bsuite tag index
<p>bsuite maintains its tag index with every story edit. Use this command to bring old-content into the index or if you&#8217;ve edited the content in way WP doesn&#8217;t know about.<br /> </li>
</ul>
<h1 id="11390_options_1" >Options</h1>
<p>The bstat submenu of the options tab has a few configurable settings:</p>
<ul>
<li>Minimum userlevel to view bsuite reports</p>
<p>The options are restricted to users at <a href="http://codex.wordpress.org/User_Levels">userlevel</a> 8 or above, but you can choose who can view the reports.<br /> </li>
</ul>
<ul>
<li>Output default CSS</p>
<p>Some of the bsuite functions require CSS styles not found in the average style sheet. This will output default styles.<br /> </li>
</ul>
<ul>
<li>Default pulse graph style</p>
<p>This sets how values are interpolated in drawing the pulse graph. Experiment with the options to see how they work.<br /> </li>
</ul>
<ul>
<li>Suggest related entries in post</p>
<p>This will insert a block of links at the tail of each (tagged) post&#8217;s content with links to related posts at your site.<br /> </li>
</ul>
<ul>
<li>Tag input format</p>
<p>Name your style: square brackets or angle brackets / &lt;tags&gt; or [tags].<br /> </li>
</ul>
<ul>
<li>Highlight search words and offer search help</p>
<p>The first part of this <a href="http://www.alistapart.com/articles/searchhighlight/">should be obvious</a>, but the real trick here is using those search words to offer other related content from your site to visitors. It works (and looks) a lot like the option above, but the suggestions only appear when search words are detected.<br /> </li>
<li>Filter incoming search terms using comment moderation and blacklist words.
<p>Referrer spam is as much of a problem as trackback spam. There are a few tricks in bstat to prevent the problem, but here&#8217;s one you can configure. Selecting this option tells bstat to not display search terms that contain words in your <a href="http://codex.wordpress.org/Discussion_Options#Comment_Moderation">moderation list or blacklist</a>.</li>
</ul>
<ul>
<li>Ignore hits from registered users at or above userlevel</p>
<p>No author wants to skew their stats just by poking around their own site.<br /> </li>
<li>Ignore hits from these IP numbers.
<p>Sites with low traffic may find that activity by authors severely skews the stats tracking. Enter an IP address here to ignore it.</li>
</ul>
<h1 id="11390_tag-support_1" >Tag Support</h1>
<p>Until WordPress adopts a standardized way to manage tags, we&#8217;ll have to deal with things like this.</p>
<p>bsuite recognizes tags in three forms:</p>
<ul>
<li>Any link with a <a href="http://microformats.org/wiki/reltag">rel=“tag”</a> attribute<br /> </li>
<li>Any number of single tags like this: &lt;tag&gt;tag name&lt;/tag&gt;<br /> </li>
<li>A block of comma-delimited tags like this: &lt;tags&gt;WordPress, WordPress Plugin&lt;/tags&gt;<br /> </li>
</ul>
<p>This appears to make it compatible with a number of existing tag management strategies now in use &#8212; including those used by <a href="http://ecto.kung-foo.tv/archives/001368.php">Ecto</a> and <a href="http://www.broobles.com/scripts/simpletags/">SimpleTags</a>.</p>
<p>Tags in &lt;tag&gt; and &lt;tags&gt; tags are mapped to Technorati, but a future version will include an option to set other tag resolvers.</p>
<h1 id="11390_using-bsuite-functio_1" >Using bsuite Functions</h1>
<p>Though many bsuite features require no coding or modifications to theme files, there are a number of public functions available to display lists of top stories, recently commented stories, recent comments, recent incoming search terms, etc. Most of these functions take similar arguments and output their results in similar ways.</p>
<p><strong>Today&#8217;s Stats</strong></p>
<ul>
<li>bstat_todaypop</p>
<p>displays top stories for today only.<br /> </li>
<li>bstat_todayrefs
<p>displays top incoming search terms for today only.<br /> </li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_todaypop</span> and <span style="font-family:monospace;">bstat_todayrefs</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_todaypop({</span><span style="color:#00ff00;">count</span>}, “{<span style="color:#00ff00;">before</span>}”, “{<span style="color:#00ff00;">after</span>}”);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Today's Most Popular&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_todaypop(15, “&lt;li&gt;”, “&lt;/li&gt;\n”); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Recent Stats</strong></p>
<ul>
<li>bstat_recentpop</p>
<p>displays top stories for the past x days. This function reveals more useful data on sites with low traffic, but is somewhat slower than bstat_todaypop.<br /> </li>
<li>bstat_recentrefs
<p>displays top incoming search terms for the past x days. This function reveals more useful data on sites with low traffic, but is somewhat slower than bstat_todayrefs.<br /> </li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_recentpop</span> and <span style="font-family:monospace;">bstat_recentrefs</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_recentrefs({</span><span style="color:#00ff00;">count</span>}, “{<span style="color:#00ff00;">days</span>}”, “{<span style="color:#00ff00;">before</span>}”, “{<span style="color:#00ff00;">after</span>}”);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">days</span> is the number of days back to look<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Incoming Search Terms This Week&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_recentrefs(15, 7, “&lt;li&gt;”, “&lt;/li&gt;\n”); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Recent Discussion</strong></p>
<ul>
<li>bstat_discussionbypost</p>
<p>displays recently commented posts. Each post will appear only once.<br /> </li>
<li>bstat_discussionbycomment
<p>displays recent comments (and commenter). Better on sites with lots of community interaction.<br /> </li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_discussionbypost</span> and <span style="font-family:monospace;">bstat_discussionbycomment</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_discussionbypost({</span><span style="color:#00ff00;">count</span>}, “{<span style="color:#00ff00;">before</span>}”, “{<span style="color:#00ff00;">after</span>}”);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Incoming Search Terms This Week&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_discussionbypost(15, “&lt;li&gt;”, “&lt;/li&gt;\n”); ?&gt;&lt;/ul&gt;</pre>
<p><strong>Special Functions</strong></p>
<ul>
<li>bstat_hits</p>
<p>displays the current and average daily page loads.<br /> </li>
</ul>
<p>Usage:<br />
<span style="font-family:monospace;"> bstat_hits([{</span><span style="color:#00ff00;">template</span>}, [{<span style="color:#00ff00;">post_id</span>}, [{<span style="color:#00ff00;">today_only</span>}]]]);</p>
<p><span style="font-family:monospace; color:#00ff00;">template</span> will be filled in with the appropriate values for <span style="font-family:monospace; color:#00ff00;">%%hits%%</span> and/or <span style="font-family:monospace; color:#00ff00;">%%avg%%</span>. If left blank, the default template is <span style="font-family:monospace; color:#00ff00;">%%hits%% hits, about %%avg%% daily</span><br />
<span style="font-family:monospace; color:#00ff00;">post_id</span> over-rides the detected post ID. Common values for this may include “0” to show stats for index pages, or “-1” to show stats for the entire blog (note that <span style="font-family:monospace; color:#00ff00;">%%avg%%</span> reports inaccurately with a “-1” value here)<br />
<span style="font-family:monospace; color:#00ff00;">today_only</span> returns the count for today (note that <span style="font-family:monospace; color:#00ff00;">%%avg%%</span> doesn&#8217;t make much sense here)</p>
<p>Example:</p>
<pre>&lt;?php bstat_hits('%%hits%% hits, about %%avg%% daily') ?&gt;</pre>
<p> prints something like “791 hits, about 10 daily”</p>
<pre>&lt;?php bstat_hits('%%hits%% page loads today', -1, 1) ?&gt;</pre>
<p> prints something like “5,950 page loads today”</p>
<ul>
<li>bstat_pulse</p>
<p>displays the “pulse” graph of hits over time.<br /> </li>
</ul>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_pulse([{</span><span style="color:#00ff00;">post_id</span>}, [{<span style="color:#00ff00;">max_width</span>}, [{<span style="color:#00ff00;">display_text</span>}, [{<span style="color:#00ff00;">display_credit</span>}, [{<span style="color:#00ff00;">graph_accurate</span>}]]]]]);</p>
<p><span style="font-family:monospace; color:#00ff00;">post_id</span> is the post_id for the story, usually provided by a WP variable<br />
<span style="font-family:monospace; color:#00ff00;">max_width</span> is the maximum width the graph maw run<br />
<span style="font-family:monospace; color:#00ff00;">display_text</span> (acceptable values: 0 or 1), switch to display stats for total views and average views per day<br />
<span style="font-family:monospace; color:#00ff00;">display_credit</span> (acceptable values: 0 or 1), switch to display “powered by bstat” credit<br />
<span style="font-family:monospace; color:#00ff00;">graph_accurate</span> (acceptable values: 0 or 1), make smooth, accurate graphs or fuzzy (but not inaccurate) graphs</p>
<p>Example:</p>
<pre>&lt;h3&gt;Story pulse&lt;/h3&gt;&lt;?php bstat_pulse($id, 525, 1, 1, 1); ?&gt;</pre>
<ul>
<li>bstat_hitit</p>
<p>The hamster on a wheel that makes it all work. It records hits for each page load, and hits for each incoming search term.<br /> </li>
</ul>
<p><strong>This function is no longer necessary</strong>, as it is executed automatically via a plugin hook that runs every time the footer is called. Still, it&#8217;s around if you have content that you want to track outside that scope.</p>
<p>Example:</p>
<pre>&lt;?php // this is how it used to work, but it's automated now...
	global $id;
    if (!is_single() &#038;&#038; !is_page()) $id = 0;
	bstat_hitit($id, “read”);
	?&gt;
</pre>
<p><strong>note:</strong> (be careful of any “curly quotes” that might have been accidentally/automagically inserted in code samples)</p>
<h1 id="11390_known-bugs_1" >Known Bugs</h1>
<p>None yet, but I&#8217;m sure I&#8217;m forgetting something. Report what you find in the comments below.</p>
<p><tags>recommendation system, pulse, plugin, graph, fixes, fix, bugs, bug fixes, bug fix, bug, bsuite, bsuggestive, bstats, bstat, blog pulse, beta, recommendations, recommender, recommending, referrer, related content, search engine highlighting, search term, search term highlighting, sehl, statistics, stats, stats tracking, tag, tag management, tag relationships, tags, usage, wordpress, wordpress plugin</tags></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/bsuite/feed/</wfw:commentRss>
		<slash:comments>77</slash:comments>
		</item>
		<item>
		<title>bsuite Bug Fixes (release b2v3)</title>
		<link>http://maisonbisson.com/blog/bsuite/</link>
		<comments>http://maisonbisson.com/blog/bsuite/#comments</comments>
		<pubDate>Thu, 15 Dec 2005 01:56:13 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[blog pulse]]></category>
		<category><![CDATA[bstat]]></category>
		<category><![CDATA[bstats]]></category>
		<category><![CDATA[bsuggestive]]></category>
		<category><![CDATA[bsuite]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[bug fix]]></category>
		<category><![CDATA[bug fixes]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[fix]]></category>
		<category><![CDATA[fixes]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[pulse]]></category>
		<category><![CDATA[recommendation system]]></category>
		<category><![CDATA[recommendations]]></category>
		<category><![CDATA[recommender]]></category>
		<category><![CDATA[recommending]]></category>
		<category><![CDATA[referrer]]></category>
		<category><![CDATA[related content]]></category>
		<category><![CDATA[search engine highlighting]]></category>
		<category><![CDATA[search term]]></category>
		<category><![CDATA[search term highlighting]]></category>
		<category><![CDATA[sehl]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[stats tracking]]></category>
		<category><![CDATA[tag]]></category>
		<category><![CDATA[tag management]]></category>
		<category><![CDATA[tag relationships]]></category>
		<category><![CDATA[tags]]></category>
		<category><![CDATA[usage]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/?p=11032</guid>
		<description><![CDATA[
I&#8217;ve fixed another bug in bsuite b2, my multi-purpose plugin. This update is recommended for all bsuite users.
Fixed

Previous versions would throw errors at the bottom of the page when the http referrer info included search words from a recognized search engine.&#160;

Installation
Follow the directions for the bsuite b2 release. The download link there will always fetch [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-11032"><!-- &nbsp; --></abbr>
<div class="innerindex">
<h3>Contents:</h3>
<ol>
<li><a href="http://maisonbisson.com/blog/bsuite/#11032_fixed_1">Fixed</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11032_installation_1">Installation</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#11032_bsuite-features_1">bsuite Features</a></li>
</ol>
</div>
<p>I&#8217;ve fixed another bug in <a href="http://maisonbisson.com/blog/post/10900/" title="bsuite WordPress Plugin (b2 release)">bsuite b2</a>, my multi-purpose plugin. This update is recommended for all bsuite users.</p>
<h1 id="11032_fixed_1" >Fixed</h1>
<ul>
<li>Previous versions would throw errors at the bottom of the page when the http referrer info included search words from a recognized search engine.<br />&nbsp;</li>
</ul>
<h1 id="11032_installation_1" >Installation</h1>
<p>Follow the directions for the <a href="http://maisonbisson.com/blog/post/10900/#section-3" title="bsuite WordPress Plugin (b2 release)">bsuite b2</a> release. The download link there will always fetch the <a href="http://homepage.mac.com/misterbisson/projects/bsuite.zip">current version</a>.</p>
<p><strong>Upgrades from earlier versions of bsuite</strong> are easy, just replace the old <code>bsuite.php</code> file with the new one. <strong>Upgrades from bstat</strong> follow the <a href="http://maisonbisson.com/blog/post/10900/#section-3" title="bsuite WordPress Plugin (b2 release)">same directions as before</a>.</p>
<h1 id="11032_bsuite-features_1" >bsuite Features</h1>
<ul>
<li>Tracks page loads (hits)<br />&nbsp;</li>
<li>Tracks search terms used by visitors ariving at your site via search engines<br />&nbsp;</li>
<li>Reports top-performing stories via a function that can be included in the sidebar<br />&nbsp;</li>
<li>Reports recent comments via a function that can be included in the sidebar<br />&nbsp;</li>
<li>Reports top search terms via a function that can be included in the sidebar<br />&nbsp;</li>
<li>Outputs a pulse graph of activity on your site or specific stories<br />&nbsp;</li>
<li><a href="http://maisonbisson.com/blog/post/10900/?bsuite_hilite=highlights+search+words&#038;bsuite_suggest=off">Highlights search words</a> used by visitors ariving at your site via search engines <strong>NEW!</strong><br />&nbsp;</li>
<li>Lists related posts at the bottom of the current post&#8217;s content <strong>NEW!</strong><br />&nbsp;</li>
<li>Suggests posts that closely match the search criteria for visitors who arrive via search engines <strong>NEW!</strong><br />&nbsp;</li>
<li>Integrates <a href="/blog/post/10861/">bsuite_speedcache</a> <strong>NEW!</strong><br />&nbsp;</li>
<li>Does <a href="/blog/post/10922/">some stuff with tags</a> <strong>NEW!</strong></li>
</ul>
<p><tags>search term highlighting, search engine highlighting, sehl, bsuggestive, recommendations, recommender, recommending, recommendation system, related content, tag, tags, tag management, tag relationships, beta, blog pulse, bsuite, bstat, bstats, graph, plugin, pulse, referrer, search term, statistics, stats, stats tracking, usage, wordpress, wordpress plugin, bug fix, fix, fixes, bug, bugs, beta, bug fixes</tags></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/bsuite/feed/</wfw:commentRss>
		<slash:comments>48</slash:comments>
		</item>
		<item>
		<title>bsuite Bug Fixes (release b2b)</title>
		<link>http://maisonbisson.com/blog/bsuite/</link>
		<comments>http://maisonbisson.com/blog/bsuite/#comments</comments>
		<pubDate>Sat, 03 Dec 2005 16:17:38 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[blog pulse]]></category>
		<category><![CDATA[bstat]]></category>
		<category><![CDATA[bstats]]></category>
		<category><![CDATA[bsuggestive]]></category>
		<category><![CDATA[bsuite]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[bug fix]]></category>
		<category><![CDATA[bug fixes]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[fix]]></category>
		<category><![CDATA[fixes]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[pulse]]></category>
		<category><![CDATA[recommendation system]]></category>
		<category><![CDATA[recommendations]]></category>
		<category><![CDATA[recommender]]></category>
		<category><![CDATA[recommending]]></category>
		<category><![CDATA[referrer]]></category>
		<category><![CDATA[related content]]></category>
		<category><![CDATA[search engine highlighting]]></category>
		<category><![CDATA[search term]]></category>
		<category><![CDATA[search term highlighting]]></category>
		<category><![CDATA[sehl]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[stats tracking]]></category>
		<category><![CDATA[tag]]></category>
		<category><![CDATA[tag management]]></category>
		<category><![CDATA[tag relationships]]></category>
		<category><![CDATA[tags]]></category>
		<category><![CDATA[usage]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/?p=10994</guid>
		<description><![CDATA[
I&#8217;ve fixed a couple bugs in bsuite b2, released last week.
Fixes

A bug with search word highlighting that caused it to litter the display in some cases.&#160;
A silly mistake of mine that cause a mysql error for some users.

Installation
Follow the directions for the bsuite b2 release. The download link there will always fetch the current version.
Upgrades [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-10994"><!-- &nbsp; --></abbr>
<div class="innerindex">
<h3>Contents:</h3>
<ol>
<li><a href="http://maisonbisson.com/blog/bsuite/#10994_fixes_1">Fixes</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#10994_installation_1">Installation</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#10994_bsuite-features_1">bsuite Features</a></li>
</ol>
</div>
<p>I&#8217;ve fixed a couple bugs in <a href="http://maisonbisson.com/blog/post/10900/" title="bsuite WordPress Plugin (b2 release)">bsuite b2</a>, released last week.</p>
<h1 id="10994_fixes_1" >Fixes</h1>
<ul>
<li>A bug with <a href="http://maisonbisson.com/blog/post/10900/?bsuite_hilite=Known+Bugs+buggy&#038;bsuite_suggest=off">search word highlighting</a> that caused it to litter the display in some cases.<br />&nbsp;</li>
<li>A silly mistake of mine that cause a <a href="http://maisonbisson.com/blog/post/10900/#comment-18307">mysql error</a> for some users.</li>
</ul>
<h1 id="10994_installation_1" >Installation</h1>
<p>Follow the directions for the <a href="http://maisonbisson.com/blog/post/10900/#section-3" title="bsuite WordPress Plugin (b2 release)">bsuite b2</a> release. The download link there will always fetch the <a href="http://homepage.mac.com/misterbisson/projects/bsuite.zip">current version</a>.</p>
<p><strong>Upgrades from bsuite b2</strong> are easy, just replace the old <code>bsuite.php</code> file with the new one. <strong>Upgrades from bstat</strong> follow the <a href="http://maisonbisson.com/blog/post/10900/#section-3" title="bsuite WordPress Plugin (b2 release)">same directions as before</a>.</p>
<h1 id="10994_bsuite-features_1" >bsuite Features</h1>
<ul>
<li>Tracks page loads (hits)<br />&nbsp;</li>
<li>Tracks search terms used by visitors ariving at your site via search engines<br />&nbsp;</li>
<li>Reports top-performing stories via a function that can be included in the sidebar<br />&nbsp;</li>
<li>Reports recent comments via a function that can be included in the sidebar<br />&nbsp;</li>
<li>Reports top search terms via a function that can be included in the sidebar<br />&nbsp;</li>
<li>Outputs a “pulse” graph of activity on your site or specific stories<br />&nbsp;</li>
<li><a href="http://maisonbisson.com/blog/post/10900/?bsuite_hilite=highlights+search+words&#038;bsuite_suggest=off">Highlights search words</a> used by visitors ariving at your site via search engines <strong>NEW!</strong><br />&nbsp;</li>
<li>Lists related posts at the bottom of the current post&#8217;s content <strong>NEW!</strong><br />&nbsp;</li>
<li>Suggests posts that closely match the search criteria for visitors who arrive via search engines <strong>NEW!</strong><br />&nbsp;</li>
<li>Integrates <a href="/blog/post/10861/">bsuite_speedcache</a> <strong>NEW!</strong><br />&nbsp;</li>
<li>Does <a href="/blog/post/10922/">some stuff with tags</a> <strong>NEW!</strong></li>
</ul>
<p><tags>search term highlighting, search engine highlighting, sehl, bsuggestive, recommendations, recommender, recommending, recommendation system, related content, tag, tags, tag management, tag relationships, beta, blog pulse, bsuite, bstat, bstats, graph, plugin, pulse, referrer, search term, statistics, stats, stats tracking, usage, wordpress, wordpress plugin, bug fix, fix, fixes, bug, bugs, beta, bug fixes</tags></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/bsuite/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>bsuite Features: The Photo Spread</title>
		<link>http://maisonbisson.com/blog/post/10991/bsuite-features-the-photo-spread/</link>
		<comments>http://maisonbisson.com/blog/post/10991/bsuite-features-the-photo-spread/#comments</comments>
		<pubDate>Thu, 01 Dec 2005 10:49:34 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[blog pulse]]></category>
		<category><![CDATA[bstat]]></category>
		<category><![CDATA[bstats]]></category>
		<category><![CDATA[bsuggestive]]></category>
		<category><![CDATA[bsuite]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[pulse]]></category>
		<category><![CDATA[recommendation system]]></category>
		<category><![CDATA[recommendations]]></category>
		<category><![CDATA[recommender]]></category>
		<category><![CDATA[recommending]]></category>
		<category><![CDATA[referrer]]></category>
		<category><![CDATA[related content]]></category>
		<category><![CDATA[search engine highlighting]]></category>
		<category><![CDATA[search term]]></category>
		<category><![CDATA[search term highlighting]]></category>
		<category><![CDATA[sehl]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[stats tracking]]></category>
		<category><![CDATA[tag]]></category>
		<category><![CDATA[tag management]]></category>
		<category><![CDATA[tag relationships]]></category>
		<category><![CDATA[tags]]></category>
		<category><![CDATA[usage]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/?p=10991</guid>
		<description><![CDATA[

bsuite highlights the search words used to find blog posts in Google and other search engines, and uses those search terms to recommend other related posts at your WordPress site.
 &#8212; &#8211; &#8212; 

bsuite uses the tags of one post to recommend related posts in your WordPress blog.
 &#8212; &#8211; &#8212; 

bsuite includes an easy [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-10991"><!-- &nbsp; --></abbr>
<p><a href="http://www.flickr.com/photos/maisonbisson/68879249/"><img src="http://static.flickr.com/18/68879249_6771d57d51.jpg" width="500" height="189" style="border: solid 0px #000000; margin: 0px 0px 0px 0px; padding: 0px;" alt="bsuite features: search word highlighting and suggestions." /></a></p>
<p><a href="http://maisonbisson.com/blog/post/10900/">bsuite</a> highlights the search words used to find blog posts in Google and other search engines, and uses those search terms to recommend other related posts at your WordPress site.</p>
<p> &#8212; &#8211; &#8212; </p>
<p><a href="http://www.flickr.com/photos/maisonbisson/68879244/"><img src="http://static.flickr.com/9/68879244_9baf1889c7.jpg" width="500" height="176" style="border: solid 0px #000000; margin: 0px 0px 0px 0px; padding: 0px;" alt="bsuite feature: related entries." /></a></p>
<p><a href="http://maisonbisson.com/blog/post/10900/">bsuite</a> uses the tags of one post to recommend related posts in your WordPress blog.</p>
<p> &#8212; &#8211; &#8212; </p>
<p><a href="http://www.flickr.com/photos/maisonbisson/68882533/"><img src="http://static.flickr.com/15/68882533_e7f52822ab.jpg" width="500" height="146" style="border: solid 0px #000000; margin: 0px 0px 0px 0px; padding: 0px;" alt="bsuite feature: blog pulse." /></a></p>
<p><a href="http://maisonbisson.com/blog/post/10900/">bsuite</a> includes an easy to use statistics engine that tracks the daily hits to every post and page.</p>
<p><tags>beta, blog pulse, bstat, bstats, bsuggestive, bsuite, graph, plugin, pulse, recommendation system, recommendations, recommender, recommending, referrer, related content, search engine highlighting, search term, sehl, statistics, stats, stats tracking, tag, tag management, tag relationships, tags, usage, wordpress, wordpress plugin, search term highlighting</tags></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/10991/bsuite-features-the-photo-spread/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>bsuite WordPress Plugin (b2 release)</title>
		<link>http://maisonbisson.com/blog/bsuite/</link>
		<comments>http://maisonbisson.com/blog/bsuite/#comments</comments>
		<pubDate>Tue, 29 Nov 2005 01:52:05 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[blog pulse]]></category>
		<category><![CDATA[bstat]]></category>
		<category><![CDATA[bstats]]></category>
		<category><![CDATA[bsuggestive]]></category>
		<category><![CDATA[bsuite]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[pulse]]></category>
		<category><![CDATA[recommendation system]]></category>
		<category><![CDATA[recommendations]]></category>
		<category><![CDATA[recommender]]></category>
		<category><![CDATA[recommending]]></category>
		<category><![CDATA[referrer]]></category>
		<category><![CDATA[related content]]></category>
		<category><![CDATA[search engine highlighting]]></category>
		<category><![CDATA[search term]]></category>
		<category><![CDATA[search term highlighting]]></category>
		<category><![CDATA[sehl]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[stats tracking]]></category>
		<category><![CDATA[tag]]></category>
		<category><![CDATA[tag management]]></category>
		<category><![CDATA[tag relationships]]></category>
		<category><![CDATA[tags]]></category>
		<category><![CDATA[usage]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/?p=10900</guid>
		<description><![CDATA[
The first thing we all have to agree on is that bsuite is the replacement for bstat. The name change reflects that fact that the plugin is doing a lot more than simply track page loads. The most exciting new feature is a module I can&#8217;t help but call bsuggestive. It uses the tags of [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-10900"><!-- &nbsp; --></abbr>
<div class="innerindex">
<h3>Contents:</h3>
<ol>
<li><a href="http://maisonbisson.com/blog/bsuite/#10900_bsuite-features_1">bsuite Features</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#10900_changes_1">Changes</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#10900_installation_1">Installation</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#10900_options_1">Options</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#10900_tag-support_1">Tag Support</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#10900_using-bsuite-functio_1">Using bsuite Functions</a></li>
<li><a href="http://maisonbisson.com/blog/bsuite/#10900_known-bugs_1">Known Bugs</a></li>
</ol>
</div>
<p>The first thing we all have to agree on is that <strong>bsuite</strong> is the replacement for <strong>bstat</strong>. The name change reflects that fact that the plugin is doing a lot more than simply track page loads. The most exciting new feature is a module I can&#8217;t help but call <strong>bsuggestive</strong>. It uses the tags of the current post to suggest related posts to your readers. And when readers arrive at your site via a search engine, it not only highlights the search words they used, but offers a list of other posts matching their search criteria.</p>
<p>Why &#8220;b2&#8243;? I released b1 privately a while ago, and I&#8217;ve been running it here at MaisonBisson since September.</p>
<h1 id="10900_bsuite-features_1" >bsuite Features</h1>
<ul>
<li>Tracks page loads (hits)<br />&nbsp;</li>
<li>Tracks search terms used by visitors ariving at your site via search engines<br />&nbsp;</li>
<li>Reports top-performing stories via a function that can be included in the sidebar<br />&nbsp;</li>
<li>Reports recent comments via a function that can be included in the sidebar<br />&nbsp;</li>
<li>Reports top search terms via a function that can be included in the sidebar<br />&nbsp;</li>
<li>Outputs a &#8220;pulse&#8221; graph of activity on your site or specific stories<br />&nbsp;</li>
<li><a href="http://maisonbisson.com/blog/post/10900/?bsuite_hilite=highlights+search+words&#038;bsuite_suggest=off">Highlights search words</a> used by visitors ariving at your site via search engines <strong>NEW!</strong><br />&nbsp;</li>
<li>Lists related posts at the bottom of the current post&#8217;s content <strong>NEW!</strong><br />&nbsp;</li>
<li>Suggests posts that closely match the search criteria for visitors who arrive via search engines <strong>NEW!</strong><br />&nbsp;</li>
<li>Integrates <a href="/blog/post/10861/">bsuite_speedcache</a> <strong>NEW!</strong><br />&nbsp;</li>
<li>Does <a href="/blog/post/10922/">some stuff with tags</a> <strong>NEW!</strong><br />&nbsp;</li>
</ul>
<h1 id="10900_changes_1" >Changes</h1>
<p>This documentation supersedes any previous documentation.</p>
<p>I need to be honest, it&#8217;s been too long since the last public release for me to remember all the details. I haven&#8217;t really been keeping records on all this, so if you&#8217;ve been running the previous version and you discover a problem, please tell me about it.</p>
<p>The first change is that the plugin is now in a file named &#8220;bsuite.php&#8221;. As you install it you&#8217;ll need to deactivate the previous &#8220;bstat.php&#8221; version to avoid conflicts.</p>
<p>Another big change is that bsuite will now start tracking page loads as soon as it&#8217;s activated. You no longer need to put any code in your theme. But if you&#8217;re upgrading from a version where you already have that code in your theme, it also includes code to prevent it from double-counting any page loads.</p>
<p>The other functions from bstat b4 are all there, and I don&#8217;t believe there are any changes to the way they&#8217;re called.</p>
<p>The options submenu is almost entirely redesigned. It should be pretty self explanatory, but there&#8217;s documentation below.</p>
<h1 id="10900_installation_1" >Installation</h1>
<p><strong>Update:</strong> <a href="http://maisonbisson.com/blog/post/11613/">bugfix release b2v7 available</a>.</p>
<ul>
<li>Download and unzip <a href="http://homepage.mac.com/misterbisson/projects/bsuite.zip">bsuite.zip</a><br />&nbsp;</li>
<li>Place bsuite.php in you wp-content/plugins directory<br />&nbsp;</li>
<li>Place spacer.gif in your wp-content directory<br />&nbsp;</li>
<li>Log in to your WordPress <a href="http://codex.wordpress.org/Administration_Panels">admin panel</a> and <a href="http://codex.wordpress.org/Managing_Plugins#Plugin_management">activate the plugin</a>, then visit the new bsuite submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Options_-_Configuration_Settings">options tab</a>. This will allow bsuite to create its database tables.
<p>Stats collection will start automatically; you can see the results in the new <strong>bsuite Reports</strong> submenu of your <a href="http://codex.wordpress.org/Administration_Panels#The_Dashboard">Dashboard</a><br />&nbsp;</li>
<li>Once installed, be sure to enable the options and consider customizing the look by adding the bsuite CSS to your theme&#8217;s CSS (<a href="http://homepage.mac.com/misterbisson/projects/bsuite.css">sample CSS here</a>).</li>
</ul>
<p>In order to view the stats reports reports on your public pages, you&#8217;ll need to add the display functions to your pages.</p>
<p><strong>Upgrading</strong></p>
<p>If you&#8217;re upgrading from bstat, be sure to delete or deactivate the old plugin before activating the new one. <strong>And don&#8217;t forget to visit the bsuite submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Options_-_Configuration_Settings">options tab</a> so that it can create its new db tables.</strong></p>
<h1 id="10900_options_1" >Options</h1>
<p>The bstat submenu of the options tab has three configurable settings:</p>
<ul>
<li>Minimum userlevel to view bsuite reports</p>
<p>The options are restricted to users at <a href="http://codex.wordpress.org/User_Levels">userlevel</a> 8 or above, but you can choose who can view the reports.<br />&nbsp;</li>
</ul>
<ul>
<li>Output default CSS</p>
<p>Some of the bsuite functions require CSS styles not found in the average style sheet. This will output default styles.<br />&nbsp;</li>
</ul>
<ul>
<li>Default pulse graph style</p>
<p>This sets how values are interpolated in drawing the pulse graph. Experiment with the options to see how they work.<br />&nbsp;</li>
</ul>
<ul>
<li>Suggest related entries in post</p>
<p>This will insert a block of links at the tail of each (tagged) post&#8217;s content with links to related posts at your site.<br />&nbsp;</li>
</ul>
<ul>
<li>Highlight search words and offer search help</p>
<p>The first part of this <a href="http://www.alistapart.com/articles/searchhighlight/">should be obvious</a>, but the real trick here is using those search words to offer other related content from your site to visitors. It works (and looks) a lot like the option above, but the suggestions only appear when search words are detected.<br />&nbsp;</li>
<li>Filter incoming search terms using comment moderation and blacklist words.
<p>Referrer spam is as much of a problem as trackback spam. There are a few tricks in bstat to prevent the problem, but here&#8217;s one you can configure. Selecting this option tells bstat to not display search terms that contain words in your <a href="http://codex.wordpress.org/Discussion_Options#Comment_Moderation">moderation list or blacklist</a>.</li>
</ul>
<ul>
<li>Ignore hits from registered users at or above userlevel</p>
<p>No author wants to skew their stats just by poking around their own site.<br />&nbsp;</li>
<li>Ignore hits from these IP numbers.
<p>Sites with low traffic may find that activity by authors severely skews the stats tracking. Enter an IP address here to ignore it.</li>
</ul>
<h1 id="10900_tag-support_1" >Tag Support</h1>
<p>Until WordPress adopts a standardized way to manage tags, we&#8217;ll have to deal with things like this.</p>
<p>bsuite recognizes tags in three forms:</p>
<ul>
<li>Any link with a <a href="http://microformats.org/wiki/reltag">rel=&#8221;tag&#8221;</a> attribute<br />&nbsp;</li>
<li>Any number of single tags like this: &lt;tag&gt;tag name&lt;/tag&gt;<br />&nbsp;</li>
<li>A block of comma-delimited tags like this: &lt;tags&gt;WordPress, WordPress Plugin&lt;/tags&gt;<br />&nbsp;</li>
</ul>
<p>This appears to make it compatible with a number of existing tag management strategies now in use &#8212; including those used by <a href="http://ecto.kung-foo.tv/archives/001368.php">Ecto</a> and <a href="http://www.broobles.com/scripts/simpletags/">SimpleTags</a>.</p>
<p>Tags in &lt;tag&gt; and &lt;tags&gt; tags are mapped to Technorati, but a future version will include an option to set other tag resolvers.</p>
<h1 id="10900_using-bsuite-functio_1" >Using bsuite Functions</h1>
<p>Though many bsuite features require no coding or modifications to theme files, there are a number of public functions available to display lists of top stories, recently commented stories, recent comments, recent incoming search terms, etc. Most of these functions take similar arguments and output their results in similar ways.</p>
<p><strong>Today&#8217;s Stats</strong></p>
<ul>
<li>bstat_todaypop</p>
<p>displays top stories for today only.<br />&nbsp;</li>
<li>bstat_todayrefs
<p>displays top incoming search terms for today only.<br />&nbsp;</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_todaypop</span> and <span style="font-family:monospace;">bstat_todayrefs</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_todaypop({</span><span style="color:#00ff00;">count</span>}, &quot;{<span style="color:#00ff00;">before</span>}&quot;, &quot;{<span style="color:#00ff00;">after</span>}&quot;);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Today's Most Popular&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_todaypop(15, &quot;&lt;li&gt;&quot;, &quot;&lt;/li&gt;\n&quot;); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Recent Stats</strong></p>
<ul>
<li>bstat_recentpop</p>
<p>displays top stories for the past x days. This function reveals more useful data on sites with low traffic, but is somewhat slower than bstat_todaypop.<br />&nbsp;</li>
<li>bstat_recentrefs
<p>displays top incoming search terms for the past x days. This function reveals more useful data on sites with low traffic, but is somewhat slower than bstat_todayrefs.<br />&nbsp;</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_recentpop</span> and <span style="font-family:monospace;">bstat_recentrefs</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_recentrefs({</span><span style="color:#00ff00;">count</span>}, &quot;{<span style="color:#00ff00;">days</span>}&quot;, &quot;{<span style="color:#00ff00;">before</span>}&quot;, &quot;{<span style="color:#00ff00;">after</span>}&quot;);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">days</span> is the number of days back to look<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Incoming Search Terms This Week&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_recentrefs(15, 7, &quot;&lt;li&gt;&quot;, &quot;&lt;/li&gt;\n&quot;); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Recent Discussion</strong></p>
<ul>
<li>bstat_discussionbypost</p>
<p>displays recently commented posts. Each post will appear only once.<br />&nbsp;</li>
<li>bstat_discussionbycomment
<p>displays recent comments (and commenter). Better on sites with lots of community interaction.<br />&nbsp;</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_discussionbypost</span> and <span style="font-family:monospace;">bstat_discussionbycomment</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_discussionbypost({</span><span style="color:#00ff00;">count</span>}, &quot;{<span style="color:#00ff00;">before</span>}&quot;, &quot;{<span style="color:#00ff00;">after</span>}&quot;);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Incoming Search Terms This Week&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_discussionbypost(15, &quot;&lt;li&gt;&quot;, &quot;&lt;/li&gt;\n&quot;); ?&gt;&lt;/ul&gt;</pre>
<p><strong>Special Functions</strong></p>
<ul>
<li>bstat_pulse</p>
<p>displays the &quot;pulse&quot; graph of hits over time.<br />&nbsp;</li>
</ul>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_pulse([{</span><span style="color:#00ff00;">post_id</span>}, [{<span style="color:#00ff00;">max_width</span>}, [{<span style="color:#00ff00;">display_text</span>}, [{<span style="color:#00ff00;">display_credit</span>}, [{<span style="color:#00ff00;">graph_accurate</span>}]]]]]);</p>
<p><span style="font-family:monospace; color:#00ff00;">post_id</span> is the post_id for the story, usually provided by a WP variable<br />
<span style="font-family:monospace; color:#00ff00;">max_width</span> is the maximum width the graph maw run<br />
<span style="font-family:monospace; color:#00ff00;">display_text</span> (acceptable values: 0 or 1), switch to display stats for total views and average views per day<br />
<span style="font-family:monospace; color:#00ff00;">display_credit</span> (acceptable values: 0 or 1), switch to display &#8220;powered by bstat&#8221; credit<br />
<span style="font-family:monospace; color:#00ff00;">graph_accurate</span> (acceptable values: 0 or 1), make smooth, accurate graphs or fuzzy (but not inaccurate) graphs</p>
<p>Example:</p>
<pre>&lt;h3&gt;Story pulse&lt;/h3&gt;&lt;?php bstat_pulse($id, 525, 1, 1, 1); ?&gt;</pre>
<ul>
<li>bstat_hitit</p>
<p>The hamster on a wheel that makes it all work. It records hits for each page load, and hits for each incoming search term.<br />&nbsp;</li>
</ul>
<p><strong>This function is no longer necessary</strong>, as it is executed automatically via a plugin hook that runs every time the footer is called. Still, it&#8217;s around if you have content that you want to track outside that scope.</p>
<p>Example:</p>
<pre>&lt;?php // this is how it used to work, but it's automated now...
	global $id;
    if (!is_single() &#038;&#038; !is_page()) $id = 0;
	bstat_hitit($id, &quot;read&quot;);
	?&gt;
</pre>
<p><strong>note:</strong> (be careful of any &quot;curly quotes&quot; that might have been accidentally/automagically inserted in code samples)</p>
<h1 id="10900_known-bugs_1" >Known Bugs</h1>
<p>The search word highlighting routine seems to still be buggy. Expect it to mis-recognize referrers, and one tester reported that it caused content not to display. Go ahead and enable it to see how cool it will be in b3, when it works, but I suggest disabling it for the moment.</p>
<p><a href="http://blog.ryaneby.com/">Ryan Eby</a> reminded me that I use a whole bunch of short PHP open tags (&#8221;&lt;?&#8221; where I should have  used &#8220;&lt;?php&#8221;). </p>
<p><a href="http://nosheep.net/">Zach</a> pointed out that I&#8217;ve been sort of sloppy about using double-quotes where I should use single quotes and not single-quoting my array indices. All of this <a href="http://maisonbisson.com/blog/post/10938/">can add up</a> to an <a href="http://maisonbisson.com/blog/post/10862/">unnecessary performance hit</a> for high traffic sites (30,000 + daily page loads).</p>
<p><tags>beta, blog pulse, bstat, bstats, bsuggestive, bsuite, graph, plugin, pulse, recommendation system, recommendations, recommender, recommending, referrer, related content, search engine highlighting, search term, search term highlighting, sehl, statistics, stats, stats tracking, tag, tag management, tag relationships, tags, usage, wordpress, wordpress plugin</tags></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/bsuite/feed/</wfw:commentRss>
		<slash:comments>115</slash:comments>
		</item>
		<item>
		<title>bstat Beta 4 Release</title>
		<link>http://maisonbisson.com/blog/bsuite/</link>
		<comments>http://maisonbisson.com/blog/bsuite/#comments</comments>
		<pubDate>Tue, 19 Jul 2005 05:58:21 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[blog pulse]]></category>
		<category><![CDATA[bstat]]></category>
		<category><![CDATA[bstats]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[pulse]]></category>
		<category><![CDATA[referrer]]></category>
		<category><![CDATA[search term]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[stats tracking]]></category>
		<category><![CDATA[usage]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://www.maisonbisson.com/blog/?p=10685</guid>
		<description><![CDATA[
[[pageindex]]UPDATE: shout outs to Zach, Cliff, Justin, and Thomas who&#8217;ve submitted bug reports. Their feedback has been rolled in to the B4 July 20 release, available now (look for the link below).
This is likely the last release before the code gets bundled into bsuite (more details on that later).
Changes
This documentation supersedes any previous documentation. 
More [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-10685"><!-- &nbsp; --></abbr>
<p>[[pageindex]]<strong>UPDATE:</strong> shout outs to <a href="http://nosheep.net/">Zach</a>, <a href="http://spiralbound.net/">Cliff</a>, <a href="http://www.callblog.net/">Justin</a>, and <a href="http://mediumbagel.org/">Thomas</a> who&#8217;ve submitted bug reports. Their feedback has been rolled in to the B4 July 20 release, available now (look for the link below).</p>
<p>This is likely the last release before the code gets bundled into <strong>bsuite</strong> (more details on that later).</p>
<p><strong>Changes</strong></p>
<p>This documentation supersedes any previous documentation. </p>
<p>More changes to the bstat_pulse() function; bstat_pulse_style() is no longer used. It&#8217;s been replaced by a flag in the call. See the usage example to understand. Want to customize the style? Start with that example, look at the XHTML it outputs, work from there. <strong>UPDATE</strong> thanks to <a href="http://nosheep.net/">Zach</a>, these parameters are all optional. You can call it with nothing more than <strong>&#8220;bstat_pulse()&#8221;</strong>, if that&#8217;s your thing. Still, I&#8217;d recommend using the full example below.</p>
<p>There are a lot of improvements to the management console. The number of lines to display for each category and the date range (past day, week, month, etc.) are now configurable.</p>
<p><strong>Quick Start Installation</strong></p>
<ul>
<li>Download and unzip <a href="http://homepage.mac.com/misterbisson/projects/bstat.zip">bstat.zip</a><br />&nbsp;</li>
<li>Place bstat.php in you wp-content/plugins directory<br />&nbsp;</li>
<li>Place spacer.gif in your wp-content directory<br />&nbsp;</li>
<li>Log in to your WordPress <a href="http://codex.wordpress.org/Administration_Panels">admin panel</a> and <a href="http://codex.wordpress.org/Managing_Plugins#Plugin_management">activate the plugin</a>, then visit the new bstat submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Options_-_Configuration_Settings">options tab</a>. This will allow bstat to create its database tables.<br />&nbsp;</li>
<li>Add the <span style="font-family:monospace;">bstat_hitit</span> function to the <a href="http://codex.wordpress.org/Theme_Development#Basic_Templates">footer.php</a> of your theme (or in some other place where it will be called once for each page load). This starts the counting; you can see the results in the bstat submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Manage_-_Change_your_content">manage tab</a> of the WordPress admin panel.</li>
</ul>
<p>In order to view the bstat results on your public pages, you&#8217;ll need to the bstat display functions to your pages.<span id="more-10685"></span></p>
<h1 id="10685_using-bstat-function_1" >Using bstat Functions</h1>
<ul>
<li>bstat_hitit</li>
</ul>
<p>It is essential that <span style="font-family:monospace;">bstat_hitit</span> be activated once (and only once) for every page load. In most themes (including the default and classic), it works perfectly when added to the bottom of the footer.php file.</p>
<pre>&lt;?php // this is the part that makes the bstats plugin work...
	global $id;
	if (!is_single()) $id = 0;
	bstat_hitit($id, &quot;read&quot;);
	?&gt;
</pre>
<p>(be careful of any &quot;curly quotes&quot; that might have been inserted in code samples)</p>
<p>Other functions are used to display lists of top stories, recently commented stories, recent comments, recent incoming search terms, etc. Most of these functions take similar arguments and output their results in similar ways.</p>
<p><strong>Today&#8217;s Stats</strong></p>
<ul>
<li>bstat_todaypop</li>
<li>bstat_todayrefs</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_todaypop</span> and <span style="font-family:monospace;">bstat_todayrefs</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_todaypop({</span><span style="color:#00ff00;">count</span>}, &quot;{<span style="color:#00ff00;">before</span>}&quot;, &quot;{<span style="color:#00ff00;">after</span>}&quot;);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Today's Most Popular&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_todaypop(15, &quot;&lt;li&gt;&quot;, &quot;&lt;/li&gt;\n&quot;); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Recent Stats</strong></p>
<ul>
<li>bstat_recentpop</li>
<li>bstat_recentrefs</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_recentpop</span> and <span style="font-family:monospace;">bstat_recentrefs</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_recentrefs({</span><span style="color:#00ff00;">count</span>}, &quot;{<span style="color:#00ff00;">days</span>}&quot;, &quot;{<span style="color:#00ff00;">before</span>}&quot;, &quot;{<span style="color:#00ff00;">after</span>}&quot;);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">days</span> is the number of days back to look<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Incoming Search Terms This Week&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_recentrefs(15, 7, &quot;&lt;li&gt;&quot;, &quot;&lt;/li&gt;\n&quot;); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Recent Discussion</strong></p>
<ul>
<li>bstat_discussionbypost</li>
<li>bstat_discussionbycomment</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_discussionbypost</span> and <span style="font-family:monospace;">bstat_discussionbycomment</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_discussionbypost({</span><span style="color:#00ff00;">count</span>}, &quot;{<span style="color:#00ff00;">before</span>}&quot;, &quot;{<span style="color:#00ff00;">after</span>}&quot;);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Incoming Search Terms This Week&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_discussionbypost(15, &quot;&lt;li&gt;&quot;, &quot;&lt;/li&gt;\n&quot;); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Special Functions</strong></p>
<ul>
<li>bstat_refsforpost</li>
</ul>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_refsforpost({</span><span style="color:#00ff00;">post_id</span>}, &quot;{<span style="color:#00ff00;">before</span>}&quot;, &quot;{<span style="color:#00ff00;">after</span>}&quot;);</p>
<p><span style="font-family:monospace; color:#00ff00;">post_id</span> is the post_id for the story, usually provided by a WP variable<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h3&gt;All incoming search terms for this post&lt;/h3&gt;
&lt;small&gt;&lt;?php bstat_refsforpost($id, &quot; &quot;, &quot; -&quot;); ?&gt;&lt;/small&gt;
</pre>
<ul>
<li>bstat_pulse</li>
</ul>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_pulse({</span><span style="color:#00ff00;">post_id</span>}, {<span style="color:#00ff00;">max_width</span>}, {<span style="color:#00ff00;">display_text</span>}, {<span style="color:#00ff00;">display_credit</span>}, {<span style="color:#00ff00;">insert_styles</span>});</p>
<p><span style="font-family:monospace; color:#00ff00;">post_id</span> is the post_id for the story, usually provided by a WP variable<br />
<span style="font-family:monospace; color:#00ff00;">max_width</span> is the maximum width the graph maw run<br />
<span style="font-family:monospace; color:#00ff00;">display_text</span> (acceptable values: 0 or 1), switch to display stats for total views and average views per day<br />
<span style="font-family:monospace; color:#00ff00;">display_credit</span> (acceptable values: 0 or 1), switch to display &#8220;powered by bstat&#8221; credit<br />
<span style="font-family:monospace; color:#00ff00;">insert_styles</span> (acceptable values: 0 or 1), switch to output styles and wrap it in a div</p>
<p>Example:</p>
<pre>&lt;h3&gt;Story pulse&lt;/h3&gt;&lt;?php bstat_pulse($id, 525, 1, 1, 1); ?&gt;</pre>
<h1 id="10685_function-description_1" >Function Descriptions</h1>
<ul>
<li>bstat_hitit</p>
<p>The hamster on a wheel that makes it all work. It records hits for each page load, and hits for each incoming search term.<br />&nbsp;</li>
<li>bstat_todaypop
<p>displays top stories for today only.<br />&nbsp;</li>
<li>bstat_recentpop
<p>displays top stories for the past x days. This function reveals more useful data on sites with low traffic, but is somewhat slower than bstat_todaypop.<br />&nbsp;</li>
<li>bstat_todayrefs
<p>displays top incoming search terms for today only.<br />&nbsp;</li>
<li>bstat_recentrefs
<p>displays top incoming search terms for the past x days. This function reveals more useful data on sites with low traffic, but is somewhat slower than bstat_todayrefs.<br />&nbsp;</li>
<li>bstat_refsforpost
<p>displays all incoming search terms for a specific post.<br />&nbsp;</li>
<li>bstat_discussionbypost
<p>displays recently commented posts. Each post will appear only once.<br />&nbsp;</li>
<li>bstat_discussionbycomment
<p>displays recent comments (and commenter). Better on sites with lots of community interaction.<br />&nbsp;</li>
<li>bstat_pulse
<p>displays the &quot;pulse&quot; graph of hits over time.</li>
</ul>
<h1 id="10685_options_1" >Options</h1>
<p>The bstat submenu of the options tab has three configurable settings:</p>
<ul>
<li>Make accurate pulse graphs</p>
<p>The graphs look best when you&#8217;ve got a few months of history to feed them. To fill out the graphs for new stories (and when you&#8217;re new to bstat), the pulse function will do some simple interpolation. The question here is if you want it to look jittery (and somewhat less accurate) or smooth (and more accurate). I prefer the jittery look, but you can do what you want.<br />&nbsp;</li>
<li>Filter incoming search terms using comment moderation and blacklist words.
<p>Referrer spam is as much of a problem as trackback spam. There are a few tricks in bstat to prevent the problem, but here&#8217;s one you can configure. Selecting this option tells bstat to not display search terms that contain words in your <a href="http://codex.wordpress.org/Discussion_Options#Comment_Moderation">moderation list or blacklist</a>.</li>
<li>Ignore hits from these IP numbers.
<p>Sites with low traffic may find that activity by authors severely skews the stats tracking. Enter an IP address here to ignore it.</li>
</ul>
<p><!-- technorati tags start --></p>
<p style="text-align:right;font-size:10px;">Tags: <a href="http://technorati.com/tag/beta" rel="tag">beta</a>, <a href="http://technorati.com/tag/blog pulse" rel="tag">blog pulse</a>, <a href="http://technorati.com/tag/bstat" rel="tag">bstat</a>, <a href="http://technorati.com/tag/bstats" rel="tag">bstats</a>, <a href="http://technorati.com/tag/graph" rel="tag">graph</a>, <a href="http://technorati.com/tag/plugin" rel="tag">plugin</a>, <a href="http://technorati.com/tag/pulse" rel="tag">pulse</a>, <a href="http://technorati.com/tag/referrer" rel="tag">referrer</a>, <a href="http://technorati.com/tag/search term" rel="tag">search term</a>, <a href="http://technorati.com/tag/statistics" rel="tag">statistics</a>, <a href="http://technorati.com/tag/stats tracking" rel="tag">stats tracking</a>, <a href="http://technorati.com/tag/stats" rel="tag">stats</a>, <a href="http://technorati.com/tag/usage" rel="tag">usage</a>, <a href="http://technorati.com/tag/wordpress plugin" rel="tag">wordpress plugin</a>, <a href="http://technorati.com/tag/wordpress" rel="tag">wordpress</a></p>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/bsuite/feed/</wfw:commentRss>
		<slash:comments>44</slash:comments>
		</item>
		<item>
		<title>bStat Features</title>
		<link>http://maisonbisson.com/blog/post/10664/bstat-features/</link>
		<comments>http://maisonbisson.com/blog/post/10664/bstat-features/#comments</comments>
		<pubDate>Sat, 09 Jul 2005 09:37:12 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[bloggers]]></category>
		<category><![CDATA[bstat]]></category>
		<category><![CDATA[bstats]]></category>
		<category><![CDATA[hit counters]]></category>
		<category><![CDATA[live stats]]></category>
		<category><![CDATA[logs]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[pmachine]]></category>
		<category><![CDATA[pulse]]></category>
		<category><![CDATA[search terms]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[stats tracking]]></category>
		<category><![CDATA[traffic patterns]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordspress plugin]]></category>

		<guid isPermaLink="false">http://www.maisonbisson.com/blog/?p=10664</guid>
		<description><![CDATA[
UPDATE: bstat has been updated.
bStat is a hit and search term stats tracking plugin for WordPress. In addition to reporting lists of popular stories and popular search terms, it will report recent comments and a unique “pulse” graph showing the activity for a story or the entire blog over time.
The documentation for the current release [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-10664"><!-- &nbsp; --></abbr>
<p><strong>UPDATE:</strong> <a href="http://maisonbisson.com/blog/search/bstat">bstat has been updated</a>.</p>
<p>bStat is a hit and search term stats tracking plugin for WordPress. In addition to reporting lists of popular stories and popular search terms, it will report recent comments and a unique “<a href="http://www.maisonbisson.com/blog/post/10623/">pulse</a>” graph showing the activity for a story or the entire blog over time.</p>
<p>The documentation for the <a href="http://www.maisonbisson.com/blog/post/10662/">current release</a> (b3, as of July 9, 2005) explains the public functions and their use. I believe they reveal themselves in their names, so here&#8217;s a list of most of them:</p>
<ul>
<li>bstat_todaypop</li>
<li>bstat_recentpop</li>
<li>bstat_todayrefs</li>
<li>bstat_recentrefs</li>
<li>bstat_refsforpost</li>
<li>bstat_discussionbypost</li>
<li>bstat_discussionbycomment</li>
<li>bstat_pulse</li>
</ul>
<p>You can see them at work in the column at <a href="http://maisonbisson.com/blog/#">right</a>. Look for the headings “Today&#8217;s Most Popular”, “Recently Commented”, and “Top Incoming Search Terms” Today. I built many of these features into my old <a href="http://www.pmachine.com/pm/">pMachine</a>-based site and you&#8217;ll find a <a href="http://scilib.typepad.com/science_library_pad/2005/05/dear_blog_chang.html">wish-list of features</a> at Richard Akerman&#8217;s SciLib Pad. Among the many features not yet implemented is RSS output of these lists.</p>
<p>Aside from the “pulse,” the most unique feature of bStat is the way it counts stats. Many hit tracking packages either increment a single counter for hits over the life-time of a story or create a detailed record for every hit. Most people agree that “hit counters” offer too little detail, but often, those detailed logs provide too much. Reporting from those detailed logs incurs a big CPU hit, forcing bloggers to compile stats at regular intervals and never offering “live” stats to the public. bStat solves this by creating a hit counter for each story each day. This allows us to see changing traffic patterns over time. Separately, bStat tracks incoming search terms in a similar manner. The result is a reasonably detailed and lightning fast stats tracking app.</p>
<p><!-- technorati tags start -->
<p style="text-align:right;font-size:10px;">tags: <a href="http://technorati.com/tag/blog" rel="tag">blog</a>, <a href="http://technorati.com/tag/bloggers" rel="tag">bloggers</a>, <a href="http://technorati.com/tag/bstat" rel="tag">bstat</a>, <a href="http://technorati.com/tag/bstats" rel="tag">bstats</a>, <a href="http://technorati.com/tag/hit counters" rel="tag">hit counters</a>, <a href="http://technorati.com/tag/live stats" rel="tag">live stats</a>, <a href="http://technorati.com/tag/logs" rel="tag">logs</a>, <a href="http://technorati.com/tag/plugin" rel="tag">plugin</a>, <a href="http://technorati.com/tag/pmachine" rel="tag">pmachine</a>, <a href="http://technorati.com/tag/pulse" rel="tag">pulse</a>, <a href="http://technorati.com/tag/search terms" rel="tag">search terms</a>, <a href="http://technorati.com/tag/statistics" rel="tag">statistics</a>, <a href="http://technorati.com/tag/stats" rel="tag">stats</a>, <a href="http://technorati.com/tag/stats tracking" rel="tag">stats tracking</a>, <a href="http://technorati.com/tag/traffic patterns" rel="tag">traffic patterns</a>, <a href="http://technorati.com/tag/wordpress" rel="tag">wordpress</a>, <a href="http://technorati.com/tag/wordspress plugin" rel="tag">wordspress plugin</a></p>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/10664/bstat-features/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>bstat Beta 3 Release</title>
		<link>http://maisonbisson.com/blog/post/10662/bstat-beta-3-release/</link>
		<comments>http://maisonbisson.com/blog/post/10662/bstat-beta-3-release/#comments</comments>
		<pubDate>Wed, 06 Jul 2005 07:33:43 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[blog pulse]]></category>
		<category><![CDATA[bstat]]></category>
		<category><![CDATA[bstats]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[pulse]]></category>
		<category><![CDATA[referrer]]></category>
		<category><![CDATA[search term]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[stats tracking]]></category>
		<category><![CDATA[usage]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://www.maisonbisson.com/blog/post/10662/</guid>
		<description><![CDATA[
UPDATE: bstat has been updated.
Beta 2 never went public. This is beta 3.
Changes
This documentation supersedes any previous documentation. 
The bstat_pulse() function has been improved and now uses your CSS for appearance. Call bstat_pulse_style() to add my default styles inline if you don&#8217;t want to modify your CSS. Also, bstat_pulse() now has two switches to control [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-10662"><!-- &nbsp; --></abbr>
<p><strong>UPDATE:</strong> <a href="http://maisonbisson.com/blog/search/bstat">bstat has been updated</a>.</p>
<p>Beta 2 never went public. This is beta 3.</p>
<p><strong>Changes</strong></p>
<p>This documentation supersedes any previous documentation. </p>
<p>The bstat_pulse() function has been improved and now uses your CSS for appearance. Call bstat_pulse_style() to add my default styles inline if you don&#8217;t want to modify your CSS. Also, bstat_pulse() now has two switches to control what it displays. Please take a look at the usage guide below for how to call this function now.</p>
<p>Also, take note of new example of how to call the bstat_hitit function: &#8220;if(is_home())&#8221; has changed to &#8220;if(!is_single())&#8221;. This corrects a problem with the way bstat was recording activity on any page with more than one story (search, archive, etc). </p>
<p>The next two features are for Zach. Links generated by the functions now use your WordPress permalink preferences instead of the ?p=XXX stuff.</p>
<p>It is now possible to exclude certain IP numbers from your hit counting. You&#8217;ll see controls for this in the bstat submenu of the options tab.</p>
<p>Search engine highlighting snuck into the last release, but has been buggy for some. It&#8217;s disabled in this release and will eventually be folded into a new plugin called bsuggestive. Yes, it&#8217;s <b>bsuggestive</b>. If you&#8217;d like to play with it, you can uncomment the likely looking line at the bottom.</p>
<p>There&#8217;s some ad tracking code in there, but I&#8217;m leaving it undocumented for now.</p>
<p><strong>Quick Start Installation</strong></p>
<ul>
<li>Download and unzip <a href="http://homepage.mac.com/misterbisson/projects/bstat.zip">bstat.zip</a><br />&nbsp;</li>
<li>Place bstat.php in you wp-content/plugins directory<br />&nbsp;</li>
<li>Place spacer.gif in your wp-content directory<br />&nbsp;</li>
<li>Log in to your WordPress <a href="http://codex.wordpress.org/Administration_Panels">admin panel</a> and <a href="http://codex.wordpress.org/Managing_Plugins#Plugin_management">activate the plugin</a>, then visit the new bstat submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Options_-_Configuration_Settings">options tab</a>. This will allow bstat to create its database tables.<br />&nbsp;</li>
<li>Add the <span style="font-family:monospace;">bstat_hitit</span> function to the <a href="http://codex.wordpress.org/Theme_Development#Basic_Templates">footer.php</a> of your theme (or in some other place where it will be called once for each page load). This starts the counting; you can see the results in the bstat submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Manage_-_Change_your_content">manage tab</a> of the WordPress admin panel.</li>
</ul>
<p>In order to view the bstat results on your public pages, you&#8217;ll need to the bstat display functions to your pages.</p>
<h1>Using bstat Functions</h1>
<ul>
<li>bstat_hitit</li>
</ul>
<p>It is essential that <span style="font-family:monospace;">bstat_hitit</span> be activated once (and only once) for every page load. In most themes (including the default and classic), it works perfectly when added to the bottom of the footer.php file.</p>
<pre>&lt;?php // this is the part that makes the bstats plugin work...
	global $id;
	if (!is_single()) $id = 0;
	bstat_hitit($id, &quot;read&quot;);
	?&gt;
</pre>
<p>(be careful of any &quot;curly quotes&quot; that might have been inserted in code samples)</p>
<p>Other functions are used to display lists of top stories, recently commented stories, recent comments, recent incoming search terms, etc. Most of these functions take similar arguments and output their results in similar ways.</p>
<p><strong>Today&#8217;s Stats</strong></p>
<ul>
<li>bstat_todaypop</li>
<li>bstat_todayrefs</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_todaypop</span> and <span style="font-family:monospace;">bstat_todayrefs</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_todaypop({</span><span style="color:#00ff00;">count</span>}, &quot;{<span style="color:#00ff00;">before</span>}&quot;, &quot;{<span style="color:#00ff00;">after</span>}&quot;);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Today's Most Popular&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_todaypop(15, &quot;&lt;li&gt;&quot;, &quot;&lt;/li&gt;\n&quot;); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Recent Stats</strong></p>
<ul>
<li>bstat_recentpop</li>
<li>bstat_recentrefs</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_recentpop</span> and <span style="font-family:monospace;">bstat_recentrefs</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_recentrefs({</span><span style="color:#00ff00;">count</span>}, &quot;{<span style="color:#00ff00;">days</span>}&quot;, &quot;{<span style="color:#00ff00;">before</span>}&quot;, &quot;{<span style="color:#00ff00;">after</span>}&quot;);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">days</span> is the number of days back to look<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Incoming Search Terms This Week&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_recentrefs(15, 7, &quot;&lt;li&gt;&quot;, &quot;&lt;/li&gt;\n&quot;); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Recent Discussion</strong></p>
<ul>
<li>bstat_discussionbypost</li>
<li>bstat_discussionbycomment</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_discussionbypost</span> and <span style="font-family:monospace;">bstat_discussionbycomment</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_discussionbypost({</span><span style="color:#00ff00;">count</span>}, &quot;{<span style="color:#00ff00;">before</span>}&quot;, &quot;{<span style="color:#00ff00;">after</span>}&quot;);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Incoming Search Terms This Week&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_discussionbypost(15, &quot;&lt;li&gt;&quot;, &quot;&lt;/li&gt;\n&quot;); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Special Functions</strong></p>
<ul>
<li>bstat_refsforpost</li>
</ul>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_refsforpost({</span><span style="color:#00ff00;">post_id</span>}, &quot;{<span style="color:#00ff00;">before</span>}&quot;, &quot;{<span style="color:#00ff00;">after</span>}&quot;);</p>
<p><span style="font-family:monospace; color:#00ff00;">post_id</span> is the post_id for the story, usually provided by a WP variable<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h3&gt;All incoming search terms for this post&lt;/h3&gt;
&lt;small&gt;&lt;?php bstat_refsforpost($id, &quot; &quot;, &quot; -&quot;); ?&gt;&lt;/small&gt;
</pre>
<ul>
<li>bstat_pulse</li>
</ul>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_pulse({</span><span style="color:#00ff00;">post_id</span>}, {<span style="color:#00ff00;">max_width</span>}, {<span style="color:#00ff00;">display_text</span>}, {<span style="color:#00ff00;"> display_credit</span>});</p>
<p><span style="font-family:monospace; color:#00ff00;">post_id</span> is the post_id for the story, usually provided by a WP variable<br />
<span style="font-family:monospace; color:#00ff00;">max_width</span> is the maximum width the graph maw run<br />
<span style="font-family:monospace; color:#00ff00;">display_text</span> (acceptable values: 0 or 1), switch to display stats for total views and average views per day<br />
<span style="font-family:monospace; color:#00ff00;">display_credit</span> (acceptable values: 0 or 1), switch to display &#8220;powered by bstat&#8221; credit</p>
<p>Example:</p>
<pre>&lt;?php bstat_pulse_style(); ?&gt;
&lt;h3&gt;Story pulse&lt;/h3&gt;&lt;?php bstat_pulse($id, 525, 1, 1); ?&gt;</pre>
<h1>Function Descriptions</h1>
<ul>
<li>bstat_hitit</p>
<p>The hamster on a wheel that makes it all work. It records hits for each page load, and hits for each incoming search term.<br />&nbsp;</li>
<li>bstat_todaypop
<p>displays top stories for today only.<br />&nbsp;</li>
<li>bstat_recentpop
<p>displays top stories for the past x days. This function reveals more useful data on sites with low traffic, but is somewhat slower than bstat_todaypop.<br />&nbsp;</li>
<li>bstat_todayrefs
<p>displays top incoming search terms for today only.<br />&nbsp;</li>
<li>bstat_recentrefs
<p>displays top incoming search terms for the past x days. This function reveals more useful data on sites with low traffic, but is somewhat slower than bstat_todayrefs.<br />&nbsp;</li>
<li>bstat_refsforpost
<p>displays all incoming search terms for a specific post.<br />&nbsp;</li>
<li>bstat_discussionbypost
<p>displays recently commented posts. Each post will appear only once.<br />&nbsp;</li>
<li>bstat_discussionbycomment
<p>displays recent comments (and commenter). Better on sites with lots of community interaction.<br />&nbsp;</li>
<li>bstat_pulse
<p>displays the &quot;pulse&quot; graph of hits over time.</li>
<li>bstat_pulse_style
<p>outputs an inline stylesheet for use with bstat_pulse. Suggestion: activate this to see what the default styles are, then add them to your site&#8217;s stylesheet and work from there.</li>
</ul>
<h1>Options</h1>
<p>The bstat submenu of the options tab has three configurable settings:</p>
<ul>
<li>Make accurate pulse graphs</p>
<p>The graphs look best when you&#8217;ve got a few months of history to feed them. To fill out the graphs for new stories (and when you&#8217;re new to bstat), the pulse function will do some simple interpolation. The question here is if you want it to look jittery (and somewhat less accurate) or smooth (and more accurate). I prefer the jittery look, but you can do what you want.<br />&nbsp;</li>
<li>Filter incoming search terms using comment moderation and blacklist words.
<p>Referrer spam is as much of a problem as trackback spam. There are a few tricks in bstat to prevent the problem, but here&#8217;s one you can configure. Selecting this option tells bstat to not display search terms that contain words in your <a href="http://codex.wordpress.org/Discussion_Options#Comment_Moderation">moderation list or blacklist</a>.</li>
<li>Ignore hits from these IP numbers.
<p>Sites with low traffic may find that activity by authors severely skews the stats tracking. Enter an IP address here to ignore it.</li>
</ul>
<p><!-- technorati tags start --></p>
<p style="text-align:right;font-size:10px;">Tags: <a href="http://technorati.com/tag/beta" rel="tag">beta</a>, <a href="http://technorati.com/tag/blog pulse" rel="tag">blog pulse</a>, <a href="http://technorati.com/tag/bstat" rel="tag">bstat</a>, <a href="http://technorati.com/tag/bstats" rel="tag">bstats</a>, <a href="http://technorati.com/tag/graph" rel="tag">graph</a>, <a href="http://technorati.com/tag/plugin" rel="tag">plugin</a>, <a href="http://technorati.com/tag/pulse" rel="tag">pulse</a>, <a href="http://technorati.com/tag/referrer" rel="tag">referrer</a>, <a href="http://technorati.com/tag/search term" rel="tag">search term</a>, <a href="http://technorati.com/tag/statistics" rel="tag">statistics</a>, <a href="http://technorati.com/tag/stats tracking" rel="tag">stats tracking</a>, <a href="http://technorati.com/tag/stats" rel="tag">stats</a>, <a href="http://technorati.com/tag/usage" rel="tag">usage</a>, <a href="http://technorati.com/tag/wordpress plugin" rel="tag">wordpress plugin</a>, <a href="http://technorati.com/tag/wordpress" rel="tag">wordpress</a></p>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/10662/bstat-beta-3-release/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>bstat Beta 1 Release</title>
		<link>http://maisonbisson.com/blog/post/10634/bstat-beta-1-release/</link>
		<comments>http://maisonbisson.com/blog/post/10634/bstat-beta-1-release/#comments</comments>
		<pubDate>Mon, 20 Jun 2005 04:40:24 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[blog pulse]]></category>
		<category><![CDATA[bstat]]></category>
		<category><![CDATA[bstats]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[pulse]]></category>
		<category><![CDATA[referrer]]></category>
		<category><![CDATA[search term]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[stats tracking]]></category>
		<category><![CDATA[usage]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://www.maisonbisson.com/blog/?p=10634</guid>
		<description><![CDATA[
UPDATE: bstat has been updated.
I&#8217;ve finally added a clean admin interface to my bstat WordPress stats tracking plugin and cleaned up the code for release as a public beta.
Quick Start Installation

Download and unzip bstat.zip&#160;
Place bstat.php in you wp-content/plugins directory&#160;
Place spacer.gif in your wp-content directory&#160;
Log in to your WordPress admin panel and activate the plugin, then [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-10634"><!-- &nbsp; --></abbr>
<p><strong>UPDATE:</strong> <a href="http://maisonbisson.com/blog/search/bstat">bstat has been updated</a>.</p>
<p>I&#8217;ve finally added a clean admin interface to my bstat WordPress stats tracking plugin and cleaned up the code for release as a public beta.</p>
<p><strong>Quick Start Installation</strong></p>
<ul>
<li>Download and unzip <a href="http://homepage.mac.com/misterbisson/projects/bstat.zip">bstat.zip</a><br />&nbsp;</li>
<li>Place bstat.php in you wp-content/plugins directory<br />&nbsp;</li>
<li>Place spacer.gif in your wp-content directory<br />&nbsp;</li>
<li>Log in to your WordPress <a href="http://codex.wordpress.org/Administration_Panels">admin panel</a> and <a href="http://codex.wordpress.org/Managing_Plugins#Plugin_management">activate the plugin</a>, then visit the new bstat submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Options_-_Configuration_Settings">options tab</a>. This will allow bstat to create its database tables.<br />&nbsp;</li>
<li>Add the <span style="font-family:monospace;">bstat_hitit</span> function to the <a href="http://codex.wordpress.org/Theme_Development#Basic_Templates">footer.php</a> of your theme (or in some other place where it will be called once for each page load). This starts the counting; you can see the results in the bstat submenu of the <a href="http://codex.wordpress.org/Administration_Panels#Manage_-_Change_your_content">manage tab</a> of the WordPress admin panel.</li>
</ul>
<p>In order to view the bstat results on your public pages, you&#8217;ll need to the bstat display functions to your pages.</p>
<h1>Using bstat Functions</h1>
<ul>
<li>bstat_hitit</li>
</ul>
<p>It is essential that <span style="font-family:monospace;">bstat_hitit</span> be activated once (and only once) for every page load. In most themes (including the default and classic), it works perfectly when added to the bottom of the footer.php file.</p>
<pre>&lt;?php // this is the part that makes the bstats plugin work...
	global $id;
	if (is_home()) $id = 0;
	bstat_hitit($id, “read”);
	?&gt;
</pre>
<p>(be careful of any “curly quotes” that might have been inserted in code samples)</p>
<p>Other functions are used to display lists of top stories, recently commented stories, recent comments, recent incoming search terms, etc. Most of these functions take similar arguments and output their results in similar ways.</p>
<p><strong>Today&#8217;s Stats</strong></p>
<ul>
<li>bstat_todaypop</li>
<li>bstat_todayrefs</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_todaypop</span> and <span style="font-family:monospace;">bstat_todayrefs</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_todaypop({</span><span style="color:#00ff00;">count</span>}, “{<span style="color:#00ff00;">before</span>}”, “{<span style="color:#00ff00;">after</span>}”);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Today's Most Popular&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_todaypop(15, “&lt;li&gt;”, “&lt;/li&gt;\n”); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Recent Stats</strong></p>
<ul>
<li>bstat_recentpop</li>
<li>bstat_recentrefs</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_recentpop</span> and <span style="font-family:monospace;">bstat_recentrefs</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_recentrefs({</span><span style="color:#00ff00;">count</span>}, “{<span style="color:#00ff00;">days</span>}”, “{<span style="color:#00ff00;">before</span>}”, “{<span style="color:#00ff00;">after</span>}”);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">days</span> is the number of days back to look<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Incoming Search Terms This Week&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_recentrefs(15, 7, “&lt;li&gt;”, “&lt;/li&gt;\n”); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Recent Discussion</strong></p>
<ul>
<li>bstat_discussionbypost</li>
<li>bstat_discussionbycomment</li>
</ul>
<p>The functions <span style="font-family:monospace;">bstat_discussionbypost</span> and <span style="font-family:monospace;">bstat_discussionbycomment</span> each take the same arguments.</p>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_discussionbypost({</span><span style="color:#00ff00;">count</span>}, “{<span style="color:#00ff00;">before</span>}”, “{<span style="color:#00ff00;">after</span>}”);</p>
<p><span style="font-family:monospace; color:#00ff00;">count</span> is the total number of results to output<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h2&gt;Incoming Search Terms This Week&lt;/h2&gt;
&lt;ul&gt;&lt;?php bstat_discussionbypost(15, “&lt;li&gt;”, “&lt;/li&gt;\n”); ?&gt;&lt;/ul&gt;
</pre>
<p><strong>Special Functions</strong></p>
<ul>
<li>bstat_refsforpost</li>
</ul>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_refsforpost({</span><span style="color:#00ff00;">post_id</span>}, “{<span style="color:#00ff00;">before</span>}”, “{<span style="color:#00ff00;">after</span>}”);</p>
<p><span style="font-family:monospace; color:#00ff00;">post_id</span> is the post_id for the story, usually provided by a WP variable<br />
<span style="font-family:monospace; color:#00ff00;">before</span> is a string to output before each result<br />
<span style="font-family:monospace; color:#00ff00;">after</span> is a string to output after each result</p>
<p>Example:</p>
<pre>&lt;h3&gt;Top incoming search terms for this post&lt;/h3&gt;
&lt;small&gt;&lt;?php bstat_refsforpost($id, “ ”, “ -”); ?&gt;&lt;/small&gt;
</pre>
<ul>
<li>bstat_pulse</li>
</ul>
<p>Usage:<br />
<span style="font-family:monospace;">bstat_pulse({</span><span style="color:#00ff00;">post_id</span>}, {<span style="color:#00ff00;">max_width</span>});</p>
<p><span style="font-family:monospace; color:#00ff00;">post_id</span> is the post_id for the story, usually provided by a WP variable<br />
<span style="font-family:monospace; color:#00ff00;">max_width</span> is the maximum width the graph maw run</p>
<p>Example:</p>
<pre>&lt;h3&gt;Story pulse&lt;/h3&gt;
&lt;div style='height: 110px; text-align:center;'&gt;
&lt;?php echo bstat_pulse($id, 525); ?&gt;&lt;/div&gt;&lt;br /&gt;</pre>
<h1>Function Descriptions</h1>
<ul>
<li>bstat_hitit</p>
<p>The hamster on a wheel that makes it all work. It records hits for each page load, and hits for each incoming search term.<br />&nbsp;</li>
<li>bstat_todaypop
<p>displays top stories for today only.<br />&nbsp;</li>
<li>bstat_recentpop
<p>displays top stories for the past x days. This function reveals more useful data on sites with low traffic, but is somewhat slower than bstat_todaypop.<br />&nbsp;</li>
<li>bstat_todayrefs
<p>displays top incoming search terms for today only.<br />&nbsp;</li>
<li>bstat_recentrefs
<p>displays top incoming search terms for the past x days. This function reveals more useful data on sites with low traffic, but is somewhat slower than bstat_todayrefs.<br />&nbsp;</li>
<li>bstat_refsforpost
<p>displays all incoming search terms for a specific post.<br />&nbsp;</li>
<li>bstat_discussionbypost
<p>displays recently commented posts. Each post will appear only once.<br />&nbsp;</li>
<li>bstat_discussionbycomment
<p>displays recent comments (and commenter). Better on sites with lots of community interaction.<br />&nbsp;</li>
<li>bstat_pulse
<p>displays the “pulse” graph of hits over time.</li>
</ul>
<h1>Options</h1>
<p>The bstat submenu of the options tab has two configurable settings:</p>
<ul>
<li>Make accurate pulse graphs</p>
<p>The graphs look best when you&#8217;ve got a few months of history to feed them. To fill out the graphs for new stories (and when you&#8217;re new to bstat), the pulse function will do some simple interpolation. The question here is if you want it to look jittery (and somewhat less accurate) or smooth (and more accurate). I prefer the jittery look, but you can do what you want.<br />&nbsp;</li>
<li>Filter incoming search terms using comment moderation and blacklist words.
<p>Referrer spam is as much of a problem as trackback spam. There are a few tricks in bstat to prevent the problem, but here&#8217;s one you can configure. Selecting this option tells bstat to not display search terms that contain words in your <a href="http://codex.wordpress.org/Discussion_Options#Comment_Moderation">moderation list or blacklist</a>.</li>
</ul>
<p><!-- technorati tags start --></p>
<p style="text-align:right;font-size:10px;">Tags: <a href="http://technorati.com/tag/beta" rel="tag">beta</a>, <a href="http://technorati.com/tag/blog pulse" rel="tag">blog pulse</a>, <a href="http://technorati.com/tag/bstat" rel="tag">bstat</a>, <a href="http://technorati.com/tag/bstats" rel="tag">bstats</a>, <a href="http://technorati.com/tag/graph" rel="tag">graph</a>, <a href="http://technorati.com/tag/plugin" rel="tag">plugin</a>, <a href="http://technorati.com/tag/pulse" rel="tag">pulse</a>, <a href="http://technorati.com/tag/referrer" rel="tag">referrer</a>, <a href="http://technorati.com/tag/search term" rel="tag">search term</a>, <a href="http://technorati.com/tag/statistics" rel="tag">statistics</a>, <a href="http://technorati.com/tag/stats tracking" rel="tag">stats tracking</a>, <a href="http://technorati.com/tag/stats" rel="tag">stats</a>, <a href="http://technorati.com/tag/usage" rel="tag">usage</a>, <a href="http://technorati.com/tag/wordpress plugin" rel="tag">wordpress plugin</a>, <a href="http://technorati.com/tag/wordpress" rel="tag">wordpress</a></p>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/10634/bstat-beta-1-release/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>bstat Pulse</title>
		<link>http://maisonbisson.com/blog/post/10623/bstat-pulse/</link>
		<comments>http://maisonbisson.com/blog/post/10623/bstat-pulse/#comments</comments>
		<pubDate>Fri, 10 Jun 2005 11:32:05 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[blog pulse]]></category>
		<category><![CDATA[bstat]]></category>
		<category><![CDATA[bstats]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[pulse]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[stats]]></category>
		<category><![CDATA[stats tracking]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://www.maisonbisson.com/blog/?p=10623</guid>
		<description><![CDATA[

I imported the content of my old referrer tracking database as hits in my new bstat stats datatabase so I could have more data to work with. I mixed this with a fairly simple graphing routine and now we can see the “pulse” of the whole site and each story. Take a look at the [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-10623"><!-- &nbsp; --></abbr>
<p><a href="http://technorati.com/tag/bstat"><img src="http://photos12.flickr.com/18441009_e145e5846d.jpg" alt="bstat Pulse." width="500" height="155" style="background-color: #ffffff; border: solid 2px #000000; margin: 4px 4px 4px 4px; padding: 0px 0px 0px 0px;" /></a></p>
<p>I imported the content of my old referrer tracking database as hits in my new bstat stats datatabase so I could have more data to work with. I mixed this with a fairly simple graphing routine and now we can see the “pulse” of the whole site and each story. Take a look at the bottom of the main page and between the body and comments in the single story pages to see what I mean. The jump in activity at the right of the graph represents the difference between the way I was counting referrers and how I&#8217;m now counting hits (I was only counting referrers from recognized search engines).</p>
<p>One problem I&#8217;ll have to figure out is what to do with new stories for which I have little tracking data, since the graphs for those look ugly. I&#8217;ll eventually do something to interpolate the data and generate more points for the bar graph.</p>
<p><strong>Update:</strong> the plugin is now doing some really simple interpolation. It looks ugly, but not as ugly as it used to.</p>
<p><strong>Update2:</strong> the interpolation looks better and more &#8216;pulse-like&#8217; now, though at the cost of some accuracy. The next release will include an option to choose either accurate or jittery graphs.<!-- technorati tags start -->
<p style="text-align:right;font-size:10px;">Technorati Tags: <a href="http://technorati.com/tag/blog pulse" rel="tag">blog pulse</a>, <a href="http://technorati.com/tag/bstat" rel="tag">bstat</a>, <a href="http://technorati.com/tag/bstats" rel="tag">bstats</a>, <a href="http://technorati.com/tag/plugin" rel="tag">plugin</a>, <a href="http://technorati.com/tag/pulse" rel="tag">pulse</a>, <a href="http://technorati.com/tag/statistics" rel="tag">statistics</a>, <a href="http://technorati.com/tag/stats" rel="tag">stats</a>, <a href="http://technorati.com/tag/stats tracking" rel="tag">stats tracking</a>, <a href="http://technorati.com/tag/wordpress" rel="tag">wordpress</a>, <a href="http://technorati.com/tag/wordpress plugin" rel="tag">wordpress plugin</a></p>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/10623/bstat-pulse/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>