他の静的なページと同じテーマでデザインされたヘッダーやナビゲーションなどのレイアウト構造を持ちながら、サーバーサイドで動的にレンダリングされたページを定義する方法です。
サイトマップにページを作成し、任意のコンテンツのパスを与えてください。
拡張子が .php となるように path 列を設定してください。
相対パスで設定する場合、PHPのカレントディレクトリ = エントリースクリプト .px_execute.php があるディレクトリを起点として解釈されます。
パブリッシュされる前のプレビュー環境と後のパブリッシュ環境とでは、カレントディレクトリは異なります。
src_px2/foo/bar.php がエンドポイントの場合の、プレビュー環境のカレントディレクトリは src_px2/ です。
パブリッシュ先ディレクトリが dist/ の場合、このコンテンツのパブリッシュ環境でのカレントディレクトリは dist/ になります。
エンドポイントの実行空間では、 $paprika が利用できます。また、Composerが生成する vendor/autoload.php が自動的に読み込まれています。
プレビュー環境では $px も利用できますが、パブリッシュ後の環境には $px が存在しなくなる点に注意してください。
動的なページの実装には、いくつかの要件があります。
コンテンツの先頭(何らかの最初の出力の前)に、 if(!$paprika){ return; } を挿入してください。
スクリプトが完了したときに、 return; するか、そのまま何もせずに終了してください。exit() を呼び出さないでください。
これを実装すると、最小構成は次のようになります。
<?php
if( !isset($paprika) ){
return;
}
?>
<p>Hello World!</p>
exts オプションに html を追加します。$conf->funcs->processor->html の先頭にも picklesFramework2\paprikaFramework\main::processor を追加します。.html 拡張子でも PHPが実行されるよう設定します。 .htaccess で 設定する場合、 AddHandler application/x-httpd-php .php .html のように書きます。