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タグに関する記述と
1 2 3 4 |
<title> <?= $cakeDescription ?>: <?= $this->fetch('title') ?> </title> |
h1タグに関する記述とがあります。
1 2 3 |
<li class="name"> <h1><a href=""><?= $this->fetch('title') ?></a></h1> </li> |
この処理の部分で、テーブル名に基づくテキストが編集されます。
titleタグ、h1タグのテキストを任意のものに変える方法
これに対して、titleタグ、h1タグのテキストを変更したい場合は
ページごとのテンプレートファイルにページごとの値を設定していきます。
/src/Template/Tests/index.ctp
titleタグに編集するテキストは、下記の様に設定します。
1 |
<?php $this->assign("title", "タイトルタグに編集するタイトル"); ?> |
$this->assign()
の 1つ目のパラメータに変数名を指定して、2つ目のパラメータに編集したいテキストを指定します。
デフォルトの設定では titleタグ、h1タグは同じテキストが編集される設定になっていますので、h1タグのテキストを違うテキストにしたい場合は、下記の様に h1タグ用のテキストを設定します。
1 |
<?php $this->assign("h1", "h1タグに編集するh1テキスト"); ?> |
また、h1タグ用のテキストを設定した場合は、「/src/Template/Layout/defult.ctp」ファイルに h1のテキストを編集する設定をします。
1 2 3 |
<li class="name"> <h1><a href=""><?= $this->fetch('h1') ?></a></h1> </li> |
ただ、このままだと h1タグの指定がないページでは h1タグの部分が表示されなくなってしまいますので、下記の様に h1のテキストが指定している場合のみ表示するようにしておくと汎用性が高まります。
1 2 3 |
<li class="name"> <h1><a href=""><?= $this->fetch('h1') ? $this->fetch('h1') : $this->fetch('title') ?></a></h1> </li> |
ちなみに、デフォルトのテンプレートでは h2タグ以降の設定はありませんので、h2タグ以降は必要に応じてビューテンプレートファイルの中で設定するといいでしょう。
CakePHP3の関連記事
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にOGPをfetch、asignを利用してテンプレートごとに指定する方法を解説
その他の「CakePHP3」に関する記事一覧
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
CakePHP 2.x系 Viewでのコメントの記述方法など
CakePHPにおいて View、ctpファイルでコメントを記述する方法を解説。
-
-
CakePHP3のデバッグキット(DebugKit)を強制的に有効、無効に変更する方法
CakePHP3に付属しているデバッグのためのツール、デバッグキットを強制的に有効化、無効化する方法を解説。初期設定では開発環境としてありそうなドメインの場合のみ有効になるように設定されている。
-
-
CakePHP3のメッセージ日本語化の設定(国際化と地域化の機能の使い方の解説)
CakePHP3の英語のメッセージを日本語化(多言語化)する手順を解説。オリジナルのメッセージを作成する方法やプログラムで文言を追加する場合の対応なども解説。
-
-
CakePHP3の更新画面でUpload Plugin 3.0を使う方法、viewで使う方法解説・その3
CakePHP3でファイル、画像をアップロードするプラグイン、upload plugin 3を導入する手順を解説した記事。3部作のその3で記事を更新する際のファイルの取り回しなどについてを解説。
-
-
CakePHP3のcontroller内でテンプレート、レイアウトを変更する際の指定方法
CakePHP3でテンプレートファイルやレイアウトファイルをデフォルトのものから別のものに変更したい場合の指定方法を解説。
-
-
CakePHPで favicon.icoやapple-touch-icon-144-precomposed.pngが could not be foundのエラーが出るときの対処方法
CakePHPで「CakeDC/Users」などルーティングを行うプラグインを利用するときに、favicon.icoやapple-touch-icon-144-precomposed.pngがNotFoundエラーになることがある。その対処方法の解説。
-
-
CakePHP 2.3でファイルのアップロード処理を作る
CakePHPでプラグインを使わないファイルアップロード処理を解説します。簡単です。DBにファイルを格納する方法も。
-
-
CakePHP4のcake cache clear_allでPermission deniedはパーミッションの変更が必要
CakePHP4でキャッシュをクリアするコマンドcake cache clear_allでPermission deniedのエラーが出るのはcakeにパーミッションが足りないとき。その対処方法を解説。
-
-
CakePHP3にOGPをfetch、asignを利用してテンプレートごとに指定する方法を解説
CakePHP3でOGPを設定する方法を解説。fetch、assignを使用しレイアウトファイルに編集した変数にテンプレートファイルから値を指定する。これを利用してOGPを編集する。
-
-
CakePHP3のCakeDC/UsersのUserHelperでログアウトやreCAPTCHAをカスタマイズ
CakeDC謹製Usersプラグインの紹介。UserHelperを利用し、ログアウトのリンクや権限があるときのみ表示されるリンク、プロフィールページへのリンク、reCAPTCHAの設置方法などを解説。