質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

1回答

2508閲覧

ACF Photo Gallery Fieldでカスタムクラスを、テンプレートに反映したい

108_tw

総合スコア20

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

0クリップ

投稿2019/03/29 11:45

編集2019/03/29 23:31

ACF Photo Gallery Field でEdit Imageからカスタムクラスを記載して、固定ページのテンプレートに反映させたいんですが、できません。
サンプルソースに太字部分を記述すれば、表示されるはずのような気がするんですが、うまくいかず。。。

プラグインページURL
https://ja.wordpress.org/plugins/navz-photo-gallery/

ソース

<?php echo $class; ?>の値が反映されない?
<?php //Get the images ids from the post_metadata $images = acf_photo_gallery('vacation_photos', $post->ID); //Check if return array has anything in it if( count($images) ): //Cool, we got some data so now let's loop over it foreach($images as $image): $id = $image['id']; // The attachment id of the media $title = $image['title']; //The title $caption= $image['caption']; //The caption $full_image_url= $image['full_image_url']; //Full size image url $full_image_url = acf_photo_gallery_resize_image($full_image_url, 262, 160); //Resized size to 262px width by 160px height image url $thumbnail_image_url= $image['thumbnail_image_url']; //Get the thumbnail size image url 150px by 150px $url= $image['url']; //Goto any link when clicked $target= $image['target']; //Open normal or new tab $alt = get_field('photo_gallery_alt', $id); //Get the alt which is a extra field (See below how to add extra fields) $class = get_field('photo_gallery_class', $id); //Get the class which is a extra field (See below how to add extra fields) ?> <div class="col-xs-6 col-md-3"> <div class="thumbnail <?php echo $class; ?>"> <?php if( !empty($url) ){ ?><a href="https://wordpress.org/plugins/navz-photo-gallery/<?php echo $url; ?>" <?php echo ($target == 'true' )? 'target="_blank"': ''; ?>><?php } ?> <img src="https://wordpress.org/plugins/navz-photo-gallery/<?php echo $full_image_url; ?>" alt="<?php echo $title; ?>" title="<?php echo $title; ?>"> <?php if( !empty($url) ){ ?></a><?php } ?> </div> </div> <?php endforeach; endif; ?>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Bernadotte

2019/03/29 13:28

ソースが大変見づらいです。 コードタグがありますので、編集し直してください。
108_tw

2019/03/29 23:31

すみません、見づらかったですね。 直しました
CHERRY

2019/03/30 00:04

できません。うまくいきませんでは、どのような問題が発生しているのかわかりませんので、発生している内容を具体的に記載してください。 例:エラーメッセージが表示される。 〇〇が表示される。 真っ白な画面になる。など。 また、真っ白な画面の場合やエラーが出ている場合は、Webサーバーのログも確認して、どのようなメッセージが出ているか確認してください。
108_tw

2019/03/30 02:13 編集

<?php echo $class; ?>で、値が反映されないです。 プラグインページのサンプル通りに記載していて、変数の値が出てこないということです。 エラーや意図しないデータの表示、ホワイトアウトはないです。 (あれば記述の不備だとわかるので、おそらく質問しません) webサーバーのログは調べてません。 プラグインページを見ると、変数の宣言がある割に、アウトプットのサンプルが見当たらないので、 そもそも機能していないのではないかとも思っています。 同じプラグイン使っている人が、解決法をご存知ではないかと質問してみた次第です。
guest

回答1

0

ベストアンサー

書かれているコードはプラグインのページのサンプルコードに<?php echo $class; ?>を付けたしたものだと思うのですが……。

そのページにある通りにfunctions.phpに追加するclassのためのコードを記載されて、ギャラリーにする画像にそのクラスを記載されているものと思います。

そのコードですと、ギャラリーのフィールド名が「vacation_photos」になっていますので、たぶん以下のようにすればいいのではないでしょうか。

$class = get_field('vacation_photos_class', $id);

参考まで。

投稿2019/03/30 02:02

8-0_nyan5

総合スコア2352

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

108_tw

2019/03/30 02:22

!! ありがとうございます! 解決できました。 サンプルのソースでは、フィールド名と連動していなかったので、気が付きませんでした。 (英語が読めれば、理解できたのかもしれませんね) 素晴らしいです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問