get_children

説明

mixed get_children( [ mixed $args = '' [ , string $output = OBJECT ] ] )
投稿情報に付加されている投稿情報(子供の投稿情報)を検索し、マッチしたすべてのデータを取得する。

パラメータ

  • $args
    検索条件を指定する文字列または連想配列。主なキーワードは次の通り。
    キーワード意味
    numberposts取得する件数(省略時は-1で、全件を取得)
    post_type取得する付加情報のタイプとして'any'、'post'、'pages'、'attachment'などを指定(省略時は'any'で、すべてのタイプ)
    post_status取得する付加情報のステータスとして'any'、'inherit' : 'publish'などを指定(省略時は'any'で、すべてのステータス)
    post_parent付加情報する投稿情報のIDなどを指定(省略時は0)
    post_mime_type付加情報のMIMEタイプとして'image'などを指定
    orderASCまたはDESCを指定(省略時はDESCで、降順)
    orderby取得時のデータの並び順を決める項目名を指定(省略時はpost_dateで、投稿日時)
  • $output
    取得するデータ形式としてOBJECT、ARRAY_A、ARRAY_Nを指定(省略時はOBJECT)

返り値

マッチしたすべてのデータをパラメータ$outputで指定されたデータ形式の配列を返す。$outputでOBJECTを指定した場合は、現在の投稿情報である $postと同じフォーマットとなる。添付ファイル情報の場合は次のような内容になる。

プロパティ名データ型意味
IDint投稿ID
post_authorintstring投稿者ID
post_datestring投稿日時
post_date_gmtstring投稿日時(GMT)
post_contentstring説明
post_titlestring投稿タイトル
post_excerptstringキャプション
post_statusstring投稿状態('inherit'など)
comment_statusstringコメント投稿状態('open'など)
ping_statusstringトラックバック/ピンバック受付状態('open'など)
post_passwordstringパスワード(公開状態がパスワード保護時)
post_namestring投稿名(パーマリンク設定で%postname%使用時)
to_pingstring
pingedstring
post_modifiedstring更新日時
post_modified_gmtstring更新日時(GMT)
post_content_filteredstring
post_parentint親投稿記事の投稿ID
guidstring添付ファイルURL(FQDN)
menu_orderint
post_typestring投稿情報タイプ('attachment'など)
post_mime_typestringMIMEタイプ('image/jpeg'など)
comment_countintコメント数
ancestorsarray
filterstring適用されたフィルター名('raw'など)

注意

この関数内では get_postsを呼び出しており、パラメータ$argsで指定できるパラメータは共通しているが、省略時の値は異なる(特に'post_status'は'any'なので要注意)。
パラメータpost_parentを省略すると親の投稿情報IDは0になるため、トップレベルにある通常の投稿情報が検索対象となる。現在の投稿情報の付加情報を取得する場合は、post_parentで現在の投稿情報IDを指定しなければならない。

なお画像ファイルの代替テキストは、取得したデータの投稿IDを使い、 get_post_meta関数で取得する。

$alt_text = get_post_meta( $attachments[0]->ID, '_wp_attachment_image_alt', true );

使用例

  • 投稿情報IDが10の投稿情報の添付ファイル情報を取得する。
    <?php $attachments = get_children( 'post_parent=10&post_type=attachment' ); ?>

フィルター

実行するフィルターはありません。

アクション

実行するアクションはありません。

ソースファイル

/wp-includes/post.php

最終更新 : 2018年08月24日 14:26



お勧め

投稿ページでユニークなテンプレートを選択しよう(2018年5月27日 更新)

4.7の変更点に「投稿タイプテンプレート」がある。これは従来固定ページ('page')向けに任意のテンプレートを適用できる機能が拡張されたもので、投稿ページ('post')はもちろんカスタム投稿タイプのページにも適用可能になっている。

ブロックエディターの色設定を変えてみる(2019年12月11日 更新)

バージョン5.3で機能強化されたブロックエディター。対応を考えて新テーマ「Twenty Twenty」のソースコードを眺めていく。

5.3の新機能:日付とタイムゾーン(2019年10月2日 更新)

WordPress 5.3 Beta 1」に記載されていた「Time/Date component fixes」という見出し。開発者向として新しい関数の追加や多くのバグが修正されたとなっており、チェックせざるを得ない。

ショートコードを含んだページを表示する前に何か処理する(2014年5月28日 更新)

固定ページまたは投稿ページに独自のフォームを埋め込む。入力→登録の2段階のフォームなら著名なプラグイン「Contact Form 7」を利用すればいいのだが、クライアントの依頼は入力→確認→登録の3段階で組み込む要素が特化していたので、独自の実装方法を考えることになった。

Emojin:プラグイン作ってみました(2015年3月21日 更新)

ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。