Movable Type Data APIの使い方:カスタムフィールド検索
Movable Type 6から提供されているData APIの使い方を紹介します。
本エントリーでは、JavaScript SDK APIのsearch()を使ったカスタムフィールドでの検索方法について解説します。
基本的な検索方法については「Movable Type Data APIの使い方:検索」をご覧ください。
注:本機能はMT6.1.1以降で有効です。
1.カスタムフィールド検索のサンプル
search()を使ってカスタムフィールド検索を行うための簡単なサンプルを紹介します。
<script>
// API生成コード等は省略
$('#search').click(function(){
var data = {
'search': 'field:' + $('#basename').val() + ':' + $('#searchTerms').val(),
'IncludeBlogs': $('#IncludeBlogs').val(),
'ExcludeBlogs': $('#ExcludeBlogs').val(),
'SearchSortBy': $('#SearchSortBy').val(),
'SearchResultDisplay': $('#SearchResultDisplay').val()
};
api.search(data, function(response) {
if (response.error) {
$('#result').html('エラー:' + response.error.message);
} else {
$('#result').html(response.totalResults + '件ヒットしました');
for (i=0; i< response.items.length; i++) {
$('#result').append('<li>' + response.items[i].title + '</li>');
}
}
});
});
</script>
<ul>
<li><input type="text" id="basename" />ベースネーム</li>
<li><input type="text" id="searchTerms" />検索文字</li>
<li><input type="text" id="IncludeBlogs" />検索対象ブログID</li>
<li><input type="text" id="ExcludeBlogs" />検索対象外ブログID</li>
<li>
<select id="SearchSortBy">
<option value="" selected="selected">並べ替え</option>
<option value="created_on">作成日時</option>
<option value="title">タイトル</option>
</select>
</li>
<li>
<select id="SearchResultDisplay">
<option value="" selected="selected">並べ替え順</option>
<option value="ascend">昇順</option>
<option value="descend">降順</option>
</select>
</li>
<li><input type="button" id="search" value="検索" />
</ul>
<ul id="result"></ul>
JavaScriptライブラリのインクルードやapiの生成については「Movable Type Data APIの使い方(JavaScript SDKを使ったオブジェクトの生成)」を参照してください。
また、エラーのハンドリングについては「Movable Type Data APIの使い方(エラーのハンドリング)」を参照してください。
なお、上記のサンプルでは結果表示処理でjQueryを利用しているので、jQueryのインクルードも行ってください。
2.カスタムフィールド検索のパラメータ
search()に設定するカスタムフィールド検索部分のパラメータは次のとおりです(他は省略)。
- search:field:ベースネーム:検索文字列(必須)
たとえばベースネームが「cftext」、検索文字が「foo」の場合は、
search:"field:cftext:foo"
と設定します。
3.カスタムフィールドでAND検索
次のように指定すれば、カスタムフィールドでAND検索ができるようです(動作確認済み)。
search:"field:cftext1:foo AND field:cftext2:bar"
AND検索を実行する場合、上記のサンプルコードは適宜修正してください。
確認ミスかもしれませんがOR検索は動作しませんでした。
search:"field:cftext1:foo OR field:cftext2:bar"
2021.03.09 検索API名が誤っていたので修正しました。
Posted by yujiro このページの先頭に戻る
- MovableTypeのDataAPIでコンテンツデータをモーダル表示させる方法
- Movable TypeのWorkflowプラグインでDataAPIが利用可能になる「WorkflowDataAPIプラグイン」
- Movable TypeのDataAPIで記事を投稿するサンプル
- Movable TypeのDataAPIで「403 Forbidden」になる場合の対処
- Movable TypeのDataAPIで特定のカスタムフィールドを取得する方法
- Movable TypeのDataAPIでアクセスランキングを表示する方法
- Movable TypeとGoogle Analyticsの連携
- Movable Type Data APIの使い方:検索
- Movable Type Data APIの使い方:カスタムフィールド作成
- Movable TypeのData APIを有効・無効にする方法のまとめ
- Movable Type Data APIの使い方:uploadAsset()
- Movable Type Data APIの使い方:publishEntries()
- Movable Type Data APIの使い方:authenticate()
- Movable Type Data APIの使い方:paramsについて
- Movable Type Data APIの使い方:listEntries()
トラックバックURL
コメントする
greeting