検索結果を「新しい順」に並べる。

(自分のための覚書。一般的な内容ではないのであまり参考になりません)
Daiji Hirataさん作成のMT plugin for Amazon webservices(aws.pl)をちょっと改造。うちはaws.plの記述言語がわからないので適当にやっちまってます。たぶんXML?

KeywordSearchなど検索結果が複数となる場合、デフォルトでは「売れている順番」で表示されますが、これを「リリースの新しい順番」に並ぶよう変更してみました。こうするとDVDやCDの新譜が登録されたときにいち早く発見できるので個人的に便利。

aws.pl:28行目あたりから
"page"のあとに, "sort"を追加。

my $elements = {
'ActorSearch' => [ "dev-t", "t", "type", "f", "locale", "mode", "page", "sort" ],
'ArtistSearch' => [ "dev-t", "t", "type", "f", "locale", "mode", "page", "sort" ],
'AsinSearch' => [ "dev-t", "t", "type", "f", "locale" ],
'AuthorSearch' => [ "dev-t", "t", "type", "f", "locale", "mode", "page", "sort"],
# 'BlendedSearch' => [ "dev-t", "t", "type", "f", "locale" ],
'DirectorSearch' => [ "dev-t", "t", "type", "f", "locale", "mode", "page", "sort"],
'KeywordSearch' => [ "dev-t", "t", "type", "f", "locale", "mode", "page", "sort"] ,
'ListManiaSearch' => [ "dev-t", "t", "type", "f", "locale"],
'ManufacturerSearch' => [ "dev-t", "t", "type", "f", "locale", "mode", "page", "sort"] ,
'PowerSearch' => [ "dev-t", "t", "type", "f", "locale", "mode", "page", "sort"] ,
'SemilaritiesSearch' => [ "dev-t", "t", "type", "f", "locale" ],
'UpcSearch' => [ "dev-t", "t", "type", "f", "locale", "mode" ],
'WishListSearch' => [ "dev-t", "t", "type", "f", "locale" ],
};

aws.pl:83行目あたりから
次の1行追加。
$q{sort} = ($arg->{sort}) ? $arg->{sort} : '+salesrank';

$q{type} = ($arg->{type}) ? $arg->{type} : 'lite';
$q{mode} = ($arg->{mode}) ? $arg->{mode} : '';
$q{page} = ($arg->{page}) ? $arg->{page} : 1;
$q{sort} = ($arg->{sort}) ? $arg->{sort} : '+salesrank';
$q{lastn} = ($arg->{lastn}) ? $arg->{lastn} : -1;
$q{offset} = ($arg->{offset}) ? $arg->{offset} : -1;

赤字部分がソート順のデフォルトになるようです。自分がよく使うものを入れておけば毎回指定する必要がなくなります。うちの場合、-orig-rel-date に変更しています。

aws.plに同梱されているreadme.txtに加えて<MTAws>タグに「sort」が使えるようになります。
4.使い方
- sort(指定しない場合は自動的に +salesrank )
商品のソート方法を指定できます。modeにより記述が異なります。

例えばmode=music_jp,dvd_jpの場合、次が指定できます。
+salesrank 売れている順番
+pricerank 価格の安い順番
-pricerank 価格の高い順番
+titlerank タイトル名の順番:昇順
-titlerank タイトル名の順番:降順
-orig-rel-date リリースの新しい順番
+orig-rel-date リリースの古い順番

これで動くかな(ぉ