PHPerのための Movable Type 講座(その2)

| コメント(0) | トラックバック(0)

あーしんど(爆)

※続き書いた。

その2。

fetch_author

IDを指定するとユーザー(Authorオブジェクト)を返します。

$author = $mt->db()->fetch_author( 1 );

fetch_author_by_name

IDではなく、ユーザー名(ログイン名)を指定してユーザーをロードします。

$author = $mt->db()->fetch_author_by_name( 'junnama' );

fetch_authors

ユーザー(Authorオブジェクト)の配列を返します。 以下の例は、ブログ(ID1)に記事投稿のあるユーザーの配列を返します。その他$argsに指定できるのは、MTAuthorsテンプレートタグに指定できるモディファイアと同じと考えて良いです。

$args = array( 'blog_id' => $blog_id, 'need_entry' => 1 );
$authors = $mt->db()->fetch_authors( $args );

fetch_permission

パーミッション(権限=Permissionオブジェクト)の配列を返します。 以下の例では、blog_idに0を指定しているため、$author_idのユーザーのシステム権限が返ります。

$args = array( 'blog_id' => 0, 'id' => $author_id );
$perms = $mt->db()->fetch_permission( $args );
if ( !empty( $perms ) ) {
    $perms = $perms[ 0 ];
}

fetch_all_roles

すべてのロール(Roleオブジェクト)の配列を返します。

$roles = $mt->db()->fetch_all_roles();

fetch_association

Aassociationオブジェクトの配列を返します。Associationとは、ブログとユーザーとロールの関連づけ情報を格納しているオブジェクトです。 ユーザー(ID1)がブログ1に対してロール「ライター」(role_idが1の時)権限を持っている時、associationsにauthor_idが1のAssociationオブジェクトが含まれます。

$args = array( 'blog_id' => 1, 'role_id' => array( 1 ) );
$associations = $mt->db()->fetch_associations( $args );

fetch_tag

IDを指定すると、Tagオブジェクトを返します。

$tag_id = 1;
$tag = $mt->db()->fetch_tag( $tag_id );

fetch_tag_by_name

IDではなく、タグ名(文字列)を渡してTagオブジェクトをロードします。

$tag = $mt->db()->fetch_tag( 'MovableType' );

fetch_scores(fetch_score, fetch_sum_scores, fetch_avg_scores)

使ったことないので、よくわかりませんw(おい) 要するに、MTEntryScore等で使う、「スコア」(MT5から実装されたぽい)をロードすすようなもの?

$scores = $mt->db()->fetch_scores( $namespace, $obj_id, $datasource );
$score = $mt->db()->fetch_score( $namespace, $obj_id, $author_id, $datasource );

cache_permalinks(cache_category_links)

Entryオブジェクトの配列を渡すと(cache_category_linksの場合はCategoryオブジェクトの配列)、permalink をキャッシュします。内部的にパフォーマンスのために使うものです(fetch_entries等の中で使われています)。成功すると、TRUEが返ります。

cache_comment_counts

Entryオブジェクトの配列を渡すと各記事のコメント数をカウントしてキャッシュします。これも、高速化のために内部的に利用されます。

blog_entry_count

その名の通り、ブログの記事数を返します。

$args = array( 'blog_id' => 1 );
$count = $mt->db()->blog_entry_count( $args );

blog_comment_count(category_comment_count)

その名の通り、ブログ(カテゴリ)のコメント数を返します。

blog_ping_count

ブログのトラックバック数を返します。トラックバックは、もういいや。

tags_entry_count

何か、動かないっぽい(おい)

(追記)バグ見つけた。mtdb.base.php の 2706行目、andの前にスペースを入れると、動きます(おい)

$where .= "and entry_status = 2 and entry_class = '$class'";
//      ↓スペース追加
$where .= " and entry_status = 2 and entry_class = '$class'";

entry_comment_count

$entry_idを渡すと、コメント数を返します。

$count = $mt->db()->entry_comment_count( $entry_id );

asset_count

blog_idとtype(アイテムの種類)を指定して、アイテム数を返します。

$args = array( 'blog_id' => $blog_id, 'type' => 'image' );
$count = $mt->db()->asset_count( $args );

author_entry_count

ユーザーの記事数を返します。

$args = array( 'blog_id' => $blog_id, 'author_id' => $author_id );
$count = $mt->db()->author_entry_count( $args );

entry_ping_count(category_ping_count)

記事ID(カテゴリID)を渡すと、トラックバック数を返します。トラックバックはもう(ry

fetch_pings

トラックバックオブジェクトの配列を返します。引数$argsに、MTPingsテンプレートタグに指定するモディファイアの内容が指定可能です。トラックバックはもう(ry

fetch_assets

アイテム(Assetオブジェクト)の配列を返します。exclude_thumb 指定で、MTが生成したサムネイルを除外してロードします。

$args = array( 'blog_id' => $blog_id,
               'type' => 'image',
               'exclude_thumb' => 1 );
$assets = $mt->db()->fetch_assets( $args );

続く、かも。

トラックバック(0)

トラックバックURL: http://junnama.alfasado.net/cgi/mt/mt-tb.cgi/799

コメントする

Facebook

Twitter

このブログ記事について

このページは、Junnama Nodaが2014年4月10日 18:17に書いたブログ記事です。

ひとつ前のブログ記事は「PHPerのための Movable Type 講座(その1)」です。

次のブログ記事は「PHPerのための Movable Type 講座(その3)」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 6.2.6