<?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>Little.ws &#187; テンプレート</title>
	<atom:link href="http://little.ws/tag/%e3%83%86%e3%83%b3%e3%83%97%e3%83%ac%e3%83%bc%e3%83%88/feed" rel="self" type="application/rss+xml" />
	<link>http://little.ws</link>
	<description>web制作とかcssとかデザインとか色々～な覚え書き</description>
	<lastBuildDate>Sat, 04 Feb 2012 07:27:16 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>wordpress:アーカイブページをカスタムフィールドの値で並び替える</title>
		<link>http://little.ws/200907/218.html</link>
		<comments>http://little.ws/200907/218.html#comments</comments>
		<pubDate>Wed, 08 Jul 2009 03:58:08 +0000</pubDate>
		<dc:creator>chibi</dc:creator>
				<category><![CDATA[Wordpress応用]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[カスタムフィールド]]></category>
		<category><![CDATA[テンプレート]]></category>
		<category><![CDATA[プラグイン]]></category>

		<guid isPermaLink="false">http://little.ws/?p=218</guid>
		<description><![CDATA[フォーラムでも同じ事で悩んでる方がいて、 投稿をカスタムフィールド値でソートし、更に時系列に並べる こちらは解決したようですが、ぼくがやりたいことはちょーっと違っていたのです！ たとえば、良くショッピングサイトであるよう&#8230;]]></description>
			<content:encoded><![CDATA[<p>フォーラムでも同じ事で悩んでる方がいて、<br />
<a href="http://ja.forums.wordpress.org/topic/1851" class="liwp">投稿をカスタムフィールド値でソートし、更に時系列に並べる</a><br />
こちらは解決したようですが、ぼくがやりたいことはちょーっと違っていたのです！<br/><br />
たとえば、良くショッピングサイトであるような『価格順』『新着順』なんかのボタンをアーカイブページに実装したかったのです。<br />
例として、カスタムフィールド名を『item_price』とします。<br />
これをボタンで昇順降順で自在に並び替えたい。<br />
ということで以下覚え書き</p>
<p><span id="more-218"></span></p>
<p>プラグイン使わなくても出来ますが、めんどくさいのでプラグイン頼み。<br />
<a href="http://www.dyasonhat.com/wp-smart-sort/" class="liexternal">WP Smart Sort</a>を使用します。<br />
これデフォルト使用でもいいんですが、スマートではないので。。<br/><br />
プラグインフォルダにUP後有効化したら、オプション画面からSmart Sort設定画面へ。</p>
<p><a href="http://little.ws/wp-content/uploads/2009/07/smartsort.jpg" rel="fancybox-gallery" rel='lightbox' class="liimagelink"><img src="http://little.ws/wp-content/uploads/2009/07/smartsort-300x220.jpg" alt="smartsort" title="smartsort" width="300" height="220" class="alignnone size-medium wp-image-219" /></a><br />
使用するカスタムフィールド名を探し、Display Text欄に名前をつけ、右側の追加ボタンを押します。<br />
今回は例としてフィールド名『item_price』にDisplay Text欄を『価格』としてみました。<br />
追加後、下にスクロールすると次のような項目があります。<br />
<a href="http://little.ws/wp-content/uploads/2009/07/sort2.jpg" rel="fancybox-gallery" rel='lightbox' class="liimagelink"><img src="http://little.ws/wp-content/uploads/2009/07/sort2-300x141.jpg" alt="sort2" title="sort2" width="300" height="141" class="alignnone size-medium wp-image-220" /></a><br />
この、価格（_item_price-pm）ASC　という部分が非常に重要で、<br/><br />
_item_price-pmが並べ替えのキーで、<br />
ASCが並び順のキー（昇順（asc）・降順（desc）となります。<br/><br />
ここまで分かれば、あとはテンプレート側で値をとってquery_postsの引数に追加するだけです。<br />
（query postsの引数に関しては、<a href="http://wpdocs.sourceforge.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/query_posts" class="liexternal">テンプレートタグ/query posts</a>を参照）<br/><br />
引数は<br />
ssort = 並び替えのキー<br />
sdir = 並び順のキー</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
$ssort = $_GET['ssort'];
$sdir = $_GET['sdir'];
?&gt;
 &lt;?php if (have_posts()) :  query_posts(&quot;ssort=$ssort&amp;sdir=$sdir&quot;);  ?&gt;
</pre>
<p>最後に、ページ内に実装するボタン、『価格順』のリンクを</p>
<p>http://○○.com/?cat=カテゴリID<strong>&#038;ssort=_item_price-pm&#038;sdir=asc</strong></p>
<p>とか</p>
<p>http://○○.com/?cat=カテゴリID<strong>&#038;ssort=_item_price-pm&#038;sdir=desc</strong></p>
<p>にする。カテゴリIDの取得についてはさすがに割愛します。<br />
以上、ものすごく省略しながらの覚え書きでした。</p>
]]></content:encoded>
			<wfw:commentRss>http://little.ws/200907/218.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

