Skip to content

itnav/static-site-php-base

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Static Site PHP Base

PHP で動作する静的サイトのベース


🍀 環境


必須環境


🎱 開発


1. Docker の起動

docker compose up

Launchd URL (Default)


独自 PHP API


path_resolve

第1引数のパスを基準にして、第2引数のパスを絶対パスに変換する関数。

// /top/index.php
$path = path_resolve(__DIR__, '../_/styles/global.min.css'); // 👉 /_/styles/global.min.css

render

PHP ファイルをレンダリングする関数。

render('../component.php');

第2引数に配列を渡すと、レンダリングされる PHP ファイル内で $props として受け取れる。

// page.php
render('../component.php', ['title' => 'タイトル']);
// component.php
echo $props['title']; // 👉 タイトル

setup_teleporter

実行することで Teleporter が使用できるようになる関数。

setup_teleporter()

基本的に、テレポーターを使用したいページの先頭で実行するのが良い。

<?php setup_teleporter() ?>

<html>
    ...
</html>

teleporter

テレポーターを設置する関数。

<head>
    <?php teleporter('head') ?>
</head>

teleport

テレポーターへ文字列を送信する関数。

teleport('head', '<title>タイトル</title>');

また、第3引数のオプションで key を渡すことで、重複した送信を防ぐことができる。

// 1回目
teleport('head', '<title>Foo</title>', array('key' => 'title'));

// 二回目(`title` キーは既にテレポート済みなので送信されない)
teleport('head', '<title>Bar</title>', array('key' => 'title'));

// 出力 👉 <title>Foo</title>

teleport_style

CSS ファイルのテレポートに特化した関数。

// ローカルファイルの読み込み
teleport_style('head', path_resolve(__DIR__, './style.min.css'));

// 外部ファイルの読み込み
teleport_style('head', 'https://cdn.example.com/style.min.css');

第2引数のパスを自動で key として扱うため、オプションを設定しなくても重複した読み込みを防ぐことができる。


teleport_script

JavaScript ファイルのテレポートに特化した関数。

// ローカルファイルの読み込み
teleport_script('head', path_resolve(__DIR__, './script.js'));

// 外部ファイルの読み込み
teleport_script('head', 'https://cdn.example.com/script.js');

第2引数のパスを自動で key として扱うため、オプションを設定しなくても重複した読み込みを防ぐことができる。


flush_teleporter

テレポーターをフラッシュする関数。

flush_teleporter();

About

静的ページの PHP ベース

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published