Day: July 29, 2024

Laravel+microCMS(初心者です。)

WordPressからmicroCMSへ移行したいでも、JS系は全くわからないし理解できない。
PHPならなんとなく分かる気がする。

  • WordPressはカスタマイズできるレベル
  • PHPは簡単なことなら理解できるレベル
  • NEXTやNUXTは理解不能
  • ちょっと理解できるLaravel11で

トップページのお知らせをmicroCMSで更新させたい

microCMSにログインし、お知らせのAPIを作成する

$result = $client->list("news");
var_dump($result);

Laravel:.envファイルにmicroCMSの情報を追加する

MICRO_CMS_DOMAIN="xxx" //xxx.microcms.ioのxxx部分
MICRO_CMS_API_KEY="APIキー"

Laravel:共通で利用するcontrollerを作成する

protected $client;

    public function __construct()
    {
        $this->client = $this->createClient();
    }

    protected function createClient() {
        $microCmsDomain = env('MICRO_CMS_DOMAIN');
        $microCmsApiKey = env('MICRO_CMS_API_KEY');
        return new Client($microCmsDomain, $microCmsApiKey);
    }

    public function listData($endpoint) {
        return $this->client->list($endpoint, ["limit" => 100]);
    }

Laravel:IndexControllerにお知らせ部分のコードを書く

class IndexController extends BaseController
{
    public function index() {
        $result = $this->listData('news');
        $contents = $result->contents;
        return view('index',compact('contents'));
    }
}

Laravel:index.blade.phpにお知らせ部分のコードを書く

@foreach ($contents as $content)
                <tr>
                   <th>{{ \Carbon\Carbon::parse($content->createdAt)->format("Y.m.d") }}</th>
                   <td><a href="{{ route('news') }}?id={{ $content->id }}">{{ $content->title }}</a></td>
               </tr>
            @endforeach
Posted by nuhappy in WORK