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

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

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

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

1170閲覧

if構文の書き方、アイキャッチの有無でスライダープラグインを作動させるか決める

mowe

総合スコア17

WordPress

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2018/10/16 04:31

(if構文)アイキャッチの有無で、スライダーの動作を変更したい(wordpress)

カスタム投稿にて、写真の配置し、写真をクリックするとプラグインのスライダーを起動、するようなページを作っているのですが、
アイキャッチ画像がない際には、代わりに別の画像を読み込むことができても、
スライダーの<a>タグをphp構文に含むとエラーが出てしまいます。
アイキャッチ画像がない際には、クリックしても何も起こらないのが希望です。(画像のみの配置)

そもそも、phpの書き方に疎く、コードを読んでも<php>の中に<php>が更に使用されていたり、
「こうじゃないんだろうな・・」が分かっても、どう編集すれば良いのかわからない状態なので、
書き方を教えていただけると幸いです。
以下になります。

アイキャッチがない場合の画像差し替えif文(こちらは作動する)

php

1<!--ループ開始--> 2 <?php query_posts( array('post_type' => 'works', 'posts_per_page' => '100')) ?> 3 <?php if(have_posts()): ?> 4 <?php while( have_posts()) : the_post(); ?> 5 <?php 6 $term = wp_get_object_terms($post->ID,'now'); //指定されたタクソノミーのタームを取得 7 $term_name = $term[0]->name; //ターム名 8 $term_slug = $term[0]->slug; //タームのスラッグ 9 ?> 10<!--ループ開始--> 11 12 <div class="works_box_one"> 13 <a href="<?php echo catch_that_image(); ?>" rel="lightbox[works]" title="<?php echo post_custom('name'); ?>/<?php echo post_custom('place'); ?>"> 14 <div class="works_box_one_pic"> 15 16 17 <?php if (has_post_thumbnail()) { //アイキャッチ画像を設定している場合 18 the_post_thumbnail('large'); 19 } else { //アイキャッチ画像を設定していない場合 ?> 20 <img src="<?php echo get_template_directory_uri(); ?>/img/comming.jpg" alt="" /> 21 <?php } ?> 22 23 <div <?php post_class( 'works_box_one_pic_now' ); ?>><?php echo $term_name; ?></div> 24 </div> 25 <div class="works_box_one_text"><?php echo post_custom('name'); ?>/<?php echo post_custom('place'); ?></div> 26 </a> 27</div> 28 29<?php endwhile; ?> 30<?php wp_reset_query(); endif; ?> 31

自分で書き換えてみた、アイキャッチがない際にスライダーを作動させない文(真っ白なエラーになる)

php

1<div class="works_box_one"> 2 <?php if (has_post_thumbnail()) { //アイキャッチ画像を設定している場合 3 4 <a href="<?php echo catch_that_image(); ?>" rel="lightbox[works]" title="<?php echo post_custom('name'); ?>/<?php echo post_custom('place'); ?>"> 5 <div class="works_box_one_pic"> 6 the_post_thumbnail('large'); 7 <div <?php post_class( 'works_box_one_pic_now' ); ?>><?php echo $term_name; ?></div> 8 </div> 9 <div class="works_box_one_text"><?php echo post_custom('name'); ?>/<?php echo post_custom('place'); ?></div> 10 </a> 11 12 13 } else { //アイキャッチ画像を設定していない場合 ?> 14 <div class="works_box_one_pic"> 15 <img src="<?php echo get_template_directory_uri(); ?>/img/comming.jpg" alt="" /> 16 <div <?php post_class( 'works_box_one_pic_now' ); ?>><?php echo $term_name; ?></div> 17 </div> 18 <div class="works_box_one_text"><?php echo post_custom('name'); ?>/<?php echo post_custom('place'); ?></div> 19 20<?php } ?> 21</div>

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

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

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

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

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

guest

回答1

0

ベストアンサー

ひとまず、真っ白なエラーになってしまうのは、HTMLの記述とPHPの記述とが混在しているためだと思います。
以下の2箇所を変えてみてください。

<?php if (has_post_thumbnail()) { //アイキャッチ画像を設定している場合

<?php if (has_post_thumbnail()) { //アイキャッチ画像を設定している場合 ?>

こうして、

} else { //アイキャッチ画像を設定していない場合 ?>

<?php } else { //アイキャッチ画像を設定していない場合 ?>

こうしてみてください。

投稿2018/10/16 05:14

mooey

総合スコア200

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

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

mowe

2018/10/16 05:38

回答ありがとうございます。 言う通りに変更、サムネイルの取得をphpで囲ったところ表示、希望の動作になりました!! 本当にありがとうございます!!
mooey

2018/10/16 06:52

良かったです!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問