• 解決済 rad2009

    (@rad2009)


    書籍やWebサイトを参考に自作のテーマを作っているのですがギャラリーの画像や画像情報が
    どうしても取得できません。
    フォーラムに掲載されているほかの方の投稿や、様々なHPに掲載されているサンプルを試して
    みたのですがどうしてもうまくいきません。
    取得できないのは
     「メディアを追加->ギャラリーを作成->ギャラリーを挿入」
    の手順でギャラリーとして投稿ページに配置した時で
     「メディアを追加->投稿に挿入」
    とした時には画像の取得も画像情報の取得もうまくいっています。
    Codex日本語版の「get_children」にも似たようなサンプルがあったので試してみたのですが
    ダメでした。
    http://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_children

    他にもWP_Queryでも試してみましたが結果は同じでギャラリーとして配置した画像だけ取得できません。

    オリジナルのテーマを一から作るのは今回が初めてでなぜギャラリーの画像だけとれないのか原因を
    探る手立てがなく困っております。
    どなたかお分かりになる方がおられましたらご教授お願いします。

    下記のものが現在、私が使用しているサンプルソースです。
    ※尚、画像に関する処理の部分は動作確認用のもので本番用のものではありません。
    http://pastebin.com/5ujShQ9i

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • gblsm

    (@gblsm)

    取得できないのは
     「メディアを追加->ギャラリーを作成->ギャラリーを挿入」
    の手順でギャラリーとして投稿ページに配置した時で

    その時は画像の親投稿が自動的にはセットされません。そのため get_posts の post_parent パラメータを使っても取得できません。

    親投稿が自動的にはセットされない、というのはメディアライブラリの画面で「リスト表示」にして「アップロード先」を見ると確かめられます。これはWordPressがそういう仕様だから(不具合ではない)だと思います。

    nobita

    (@nobita)

    こんにちは、

    WordPressは、10年を超える長い歴史を持つオープンソースです。
    ギャラリーショートコードは、もともとは投稿の添付ファイルを表示するための機能でしたが、
    多分3.5位で(ギャラリーショートコードの使い方)
    ギャラリーショートコードで idsという属性が使用できるようになり、この属性が使えるようになったことで、添付ファイル以外の画像もギャラリーに表示できるようになりました。

    get_children()は、添付画像を取得する事は出来ますが、ids属性で表示される画像を取得する事は出来ません。

    ギャラリーショートコードで表示される画像を正確に取得できる関数は、まだ追加されていないので(知らないだけかもしれませんが) そういう部分は、自前で処理する必要があります。

    個人的なメモですが、

    http://tenman.info/labo/snip/archives/7261

    トピック投稿者 rad2009

    (@rad2009)

    gblsmさん、nobitaさん、ご回答ありがとうございます。

    私がWordPressを使い始めた時には既にギャラリーは現在の形だったので仕様変更されて
    get_children()やget_posts()などでは取得することができなくなっていたとは知りませんで
    した。
    検索して見つけたものはこの仕様変更がされる前に書かれたものだったのでいくら試しても
    取得することが出来ず、エラーだったり空白が表示されたのだと理解できました。
    不可解な状況にはまってしまったかと思っていましたが助かりました。
    貴重なアドバイスありがとうございます。

    nobitaさんのサンプルコードを参考にさせていただき自分なりに試してみます。

    ギャラリーの内容も簡単に取り出せるような関数が出来るといいのですが。

    今後も、質問させていただくことがあるかとは思いますがその際には宜しくお願いします。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「ギャラリーの画像および画像情報が取得できない」には新たに返信することはできません。