Download the PHP package ttskch/esaba without Composer
On this page you can find all versions of the php package ttskch/esaba. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package esaba
esaba
esabaとは
esa.io 上の記事データをホストするためのPHP製のWebアプリケーションです。/post/{記事ID}
というURLでesa.io上の任意の記事を公開できます。
esa.io | esaba (デフォルトのcss) |
---|---|
esa.io標準の 記事の外部公開 との違い
- 記事の表示に独自のcss/jsを使うことができる(scss/webpack対応)
- カテゴリやタグごとに細かく公開/非公開を設定できる
- 社内のみに公開したい場合などに便利(オンプレなのでWebサーバーレベルでアクセス制限可能)
- 記事中に他の記事へのリンクがある場合は esabaのURLに変換して出力してくれる ので、記事本体のURLと公開用のURLを別々に管理する必要がない
環境要件
インストール方法
アクセストークンの発行
事前に https://{チーム名}.esa.io/user/tokens/new
にてRead権限を持った アクセストークン を発行しておく必要があります。
任意のサーバーへのインストール
Herokuへのデプロイ
本リポジトリをフォークするか(デプロイ先が公開されてしまってよい場合)、以下の手順にて本リポジトリのコードベースをprivateリポジトリにコピーしてください。
その上で、 https://heroku.com/deploy?template=https://github.com/{user}/{repo}
をブラウザで開くとHerokuにデプロイできます。
使い方
設定
設定は .env.local
または config/esaba.php
で行います。
最小限の設定
アクセス制限
カテゴリ/タグに応じて公開/非公開を設定することができます。設定値はJSON形式の文字列とする必要があり .env.local
ではエスケープなどが面倒なので、config/esaba.php
で設定するのがおすすめです。
また、esabaで配信されるすべてのページについて、検索エンジンのインデックス対象とするかどうかを設定することができます。
設定を省略した場合はデフォルトで「インデックス対象としない」設定になります。インデックス対象としたい場合にのみ、以下のように設定を変更してください。
HTMLの置換
記事中に他の記事へのリンクがある場合は、esabaでその記事を閲覧するためのURLに自動で置き換えられます。
また、それとは別に任意の置換ルールを設定しておくこともできます。例えば、すべての target="_blank"
を削除したい場合は、以下のように設定します。
カテゴリ/タグに応じたcss/jsの切り替え
上記のように設定した上で、 ./public/css/post/your-own.css
および ./public/js/post/your-own.js
を設置することで、path/to/category
カテゴリや #tag_name
タグに該当する記事に対して指定したcss/jsを適用させることができます。
Webhook
esa Generic Webhook を使うことで、esa.io上で記事が作成/更新されたときに、esaba側のキャッシュを自動で更新させることができます。
/webhook
へのアクセスの解放
もしWebサーバーレベルでのアクセス制限を設定している場合、 /webhook
へのアクセスはesa.ioからのwebhookリクエストを受け取るために解放しておく必要があります。
例えば、Apache 2.4の場合は以下のような設定が必要になります。
開発
ローカルサーバー起動
ブラウザで http://localhost:8000/post/:post_number
へアクセス。
webpackによる独自アセットのビルド
esabaはscss/webpackに対応しています。
./assets/post/user/{エントリー名}.(scss|js)
に独自アセットを配置し、
を実行すると、以下のように build/{エントリー名}.(css|js)
というパスで利用できるようになります。
All versions of esaba with dependencies
ext-ctype Version *
ext-dom Version *
ext-iconv Version *
doctrine/annotations Version ^1.13
polidog/esa-php Version ^2.0
symfony/apache-pack Version ^1.0
symfony/cache Version 6.0.*
symfony/console Version 6.0.*
symfony/css-selector Version 6.0.*
symfony/dom-crawler Version 6.0.*
symfony/dotenv Version 6.0.*
symfony/flex Version ^2
symfony/framework-bundle Version 6.0.*
symfony/monolog-bundle Version ^3.7
symfony/runtime Version 6.0.*
symfony/twig-bundle Version 6.0.*
symfony/webpack-encore-bundle Version ^1.13
symfony/yaml Version 6.0.*
twig/extra-bundle Version ^2.12|^3.0
twig/twig Version ^2.12|^3.0