エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


CakePHP3で /Layout/defult.ctpにある titleタグ、h1タグを編集する方法

   

CakePHP3で /Layout/defult.ctpに設定されている titleタグ、h1タグのテキストを変更する方法

 
CakePHP3のデフォルトのテンプレートを使て画面を表示する場合、titleタグや h1タグに表示されるテキストは、テーブルの名称に基づくテキストになります。
 
管理画面であればこれでも問題ない場合もありますが、公開側の画面ではそういうわけにはいきません。
 
ということで、titleタグ、h1タグのテキストを編集する方法を解説します。
 
 

デフォルトの titleタグ、h1タグの設定内容について

 
CakePHP3で「Tests」テーブルの index()アクションに対して表示される titleタグ、h1タグに編集されるテキストに関連するファイルは
 
サイトの共通して使用するテンプレートである下記と
/src/Template/Layout/defult.ctp
 
画面ごとに使用するテンプレートである下記とがあります。
/src/Template/Tests/index.ctp
 
 
デフォルトの設定では、
/src/Template/Layout/defult.ctp
のファイル上に
 
titleタグに関する記述と

 
h1タグに関する記述とがあります。

 
この処理の部分で、テーブル名に基づくテキストが編集されます。
 
 

titleタグ、h1タグのテキストを任意のものに変える方法

 
これに対して、titleタグ、h1タグのテキストを変更したい場合は
 
ページごとのテンプレートファイルにページごとの値を設定していきます。
/src/Template/Tests/index.ctp
 
titleタグに編集するテキストは、下記の様に設定します。
 

 
$this->assign()の 1つ目のパラメータに変数名を指定して、2つ目のパラメータに編集したいテキストを指定します。
 
 
デフォルトの設定では titleタグ、h1タグは同じテキストが編集される設定になっていますので、h1タグのテキストを違うテキストにしたい場合は、下記の様に h1タグ用のテキストを設定します。
 

 
 
また、h1タグ用のテキストを設定した場合は、「/src/Template/Layout/defult.ctp」ファイルに h1のテキストを編集する設定をします。
 

 
 
ただ、このままだと h1タグの指定がないページでは h1タグの部分が表示されなくなってしまいますので、下記の様に h1のテキストが指定している場合のみ表示するようにしておくと汎用性が高まります。
 

 
 
ちなみに、デフォルトのテンプレートでは h2タグ以降の設定はありませんので、h2タグ以降は必要に応じてビューテンプレートファイルの中で設定するといいでしょう。
 
 

CakePHP3の関連記事

CakePHPのpostlinkで生成した削除リンクをクリックしても処理が実行されない対処法
CakePHP4のCSS、JavaScript、画像のブラウザへのキャッシュをコントロールする
CakePHP3でレコードを保存(追加、更新、Insert、Update)する複数の方法を紹介
CakePHP3でモデルなしフォームからCSVをアップロードしレコードを更新する方法解説
CakePHP3でPHP Simple HTML DOM Parserを使ってスクレイピングする方法
CakePHP3のInsert On Duplicate Key Update(upsert)構文を解説・バルク処理も
CakePHP3の1対多での連携を中間テーブルを使った多対多の連携に変更するときの手順
CakePHP3でデフォルトのソート条件を設定してユーザの選択肢たソート条件を有効にする方法
CakePHP3で Ajaxを使う方法の解説。3.6以降対応。Successとthenの両方を解説。
CakePHP3でパンくずの指定は HTMLヘルパーを使って指定する方法を解説
 
その他の「CakePHP3」に関する記事一覧
 
 

 - CakePHP 3.x 4.x 5.x

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

CakePHP3のCakeDC/Usersのバリデーションのカスタマイズ方法解説
CakePHP3のCakeDC/Usersのバリデーションのカスタマイズ方法解説

CakeDC謹製Usersプラグインの紹介。Usersのカスタマイズとして入力項目のバリデーションの変更を、プラグインのファイルは触らずオーバーライドにより実装する方法を解説する。

CakePHP3で環境変数を設定して本番環境と開発環境を分けて処理をする場合
CakePHP3で環境変数を設定して本番環境と開発環境を分けて処理をする場合

CakePHP3で開発環境と本番環境とで違う設定ファイルを読み込ませて環境ごとに定数を切り替える方法を解説。Apacheのhttpd.confに環境変数を設定し、それを読み込み判別する。

CakePHP3で「SQLSTATE[23000]: Integrity constraint violation」「SQLSTATE[42S22]: Column not found」などのエラーが出たときの確認するポイント
CakePHP3で「SQLSTATE[23000]: Integrity constraint violation」「SQLSTATE[42S22]: Column not found」などのエラーが出たときの確認するポイント

CakePHP3の開発で発生する「SQLSTATE[23000]: Integrity constraint violation」「SQLSTATE[42S22]: Column not found」のエラーには特有の原因もあるため、その説明と対処方法の解説。

CakePHP4で公開側と管理側のデザインテンプレートを分ける方法・setLayout()
CakePHP4で公開側と管理側のデザインテンプレートを分ける方法・setLayout()

CakePHP4でデフォルトのレイアウトファイル「default.php」は管理側に使用し、これとは別のデザインを公開側のページに設定したい、を実装する方法を解説。

CakePHP 2.3でファイルをアップロード・その2 ファイル名を乱数で設定

CakePHPのアップロードするファイル名を乱数で変更しセキュリティを高める方法を解説。

CakePHP4のクリエビルダーを使用してOR条件をAND条件でつなぐSQL文を作る方法
CakePHP4のクリエビルダーを使用してOR条件をAND条件でつなぐSQL文を作る方法

CakePHP4のクリエビルダーを使って複数のOR条件をANDでつなぐSQL文を作成する方法を解説。OR条件を記述したwhere句を2つつなげて記述する。

CakePHP3のUpload Plugin 3.0をバリデーションなど実運用向けのカスタマイズ方法解説・その2
CakePHP3のUpload Plugin 3.0をバリデーションなど実運用向けのカスタマイズ方法解説・その2

CakePHP3でファイル、画像をアップロードするプラグイン、upload plugin 3を導入する手順を解説した記事。3部作のその2でバリデーションなどの実用的なカスタマイズ方法を解説。

URL短縮サービス「TTTオンライン(https://ttt.onl)」公開
URL短縮サービス「TTTオンライン(https://ttt.onl)」公開

URL短縮サービス「TTTオンライン(https://ttt.onl)」を公開。メールやSNSでは使いにくい長いURLを短いURLに変換するサービス。QRコードも。Google URL Shortenerが2019年3月にサービス終了。

CakePHP3でページごとに読み込むJavaScript、CSSを変える処理の解説
CakePHP3でページごとに読み込むJavaScript、CSSを変える処理の解説

CakePHP3でJavaScriptやCSSを編集する基本形から、それらやテンプレート(エレメント)を特定のテンプレートを読み込んだときのみ編集、実行するための方法、ブロック化について解説。

CakePHP3で保存前にバリデーション結果を取得する2つの方法
CakePHP3で保存前にバリデーション結果を取得する2つの方法

CakePHP3でデータベースに値を保存する前にバリデーションを行い、その結果によって処理を振り分ける方法について解説。「$topic->errors()」と「$topic->hasErrors()」の2つの方法がある。