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

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

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

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

PHP

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

Q&A

1回答

1641閲覧

WordPressでカテゴリ条件分岐の「組み合わせ」ができない

退会済みユーザー

退会済みユーザー

総合スコア0

WordPress

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

PHP

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

0グッド

0クリップ

投稿2018/02/03 15:17

###■やりたいこと
カテゴリ条件分岐をfunctions.phpに書きたいです。

###■現状
現状は下記のように「タイトルの有無」で条件分岐しています。

★タイトル有の場合→「タイトルを投稿しました。」
★タイトル無の場合→「無題を投稿しました。」

php

1//ツイートするテキスト 2$custom_title = empty($post[0]->post_title) ? '無題' : $post[0]->post_title; 3$params = array( 4'status' => mb_strimwidth($custom_title.'を投稿しました。', 0, 116, "...") . ' ' . get_permalink($post[0]->ID) 5);

このように「タイトルの有無」で分岐しているのですが、今回はこれに加えてさらに「カテゴリ(neko、inu)」でも分岐させたいと思っています。

###■ダメだった書き方
そこで下記のように書いてみたのですが、画面真っ白になりアウトです。

php

1//ツイートするテキスト 2$custom_title = empty($post[0]->post_title) ? '無題' : $post[0]->post_title; 3$params = array( 4'status' => mb_strimwidth($custom_title. 5<?php if ( in_category(array('neko')) ) ://nekoの場合 ?> 6 <meta name="description" content='"<?php echo $custom_title;?>を投稿したニャー。">', 0, 116, "...") . ' ' . get_permalink($post[0]->ID) 7<?php elseif ( in_category(array('inu')) ) ://inuの場合 ?> 8 <meta name="description" content='"<?php echo $custom_title;?>を投稿したワン。">', 0, 116, "...") . ' ' . get_permalink($post[0]->ID) 9<?php else://通常ページの場合 ?> 10 <meta name="description" content='"<?php echo $custom_title;?>を投稿しました。">', 0, 116, "...") . ' ' . get_permalink($post[0]->ID) 11<?php endif; ?> 12);

なんとなく「'」とか「"」の位置かな?と思ったのですけれど、かなり何パターンも試した結果できなかったので、質問させて頂きます。

お詳しい方、宜しくお願い致します。<(_ _)>

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2018/02/03 16:29

PHPのエラーメッセージが出ていると思うので、エラーメッセージを表示して、その内容を確認してみてください。
退会済みユーザー

退会済みユーザー

2018/02/03 16:58 編集

こんばんは★アドバイスありがとうございます。ひとまずfunctions.phpの1行目に 「<?php //子テーマ用関数・ //エラー表示・ini_set('display_errors', 1);」を書いてみたのですが、読み込むと相変わらず真っ白です。(◎_◎;) エラー表示の方法が違うのでしょうか?????キャッシュは削除して(サーバーもブラウザも)まっさらな状態で読み込みました。
退会済みユーザー

退会済みユーザー

2018/02/03 16:58 編集

上の「・」は改行です。(テラテイルさんのここは改行が効かないようなので。)
退会済みユーザー

退会済みユーザー

2018/02/03 23:37

おはようございます。夜更かしさんですね。z.comWordPressのサーバーなのですけれど、どうやらwpconfigは編集できない様子です。。( ノД`)
退会済みユーザー

退会済みユーザー

2018/02/03 23:49

そうですか。では、(1)WordPressが動作するローカル環境を構築して、そちらでコードを試すようにしてください。(2)PHPの初心者向け入門書を勉強してください。(3)勉強する予定がないのであれば、サイト作成は業者に依頼することを強く勧めます。基礎知識がない状態での試行錯誤は時間の無駄です。
退会済みユーザー

退会済みユーザー

2018/02/04 00:29 編集

なるほど、ありがとうございます。 基礎知識がない状態での試行錯誤は時間の無駄なのですね。無駄しちゃいました。。(^▽^;) でも、それでも根気強く何度もご返信くださって、ありがとうございます。 も少し基礎知識を勉強しないといけませんね。
guest

回答1

0

PHPの入門書を買ってきちんと読んでください。
<?php の意味がわかっていますか?もしわかっているならなぜその書き方で問題ないと思うのでしょうか。

投稿2018/02/03 22:01

kei344

総合スコア69364

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

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

退会済みユーザー

退会済みユーザー

2018/02/04 00:30

ごめんなさい( TДT)。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問