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タグに関する記述と
<title>
<?= $cakeDescription ?>:
<?= $this->fetch('title') ?>
</title>
h1タグに関する記述とがあります。
<li class="name">
<h1><a href=""><?= $this->fetch('title') ?></a></h1>
</li>
この処理の部分で、テーブル名に基づくテキストが編集されます。
titleタグ、h1タグのテキストを任意のものに変える方法
これに対して、titleタグ、h1タグのテキストを変更したい場合は
ページごとのテンプレートファイルにページごとの値を設定していきます。
/src/Template/Tests/index.ctp
titleタグに編集するテキストは、下記の様に設定します。
<?php $this->assign("title", "タイトルタグに編集するタイトル"); ?>
$this->assign()の 1つ目のパラメータに変数名を指定して、2つ目のパラメータに編集したいテキストを指定します。
デフォルトの設定では titleタグ、h1タグは同じテキストが編集される設定になっていますので、h1タグのテキストを違うテキストにしたい場合は、下記の様に h1タグ用のテキストを設定します。
<?php $this->assign("h1", "h1タグに編集するh1テキスト"); ?>
また、h1タグ用のテキストを設定した場合は、「/src/Template/Layout/defult.ctp」ファイルに h1のテキストを編集する設定をします。
<li class="name">
<h1><a href=""><?= $this->fetch('h1') ?></a></h1>
</li>
ただ、このままだと h1タグの指定がないページでは h1タグの部分が表示されなくなってしまいますので、下記の様に h1のテキストが指定している場合のみ表示するようにしておくと汎用性が高まります。
<li class="name">
<h1><a href=""><?= $this->fetch('h1') ? $this->fetch('h1') : $this->fetch('title') ?></a></h1>
</li>
ちなみに、デフォルトのテンプレートでは 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」に関する記事一覧
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
CakePHP4のクリエビルダーを使用してOR条件をAND条件でつなぐSQL文を作る方法
CakePHP4のクリエビルダーを使って複数のOR条件をANDでつなぐSQL文を作成する方法を解説。OR条件を記述したwhere句を2つつなげて記述する。
-
-
CakePHP 2.3 Model、Controllerの見たい変数の中身をログ出力
CakePHPの Modelや Controllerの変数の中身をログとして出力して見る方法を提供します。
-
-
CakePHP4系でJSONレスポンスの処理ではwithStringBodyを使う。3との違い解説
responseの値を指定する方法は3系では「body」だが、4系では「withStringBody」になりる。加えてJSON形式なら「withType」で指定するなど4系では結構異なる処理がある。
-
-
CakePHP4のFrozenDateで1ヵ月前、先月、今月1日、来月末の日付などを算出する方法
CakePHPには「FrozenDate」の日付を扱う関数が用意されている。これを利用して、1ヶ月後、月末日、月初日、5日後などを指定して日付を取得できる。それを解説。
-
-
CakePHP3にデザインテンプレートBootstrapを導入する方法・friendsofcake/bootstrap-ui使用
CakePHP3にプラグイン「friendsofcake/bootstrap-ui」、デザインテンプレート「Bootstrap」を設置する手順を解説。Bootstrapの簡単な使い方やデフォルトのデザインとの混在方法なども解説。
-
-
CakePHP3、CakePHP4のキャッシュをクリアする方法「bin/cake cache clear_all」を使う
CakePHP3、CakePHP4では処理を高速化する手法の一つとしてキャッシュを利用している。しかし、その情報は元の情報を更新しても反映されない場合がある。そんなときはキャッシュを削除する必要がある。
-
-
CakePHP3のタイムゾーンを協定世界時UTCから日本標準時間JSTにずれを変更する方法
CakePHP3の標準設定のタイムゾーンは「UTC(協定世界時)」に設定されている。これを日本標準時に変更する方法(app.php、bootstrap.phpの変更方法)の解説。
-
-
CakePHP3のCakeDC/Usersでログインユーザの所有レコードのみ更新、削除する権限管理の設定方法
CakePHP3のユーザ管理、ログイン認証プラグイン「CakeDC/Users」の権限管理を行う方法やアクセスできるコントローラー、アクションを設定、所有権を持つレコードのみ更新できる設定方法を解説。
-
-
CakePHP4の定数定義ファイルを環境変数によって本番と開発を振り分ける方法解説
CakePHP4で開発環境と本番環境とで違う設定ファイルを読み込ませて環境ごとに定数を切り替える方法を解説。Apacheのhttpd.confに環境変数を設定しそれを読み込み判別する。
-
-
CakePHP3でレコードを保存(追加、更新、Insert、Update)する複数の方法を紹介
CakePHP3でレコードを追加、更新(Insert、Update)する記述方法を解説。1件ずつ処理、全件をまとめて処理、条件に該当する複数件のレコードを処理方法をサンプルコードを用いて解説。