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

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

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

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

PHP

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

Q&A

解決済

1回答

1808閲覧

phpは条件分岐か?それとも外部ファイル化か?

退会済みユーザー

退会済みユーザー

総合スコア0

WordPress

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

PHP

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

0グッド

1クリップ

投稿2017/08/17 20:12

###質問です
wordpressでの読み込みはどちらがスマートな方法なのでしょうか?

【1】1つのファイルで条件分岐する。
【2】複数の外部ファイルから読み込む。

###現在の状況は【1】です
現在ページごとに読み込みたいデータが30個くらいありまして、【1】の条件分岐の方法を採って次のように書いております。

■get.php

php

1<?php if (has_term('tset','part1')): ?> 2データ1 3<?php endif; ?> 4 5<?php if (has_term('tset','part2')): ?> 6データ2 7<?php endif; ?> 8 9101112以下、データ30まで

###【2】の方がいいのかも?
しかしふと思ったのですが、上記のように30個の条件分岐を書くよりも、下記のように30個の外部ファイルを作るような方法【2】の方が、読み込みは早いのでしょうか?

つまりこんな感じで30個のファイルを作るのです。

■get01.php

php

1データ1

■get02.php

php

1データ2

かといって、こうするとファイルが多くなりすぎてなんだかイヤな感じ(?)です。

【1】と【2】はどちらがいいのか、教えてください。よろしくお願い致します。

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

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

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

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

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

kei344

2017/08/17 21:26

データの種類によるのでは。
m.ts10806

2017/08/18 00:22

30個の外部ファイルを作るということは条件分岐の記述を呼び出し元に記述するということですよね?それだとほぼ変わらないように思います。現状、毎回endifしているので全てのif文を通る仕組みになってるのでその部分も修正が必要に思います。
退会済みユーザー

退会済みユーザー

2017/08/18 01:22

kei344さん、そういうものなのですね。ありがとうございます。
退会済みユーザー

退会済みユーザー

2017/08/18 01:25

mts10806さん、呼び出し元というのは30個の記事になります。なので1つの記事に記述するのは「get01.phpを取得せよ」のショートコードだけです。その場合、取得されるファイルの中身が【1】より短くて済むので、質問に至ったというそんな次第です。でもそもそも毎回endifっていうのはよろしくないのですね。(;'∀')アチャ勉強しておきます。ありがとうございます。
m.ts10806

2017/08/18 01:54

せめてelseifにすれば多少は軽減されるかもしれません。
guest

回答1

0

ベストアンサー

質問への追記で大方答えがでているかと思いますが、原則としては処理とデータは分けた方がメンテナンスがし易いので、今後修正する事があり、データがある程度見込まれるのであれば読み込み元のget.phpの見通しが良くなるので2の方で別ファイルにして読み込めば良いかと思います。
処理速度に関しては、大量のアクセスを捌くのでなければ、ストレージの性能やOSやPHPのキャッシュ設定によりますが数ミリ秒の差だと思うので、単に自身がわかりやすい方を選択してよいかと思います。

投稿2017/08/18 00:48

aro10

総合スコア4106

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

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

退会済みユーザー

退会済みユーザー

2017/08/18 01:28

ありがとうございます。処理とデータを分けた方がいいと。なるほど。 ただ速度があまり変わらなそうならば、うーん、やっぱり30個に分けるのは面倒なので笑、現在の状況のままでいっちゃおうかと思います。
aro10

2017/08/18 01:31

一応速度としてはどの道2でも条件分岐処理がありそうなので、1の方が読み込みのオーバーヘッド等が無いので原理的には高速です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問