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

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

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

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

PHP

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

Q&A

解決済

1回答

1541閲覧

single.phpでカテゴリ別にデザイン切り替えが出来なくなった

koka

総合スコア14

WordPress

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

PHP

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

0グッド

0クリップ

投稿2017/09/25 11:14

single.phpでカテゴリ別にデザイン切り替えをしておりました。
(特定のカテゴリはsingle2.phpに、その他のカテゴリはsingle1.phpと言う風に。)
所が急に特定のカテゴリをのぞいて、新規で記事を追加しようとすると全てsingle2.phpになってしまうようになりました。
以下がsingle.phpに書き込んでいるコードです。

原因を自分なりに調べてみたのですが、どうしても修正できませんでした。
何が原因かが未だ分からないので助言をどうぞよろしくお願い致します。

$post = $wp_query->post; if(in_category(array('1','2','3','4'))) { include(TEMPLATEPATH.'/single2.php'); } else { include(TEMPLATEPATH.'/single1.php'); } ?>

■サーバー
さくらサーバー

■WPバージョン
WordPress 4.8.2

■テーマ
オリジナル

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

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

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

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

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

guest

回答1

0

ベストアンサー

何もしてないのに急になるとは考えにくいので、プラグインの追加やテーマの編集などなど何か原因があるんだと思いますが。

とりあえずincludeが効いてないとも思えませんが、get_template_partに変えたらどうなりますか?

$post = $wp_query->post; if(in_category(array('1','2','3','4'))) { get_template_part( 'single2' , false ); } else { get_template_part( 'single1' , false ); } ?>

投稿2017/09/25 11:53

編集2017/09/25 12:11
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

koka

2017/09/25 12:17

お返事ありがとうございます。 頂いたコードで試してみましたが、やはりだめでした。 (single1とsingle2が逆だったので修正致しました) プラグインの追加とテーマの編集はダッシュボードとFFTPでテーマの中を確認しましたが、修正はされていないようです
退会済みユーザー

退会済みユーザー

2017/09/25 12:28

間違い失礼しました。 指摘前に修正してました。 やはり読み込み方法を変えても無意味でしたか。 考えられるのはIDが違う? IDをカテゴリースラッグにしたらどうなりますか?
koka

2017/09/26 00:49

すみません、ここで判明したのが、特定のカテゴリだけ、エラーが出ていたそうです。 ID部分にスラッグを入れて修正してみました。 大丈夫だったカテゴリも全て、single1になりました。 ですので、初期のsingle.phpに戻しました。
退会済みユーザー

退会済みユーザー

2017/09/26 01:23

解決したという意味ですか?
koka

2017/09/26 01:31 編集

いえ、解決はしていないです。 引き続き、原因を調査しています。 WP自体が壊れたのかな?と思って、違うサーバーにテーマをインストールした所、同様の症状が確認できました。
退会済みユーザー

退会済みユーザー

2017/09/26 01:36

エラーが出ていたというのはどのようなエラーなんでしょうか?それは改修できたんでしょうか? 他にもエラーが無いかデバッグモードにて確認してみてください。
koka

2017/09/26 01:59

言葉足らずですみません。 特定のカテゴリだけ、single.phpの切り分けが出来ておりませんでした。 デバックモードで確認しましたが、エラーは出ておりませんでした。
退会済みユーザー

退会済みユーザー

2017/09/26 02:05

エラーは無しですか。 ”違うサーバーにテーマをインストールした所、同様の症状が確認できました。” これはテーマだけで症状が出るってことですよね? プラグインはまで同じ構成ではないと。 テーマ単体で問題が発生するのならテーマの問題だと思いますが、実際のテーマを見ない限り問題を見つけられそうにないです。 テーマをどこかにアップロードできますか?
koka

2017/09/26 09:23

違うサーバにアップした際、念のために、プラグインの構成まで揃えました。 ay03さんのおっしゃるとおり、テーマの問題だと思いましたので、 else { get_template_part( 'single1' , false ); } ?> この部分の、その他のカテゴリを一つ一つ設定しましたら、直りました。 適切なアドバイスありがとうございます!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問