Craft CMS の API をつかってみてあれこれやってみようとおもってるので、とりあえず触ってみる。
Going Headless | Craft 3 Documentation
https://docs.craftcms.com/v3/d...
ヘッドレス化 | Craft 3 ドキュメント
https://docs.craftcms.com/v3/j...
Plugin Store からインストール
プラグインストアで検索すれば Element API プラグインが出てくるのでインストールする
とりあえず
craftcms/element-api: Create a JSON API/Feed for your elements in Craft.
https://github.com/craftcms/el...
を見て作っていくわけだが、これを毎回やってくのはしんどいのかなー。。。
もっと勉強しないと。
MT みたいにとりあえず Endpoint があるのがありがたいけど、まぁ用意されてる物が無いときにPerlで作るのがいいか、PHPで作るのがいいか、という話か。
ドキュメントを参考に用意する
ドキュメントを参考に config/element-api.php を用意して、今回は article というセクションについて必要そうなので
<?php use craft\elements\Entry; use craft\helpers\UrlHelper; return [ 'endpoints' => [ 'article.json' => function() { return [ 'elementType' => Entry::class, 'criteria' => ['section' => 'article'], 'transformer' => function(Entry $entry) { return [ 'title' => $entry->title, 'url' => $entry->url, 'jsonUrl' => UrlHelper::url("article/{$entry->id}.json"), // 'summary' => $entry->summary, ]; }, ]; } ] ]; ?>
こんな感じで用意してみる。
https://note.mersy418.com/article.json
でアクセスしてみるとこんな感じで返ってくる。
なるほどなるほど。ここまではドキュメントにあるとおりでいけるかんじか。
丸見え状態。