headの読み込みどうしてますか?各ページで共通のheadを使いたく、phpでhead部分をインクルードしようと思いましたが、titleなどだけはページごとに変える必要があるので、この方法は使えないですよね。みなさんはどうやってhead情報を各ページに読み込ませていますか?全ページ手でベタ書きは避けたいです・・。
ifとか?
方法1:include前にtitleなどの可変する情報を変数に入れて、head.php内でその変数を利用する。方法2:titleやmetaの前後をhead1,head2とかに分けてincludeする。
お好きなほうで。
1が綺麗。追加修正などメンテナンスも楽そう。2は数が少ない場合簡単。誰でも変更ができそう。
1かな
1だけだと無駄にメモリ使ってレスポンス落ちるのでSEOマイナス評価が気になる。
↑意味分かって気になってる?
20年位前の家庭用パソコンをサーバとして使ってる人なんじゃないの?メモリ16MBとかだし、その場合は変数に入れないほうがいいよ。時と場合と環境による。
.html の場合、<head> は各ページにベタ打ちしてあって、その中身の共通部分だけ SSI で読み込んでる。<title> は当然ベタ打ちで、そこでしか読み込まない CSS とかもベタ打ち。PHP を使う場合はフレームワークが多いので、そのテンプレートの方式に従ってる。
タスクランナー使って下さい。
それな。ただ「ちょっとHTML解るから納品後自分で編集したい」とかいう雑魚クラはほぼ100パー対応できない。
管理費用とかもらわないなら、そのまま書き出したファイルだけ渡せばいいけどね…
そういうクライアントを相手にする場合は、diffコマンドを使うとクライアントが編集した差分だけとれていいよ。タスクランナーと合わせて動かせば抽出とかもできるし
SEO気にしないんなら ロード後にJSでタイトル入れるって方法もある。
csvなりdbなりからサイト情報を取ってきてheadに流し込む。ただ、もう今だとそれだけのためにphpとかのサーバープログラム書く必要ないよね。サーバーコストやセキュリティやデザイナーとプログラマーの分業の明確化を考えると、フロント側での解決するほうがスマート。
あとでつぶしが利かなくなるから、この程度の要件であまり複雑な事はしないほうがいいと思うけどな。includeでhead1,head2でいいんじゃない?
includeするheadがページ分増える方が大変だと思うけど
何かしらのフレームワーク使ってれば別viewに切り分けることがほとんどだと思うけど、そこでmetaとかincludeファイルとかでループさせたくなければview単位でインクルードをまとめて切り分ける。サーバーサイド使いたくない人はJSでonload時にJSONからセットさせる方法かもしれないけど、SEO的にはマイナスだろうと思うので、重ければキャッシュで対応するのがベストなんでしょうね。
「関数作って引数にタイトルとディスクリプションとか」に一票。
みんなの回答 8 件
ifとか?
方法1:include前にtitleなどの可変する情報を変数に入れて、head.php内でその変数を利用する。
方法2:titleやmetaの前後をhead1,head2とかに分けてincludeする。
お好きなほうで。
.html の場合、<head> は各ページにベタ打ちしてあって、その中身の共通部分だけ SSI で読み込んでる。<title> は当然ベタ打ちで、そこでしか読み込まない CSS とかもベタ打ち。PHP を使う場合はフレームワークが多いので、そのテンプレートの方式に従ってる。
SEO気にしないんなら ロード後にJSでタイトル入れるって方法もある。
csvなりdbなりからサイト情報を取ってきてheadに流し込む。
ただ、もう今だとそれだけのためにphpとかのサーバープログラム書く必要ないよね。サーバーコストやセキュリティやデザイナーとプログラマーの分業の明確化を考えると、フロント側での解決するほうがスマート。
あとでつぶしが利かなくなるから、この程度の要件であまり複雑な事はしないほうがいいと思うけどな。includeでhead1,head2でいいんじゃない?
何かしらのフレームワーク使ってれば別viewに切り分けることがほとんどだと思うけど、そこでmetaとかincludeファイルとかでループさせたくなければview単位でインクルードをまとめて切り分ける。
サーバーサイド使いたくない人はJSでonload時にJSONからセットさせる方法かもしれないけど、SEO的にはマイナスだろうと思うので、重ければキャッシュで対応するのがベストなんでしょうね。
「関数作って引数にタイトルとディスクリプションとか」に一票。
関連するトピックス