HugoでHTMLの代わりにphpファイルとして出力する
Output as a php file instead of HTML in Hugo
既存のウェブサイトとの兼ね合いで、完全なhtmlファイルではなく、内部処理を含むphpファイルを出力したいのであれば、configファイルで、phpの宣言を追加することで実現できます。HTMLエスケープを行わせないため「isPlainText = true」を定義するのが肝です。
このとき、contentファイルは.html、layoutsファイルは.phpを拡張子にして保管します。
config.toml
[mediaTypes]
[mediaTypes."text/x-php"]
suffixes = ["php"]
[outputFormats]
[outputFormats.html]
mediaType = "text/html"
isPlainText = true
[outputFormats.php]
baseName = "index"
isPlainText = true
mediaType = "text/x-php"
[outputs]
page = ["php"]
term = ["php"]
taxonomy = ["php"]
home = ["php"]
2021/01/22