中で定型の部分が多くあることに気付きます。までは、どのページでもそう多く変化することはないと思います。中にコードを埋めるという逆の発想で、これはこれで理に適っている仕組みです。書きたい、でも保守性も考えたいとなったときに活躍するのがテンプレートエンジンです。使えたら、とりあえずインストールします。しても結果は同じですが、公式ドキュメントは全てスペースありで記述されているので統一します。プログラムから分離するのが今回のゴールなので、テンプレートは別ファイルとして用意します。タグがそのままテンプレートに埋め込まれています。危険性があるので、エスケープ処理をする必要があります。自動でエスケープ処理をしてくれる仕組みがあります。するかどうか決める仕組みもあります。ときだけエスケープが働きます。リスクとなるので避けたいところですが、テンプレート側で一つ一つエスケープする方法もあります。部分的に有効化および無効化できます。挟まれた部分は無効化されます。側の話でしたが、ここからはテンプレート側の話です。同じでコメントを記述できます。いった制御文を記述します。連続した数値をリストアイテムとして出力する場合は次のようになります。あった部分は空行になって出力されます。空行の抑制は後述します。変数の出力で使いますが、計算式を入れて計算結果を表示したりもできます。組込みのフィルタも多数用意されているため、値の加工も容易です。区切り形式を使えます。指定したときの出力の違いを観察します。した上で、ソースを下記のように変更。