<?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>Relevanssi</title>
	<atom:link href="http://www.relevanssi.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.relevanssi.com</link>
	<description>WordPress search done right</description>
	<lastBuildDate>Sat, 12 May 2012 03:10:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Premium 1.7.9</title>
		<link>http://www.relevanssi.com/release-notes/premium-1-7-9/</link>
		<comments>http://www.relevanssi.com/release-notes/premium-1-7-9/#comments</comments>
		<pubDate>Thu, 19 Apr 2012 03:46:13 +0000</pubDate>
		<dc:creator>Mikko Saari</dc:creator>
				<category><![CDATA[Release Notes]]></category>

		<guid isPermaLink="false">http://www.relevanssi.com/?p=550</guid>
		<description><![CDATA[Simple bug fix release. 1.7.8 had some overeager optimization attempts that failed and caused some searches simply not work. I removed those and everything should work now.]]></description>
			<content:encoded><![CDATA[</p>
<p>Simple bug fix release. 1.7.8 had some overeager optimization attempts that failed and caused some searches simply not work. I removed those and everything should work now.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.relevanssi.com/release-notes/premium-1-7-9/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Premium 1.7.8</title>
		<link>http://www.relevanssi.com/release-notes/premium-1-7-8/</link>
		<comments>http://www.relevanssi.com/release-notes/premium-1-7-8/#comments</comments>
		<pubDate>Wed, 18 Apr 2012 10:21:52 +0000</pubDate>
		<dc:creator>Mikko Saari</dc:creator>
				<category><![CDATA[Release Notes]]></category>
		<category><![CDATA[relevanssi_modify_wp_query_filter]]></category>

		<guid isPermaLink="false">http://www.relevanssi.com/?p=546</guid>
		<description><![CDATA[I got a very useful bug report yesterday, which prompted me to finish up version 1.7.8. There are some feature requests I didn&#8217;t have time to do, but I managed to fix several bugs. Relevanssi indexed user profiles on update, whether the option was checked or not. Relevanssi tried to index taxonomy terms on update, [...]]]></description>
			<content:encoded><![CDATA[</p>
<p>I got a very useful bug report yesterday, which prompted me to finish up version 1.7.8. There are some feature requests I didn&#8217;t have time to do, but I managed to fix several bugs.</p>
<ul>
<li>Relevanssi indexed user profiles on update, whether the option was checked or not.</li>
<li>Relevanssi tried to index taxonomy terms on update, but couldn&#8217;t, because there was another bug that prevented it.</li>
<li>In some cases stripping tags would cause words to be joined. Tags are now replaced with spaces to make sure that doesn&#8217;t happen.</li>
<li>Fixed problems with undefined variables.</li>
<li>Sometimes text would have non-typical space characters left in it, causing trouble. Relevanssi can now remove those spaces.</li>
<li>Relevanssi had some problems with <a href="http://wordpress.org/extend/plugins/wp-footnotes/">WP-Footnotes</a> plugin, fixed that.</li>
<li>New filter <em>relevanssi_modify_wp_query_filter</em> lets you modify $wp_query before it is passed to Relevanssi.</li>
</ul>
<p>The new filter passes a $wp_query object, which you can then modify before Relevanssi sees it. This can be very useful in some situations.</p>
<p>Please let me know if the new tag stripping function causes you problems.</p>
<p>The relevant bugs will be squished from the free version in the next version, which will be done in couple of days or so.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.relevanssi.com/release-notes/premium-1-7-8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Free 2.9.14</title>
		<link>http://www.relevanssi.com/release-notes/free-2-9-14/</link>
		<comments>http://www.relevanssi.com/release-notes/free-2-9-14/#comments</comments>
		<pubDate>Sun, 04 Mar 2012 09:00:02 +0000</pubDate>
		<dc:creator>Mikko Saari</dc:creator>
				<category><![CDATA[Release Notes]]></category>

		<guid isPermaLink="false">http://www.relevanssi.com/?p=535</guid>
		<description><![CDATA[Small fix: Relevanssi will now index pending and future posts. These posts are only shown in the admin search.]]></description>
			<content:encoded><![CDATA[</p>
<p>Small fix:</p>
<ul>
<li>Relevanssi will now index <em>pending</em> and <em>future</em> posts. These posts are only shown in the admin search.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.relevanssi.com/release-notes/free-2-9-14/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Premium 1.7.7</title>
		<link>http://www.relevanssi.com/release-notes/premium-1-7-7/</link>
		<comments>http://www.relevanssi.com/release-notes/premium-1-7-7/#comments</comments>
		<pubDate>Sun, 04 Mar 2012 08:42:29 +0000</pubDate>
		<dc:creator>Mikko Saari</dc:creator>
				<category><![CDATA[Release Notes]]></category>

		<guid isPermaLink="false">http://www.relevanssi.com/?p=530</guid>
		<description><![CDATA[Relevanssi Premium 1.7.7 fixes a major bug and adds a couple of neat new features. It is a recommended update and a mandatory update, if you use the &#8220;hide this post from index&#8221; checkbox feature. Fixed a major bug that can make indexing fail when the user has manually chosen to hide posts from the [...]]]></description>
			<content:encoded><![CDATA[</p>
<div>Relevanssi Premium 1.7.7 fixes a major bug and adds a couple of neat new features. It is a recommended update and a mandatory update, if you use the &#8220;hide this post from index&#8221; checkbox feature.</div>
<ul>
<li>Fixed a major bug that can make indexing fail when the user has manually chosen to hide posts from the index.</li>
<li>Removed default values from text columns in the database.</li>
<li>Relevanssi will now index pending and future posts. These posts are only shown in the admin search.</li>
<li>Using multiple taxonomies in search will now use OR logic between term within the same taxonomy and AND logic between different taxonomies. Thanks to Jonathan Liuti.</li>
<li>Added a shortcode &#8216;noindex&#8217; that can be used to prevent parts of posts being indexed. In order to use the shortcode, you must enable expanding shortcodes in indexing.</li>
</ul>
<p>The noindex shortcode does nothing outside indexing. When a post with the shortcode is indexed, all content inside the shortcode disappears before the post is indexed. In order for the feature work, you need to enable the shortcode expansion.</p>
<p>The logic when using multiple taxonomies is now clearer. There&#8217;s OR logic between terms in the same taxonomy and AND logic between different taxonomies. Sounds complicated? Here&#8217;s an example from <a href="https://twitter.com/#!/JohnLiuti">Jonathan Liuti</a>, who refined the logic:</p>
<p>http://www.example.com/?s=term&#038;taxonomy=country|country|topic|topic&#038;term=Finland|Belgium|crisis|war</p>
<p>This search would return all posts that fulfill all these conditions</p>
<ul>
<li>include the word &#8220;term&#8221;</li>
<li>have taxonomy <em>country</em> set to Finland OR Belgium OR both</li>
<li>have taxonomy <em>topic</em> set to crisis OR war OR both</li>
</ul>
<p>Hopefully this is the logic most people expect from the search; at least to me it makes lots of sense.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.relevanssi.com/release-notes/premium-1-7-7/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Free 2.9.13, Premium 1.7.6</title>
		<link>http://www.relevanssi.com/release-notes/free-2-9-13-premium-1-7-6/</link>
		<comments>http://www.relevanssi.com/release-notes/free-2-9-13-premium-1-7-6/#comments</comments>
		<pubDate>Sat, 11 Feb 2012 09:37:05 +0000</pubDate>
		<dc:creator>Mikko Saari</dc:creator>
				<category><![CDATA[Release Notes]]></category>

		<guid isPermaLink="false">http://www.relevanssi.com/?p=520</guid>
		<description><![CDATA[Small maintenance updates to both free and Premium, mostly with the same changes. Here&#8217;s what&#8217;s new in both: Fixed a mistake in the FAQ: correct post date parameter is &#8216;post_date&#8217;, not &#8216;date&#8217;. New filter &#8216;relevanssi_results&#8217; added. This filter will process an array with (post-&#62;ID =&#62; document weight) pairs. Private and draft posts were deleted from [...]]]></description>
			<content:encoded><![CDATA[</p>
<p>Small maintenance updates to both free and Premium, mostly with the same changes.</p>
<p>Here&#8217;s what&#8217;s new in both:</p>
<ul>
<li>Fixed a mistake in the FAQ: correct post date parameter is &#8216;post_date&#8217;, not &#8216;date&#8217;.</li>
<li>New filter &#8216;relevanssi_results&#8217; added. This filter will process an array with (post-&gt;ID =&gt; document weight) pairs.</li>
<li>Private and draft posts were deleted from the index when they were edited. This bug has been fixed. (Thanks to comprock.)</li>
<li>When continuing indexing, Relevanssi now tells if there&#8217;s more to index. (Thanks to mrose17.)</li>
<li>Improved WPML support.</li>
<li>The relevanssi_index_doc() function has a new parameter that allows you to bypass global $post and force the function to index the document given as a parameter.</li>
</ul>
<p>This is only for Free:</p>
<ul>
<li>Stripping shortcodes from excerpts didn&#8217;t work properly. Should work now.</li>
<li>Fixed problems with searching attachments. Indexing attachments still has some problems. When you build the index, attachments are indexed properly.</li>
</ul>
<p><a title="Relevanssi_results filter" href="http://www.relevanssi.com/knowledge-base/relevanssi_results/">See more about relevanssi_results</a>.</p>
<p>You can now call relevanssi_index_doc() directly and have it index a document for you.</p>
<ul>
<li>The first parameter is either the post ID or the complete post object</li>
<li>If the second parameter is <em>true</em>, the post is first removed, then added (it&#8217;s an update)</li>
<li>The third parameter should have the return value of relevanssi_get_custom_fields()</li>
<li>If the fourth parameter is <em>true</em>, Relevanssi will not mind the global $post and indexes whatever the first parameter says (otherwise Relevanssi will index the post specified by the global $post).</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.relevanssi.com/release-notes/free-2-9-13-premium-1-7-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Relevanssi_results filter</title>
		<link>http://www.relevanssi.com/knowledge-base/relevanssi_results/</link>
		<comments>http://www.relevanssi.com/knowledge-base/relevanssi_results/#comments</comments>
		<pubDate>Sat, 11 Feb 2012 09:36:21 +0000</pubDate>
		<dc:creator>Mikko Saari</dc:creator>
				<category><![CDATA[Knowledge Base]]></category>
		<category><![CDATA[advanced]]></category>
		<category><![CDATA[filters]]></category>
		<category><![CDATA[relevanssi_results]]></category>

		<guid isPermaLink="false">http://www.relevanssi.com/?p=521</guid>
		<description><![CDATA[From 2.9.13 and Premium 1.7.6 there&#8217;s a new filter, relevanssi_results. This filter is given an array containing the search results in (post ID, weight) format. The filter expects to get the same thing back. This filter can be used for processing the hits somehow, modifying the weights and whatever you can come up with. I [...]]]></description>
			<content:encoded><![CDATA[</p>
<p>From 2.9.13 and Premium 1.7.6 there&#8217;s a new filter, <em>relevanssi_results</em>.</p>
<p>This filter is given an array containing the search results in (post ID, weight) format. The filter expects to get the same thing back.</p>
<p>This filter can be used for processing the hits somehow, modifying the weights and whatever you can come up with. I suspect <em><a href="http://www.relevanssi.com/knowledge-base/relevanssi_hits_filter/">relevanssi_hits_filter</a></em> is going to be more useful in most cases.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.relevanssi.com/knowledge-base/relevanssi_results/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Most important Relevanssi debugging trick</title>
		<link>http://www.relevanssi.com/knowledge-base/query_posts/</link>
		<comments>http://www.relevanssi.com/knowledge-base/query_posts/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 09:44:23 +0000</pubDate>
		<dc:creator>Mikko Saari</dc:creator>
				<category><![CDATA[Knowledge Base]]></category>
		<category><![CDATA[troubleshooting]]></category>

		<guid isPermaLink="false">http://www.relevanssi.com/?p=515</guid>
		<description><![CDATA[In general Relevanssi does work. So, when something doesn&#8217;t work – you can&#8217;t search for custom field content, results look bad, and so on – that means there&#8217;s a problem. Approximately 90% of the time the problem is the same: there&#8217;s a query_posts() call on the search results page. Any calls to query_posts() on search results [...]]]></description>
			<content:encoded><![CDATA[</p>
<p>In general Relevanssi does work. So, when something doesn&#8217;t work – you can&#8217;t search for custom field content, results look bad, and so on – that means there&#8217;s a problem.</p>
<p><strong>Approximately 90% of the time the problem is the same: there&#8217;s a <code>query_posts()</code> call on the search results page.</strong></p>
<p>Any calls to query_posts() on search results template make Relevanssi fail silently. You&#8217;re not getting results from Relevanssi any more. This is unpleasant, but something I can&#8217;t really fix, considering that WordPress doesn&#8217;t offer any official way to replace search results and the way Relevanssi is coupled with WordPress is something of a hack. So, something simple like this can throw Relevanssi off.</p>
<p>If you&#8217;re having problems with Relevanssi, the first step is to check your search results page, usually search.php. See if there&#8217;s a call to query_posts() and if there is, comment it out. In most cases that is enough to fix the problem.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.relevanssi.com/knowledge-base/query_posts/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Setting post type to page doesn&#8217;t work</title>
		<link>http://www.relevanssi.com/knowledge-base/post_type-page-fail/</link>
		<comments>http://www.relevanssi.com/knowledge-base/post_type-page-fail/#comments</comments>
		<pubDate>Thu, 12 Jan 2012 05:46:57 +0000</pubDate>
		<dc:creator>Mikko Saari</dc:creator>
				<category><![CDATA[Knowledge Base]]></category>
		<category><![CDATA[post_type]]></category>
		<category><![CDATA[troubleshooting]]></category>

		<guid isPermaLink="false">http://www.relevanssi.com/?p=510</guid>
		<description><![CDATA[For some reason setting the post_type query variable to &#8220;page&#8221; doesn&#8217;t have the desired effect. Other post types (&#8220;post&#8221;, custom post types) work, but &#8220;page&#8221; doesn&#8217;t do anything. This is not a Relevanssi bug, but a WordPress feature (see this trac ticket). If the user inputs a bad value to the post_type query variable, WordPress [...]]]></description>
			<content:encoded><![CDATA[</p>
<p>For some reason setting the <em>post_type</em> query variable to &#8220;page&#8221; doesn&#8217;t have the desired effect. Other post types (&#8220;post&#8221;, custom post types) work, but &#8220;page&#8221; doesn&#8217;t do anything.</p>
<p>This is not a Relevanssi bug, but a WordPress feature (see <a href="http://core.trac.wordpress.org/ticket/18513">this trac ticket</a>). If the user inputs a bad value to the post_type query variable, WordPress changes it to &#8220;any&#8221;. For some reason that happens also when the post_type is set to &#8220;page&#8221;, even though that should be a valid value.</p>
<p>There&#8217;s nothing Relevanssi can do about this. However, there&#8217;s a fix. Relevanssi introduces a new query variable <em>post_types</em>, which happily accepts &#8220;page&#8221;. Use that, if you need to filter by post type.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.relevanssi.com/knowledge-base/post_type-page-fail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Premium 1.7.5</title>
		<link>http://www.relevanssi.com/release-notes/premium-1-7-5/</link>
		<comments>http://www.relevanssi.com/release-notes/premium-1-7-5/#comments</comments>
		<pubDate>Tue, 13 Dec 2011 07:32:16 +0000</pubDate>
		<dc:creator>Mikko Saari</dc:creator>
				<category><![CDATA[Release Notes]]></category>

		<guid isPermaLink="false">http://www.relevanssi.com/?p=506</guid>
		<description><![CDATA[I was told that Relevanssi Premium doesn&#8217;t index drafts, even though it should (since 1.6). Looks like the feature has gone missing in some update. Sorry about that. This version reintroduces it. Drafts are automatically indexed and shown in admin searches. I&#8217;m also adding the first test version of the declension featured mentioned before. This [...]]]></description>
			<content:encoded><![CDATA[</p>
<p>I was told that Relevanssi Premium doesn&#8217;t index drafts, even though it should (since 1.6). Looks like the feature has gone missing in some update. Sorry about that. This version reintroduces it. Drafts are automatically indexed and shown in admin searches.</p>
<p>I&#8217;m also adding the first test version of the declension featured mentioned before. This first version is a simple suffix stripper in English and it removes the following suffixes from words when indexing and searching: -s, -en, -ed, -er, -ly, -ing and -est.</p>
<p>There&#8217;s no option to enable the feature. To enable it, add the following line of code in your functions.php:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">add_filter<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'relevanssi_stemmer'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'relevanssi_simple_english_stemmer'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>After that, re-index the database.</p>
<p>I&#8217;m curious to hear how this works for you. The Relevanssi options page shows the number of rows in the Relevanssi database now &#8211; one thing I&#8217;m interested in is to know how many rows enabling the stemmer removes from the database. So, give it a go, and tell me what you think of it. Finer controls and other languages will follow.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.relevanssi.com/release-notes/premium-1-7-5/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Filtering results by category</title>
		<link>http://www.relevanssi.com/knowledge-base/filtering-results-by-category/</link>
		<comments>http://www.relevanssi.com/knowledge-base/filtering-results-by-category/#comments</comments>
		<pubDate>Sun, 11 Dec 2011 11:08:30 +0000</pubDate>
		<dc:creator>Mikko Saari</dc:creator>
				<category><![CDATA[Knowledge Base]]></category>
		<category><![CDATA[categories]]></category>
		<category><![CDATA[search results template]]></category>

		<guid isPermaLink="false">http://www.relevanssi.com/?p=503</guid>
		<description><![CDATA[In order to filter search results by category, use the following code: $url = get_bloginfo&#40;'url'&#41;; $url = esc_attr&#40;add_query_arg&#40;array&#40;'cat' =&#62; '10', 's' =&#62; get_search_query&#40;&#41;&#41;, $url&#41;&#41;; echo &#34;&#60;a href='$url' rel='nofollow'&#62;Filter by category 10&#60;/a&#62;&#34;; Put this in your search results template. What the code does is to create a link that takes the current search query and adds [...]]]></description>
			<content:encoded><![CDATA[</p>
<p>In order to filter search results by category, use the following code:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$url</span> <span style="color: #339933;">=</span> get_bloginfo<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'url'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$url</span> <span style="color: #339933;">=</span> esc_attr<span style="color: #009900;">&#40;</span>add_query_arg<span style="color: #009900;">&#40;</span><span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'cat'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'10'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'s'</span> <span style="color: #339933;">=&gt;</span> get_search_query<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$url</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;&lt;a href='<span style="color: #006699; font-weight: bold;">$url</span>' rel='nofollow'&gt;Filter by category 10&lt;/a&gt;&quot;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Put this in your search results template. What the code does is to create a link that takes the current search query and adds the category variable to it. This link filters the results by category 10, change the number to correct category ID to make it filter by the category you want to.</p>
<p>Remember that whenever you link to search results like that, it&#8217;s a good idea to tell Google and other bots to avoid indexing the results. The link above has the &#8220;rel=&#8217;nofollow&#8217;&#8221; instruction, but you can also use <a href="http://www.robotstxt.org/">robots.txt</a> to prevent bots from spidering your search results pages.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.relevanssi.com/knowledge-base/filtering-results-by-category/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>

