質問: krc-cast-manager*というプラグインを使用してカスタムフィールドに登録した画像(複数)を出力させるのにてこずっています。。 *krc-cast-managerは簡単に言うとキャストをカスタム投稿タイプで登録して、カスタムフィールドに画像や出退勤表などを簡単に挿入出来るプラグインです。 肝心の画像を出力させる部分は公式サイトから抜粋しますが 基本的に【krc_cast】というカスタム投稿タイプとして作成されており、タイトル・本文は通常の投稿や固定ページと同じように使用できます。 ・キャスト画像 画像アップローダーを使用してキャスト画像をアップロードして下さい。画像は複数アップロードでき、アップロードした画像はドラッグアンドドップで並び替えが可能です。 登録した情報はpost_idに紐付けられpostmetaテーブルに下記の様に保存されます。 [“http://aaa.aa/wp-content/uploads/2015/03/176212385754c3b7a63dc88.jpg”,”http://aaa.aa/wp-content/uploads/2015/03/57253755254f199358bcf6.jpg”,”http://aaa.aa/wp-content/uploads/2015/03/485570105426cb9604e66.jpg”] 書いてあります。 実際僕が書いてるソースは ### 該当のソースコード ``` '-1', //表示件数。-1なら全件表示 'post_type' => 'krc_cast', //カスタム投稿タイプの名称を入れる 'post_status' => 'publish', //取得するステータス。publishなら一般公開のもののみ 'orderby' => 'ID', //ID順に並び替え 'order' => 'DESC' ); $wp_query->query($param); if ($wp_query->have_posts()): while ($wp_query->have_posts()) : $wp_query->the_post(); ?> タイトル : 画像 : カスタムのネーム : =====以下省略 ``` そうすると画像のところは ``` ["http://tokyo.clubs-nagoya.com/wp-content/uploads/2016/08/YLn3r.jpg", "http://tokyo.clubs-nagoya.com/wp-content/uploads/2016/08/big-boobs-ship1_15.jpg", "http://tokyo.clubs-nagoya.com/wp-content/uploads/2016/08/mig.jpg"]" ``` の様に表示されてしまいます。(見やすくするため , で改行しています) [""]で囲まれいて、なおかつ画像のパスが全て入っています。 この画像をうまく表示したいのですがどうしたらいいでしょうか? ちなみに画像以外は上手く表示されています。 ちなみに最初の一枚だけ表示できれば大丈夫です。 もし可能であれば個別ページですべての画像を表示できるようにもしたいです。 よろしくお願いします
回答: `_krc_cast_screens`の値は、画像URLの配列を`json_encode`にかけて ひとまとめの文字列にしてあるようで(管理上の都合か、レコード数の節約だと思います) これを再びPHPで利用可能な形に戻すには`json_decode`にかける必要があります。 ``` // 古いバージョンのPHPだとダメかもしれない // その場合こっちで(やっていることは同じです) // 出力 画像 : ``` これでPHPで扱える普通の配列になっているので、foreachするなり $screens[0]で先頭のURLだけ使うなり好きにできます。 試しに`_krc_cast_screens`で検索してみたら、プラグインの作者さんが書いた サンプルページがヒットしました。すでにご確認済みかもしれませんが一応リンクしておきます。