$DocRoot = $_SERVER['DOCUMENT_ROOT']; require_once $DocRoot.'/cgi/mt/php/mt.php'; require_once $DocRoot.'/cgi/mt/php/lib/MTUtil.php';$blog_id = 7;
$mt = MT::get_instance($blog_id, $DocRoot.'/cgi/mt/mt-config.cgi');
$ctx =& $mt->context();
$ctx->caching = FALSE;
$blog = $mt->db()->fetch_blog( $blog_id );
$ctx->stash( 'blog', $blog );
$ctx->stash( 'blog_id', $blog->id );
echo $blog->name;$args = [
"blog_id" => $blog_id,
"limit" => 10,
];
$entries = $mt->db()->fetch_entries( $args );
var_dump($entries);
まず、上記のコードを使うことで、phpを使ってムーバブルタイプに登録されている記事の情報を取得することはできました。
そこに、特定のカテゴリに属するものだけ抽出するように検索条件を加えたいのですが、どのように記述すればいいのかわかりません。
また、取得した値をvar_dumpで確認しても、記事が属しているカテゴリのIDなどの情報が含まれていませんでした。
どうすれば解決するのでしょうか?
> 特定のカテゴリに属するものだけ抽出するように検索条件を加えたい
mt/php/lib/block.mtentries.php (mtentriesタグのPHP実装)の116行目あたりで、$args['category_id'], $args['show_empty'] をセットして db()->fetch_entries($args) としているのが見えます。
これと同じようにすればよいのではないかと考えます。
返信ありがとうございます。
すみません、ムーバブルタイプのバージョンを記載し忘れていました。
現在使っているのは6.1.2であり、block.mtentries.phpを開いてみたところ、内容が違っていました。
$args['category_id'], $args['show_empty']が検索しても見つかりませんでした。
ムーバブルタイプのバージョンアップを行わないと、検索条件の追加を実現するのはできなさそうでしょうか?
すみません、解決いたしました。
今回行いたかったのは、カテゴリの名前による検索だったのですが、上記のようなコードで実現できました。
カテゴリの名前ではなくIDで検索する場合はcategory_idですが、数値型ではなく文字列型として値を入れないと成功しませんでした。