【初心者向け】microCMSの導入方法を分かりやすく解説

microCMS

Contents

microCMSとは

microCMSとは

microCMSとは、ヘッドレスCMSとも呼ばれ、表示画面の無いCMSになります。

では、表示画面のないCMSとは何でしょう?

従来のCMSはWordPressの様に、コンテンツを入稿するとシステムとコンテンツを表示する表示画面が備わっていました。

しかし、microCMSはヘッドレスなので、表示画面を自作する必要があります。

ヘッドレスCMSは入稿したコンテンツをAPIから取得することができ、このAPIを用いて必要なコンテンツを取得し、表示させたい場所に表示させます。

自作することによって、マルチデバイスへの対応部分的なCMS化スキーマの自由度が高いなどのメリットがあります。

しかし、自由度が高い分技術的難易度が高いというデメリットもあります。

今回は、そんな技術的難易度が高いmicroCMSの導入方法を、手順を追って分かりやすく解説していきます。

導入方法

microCMS

microCMSにログイン

microCMSにアクセスし無料で会員登録を行いログインします。

サービスを作成

ログインしたらまずはサービスを作成します。

APIを作成

サービスが作成できたらAPIの作成画面になるので、テンプレートか自分で決めるを選びます。

今回は自分で決めるを選択します。

API基本情報

次にAPI名とエンドポイント名を決めます。

ここでは自分の作成するコンテンツに応じた名前をつけましょう。

今回は両方とも「test」で行っていきます。

APIの型を決める

基本情報を入力したら、次にAPIの型を選択します。

今回は「リスト形式」を選択します。

APIスキーマを定義

APIスキーマ画面では、設定したいコンテンツの内容を決めることができます。

今回は「タイトル」「イメージ画像」「テキスト」の3つを設定します。

設定する際にフィールドIDには分かりやすい名前を英語で命名しましょう。

種類の欄には、設定したいコンテンツに合うものを選択します。

コンテンツの追加

APIスキーマの設定が完了すると。

下の画像の様に「コンテンツがありません」と表示されます。

追加ボタンをクリックし、コンテンツを追加します。

コンテンツの追加2

追加ボタンをクリックすると、先程設定したAPIスキーマが出てきます。

ここに設定したいコンテンツ内容を入力していき、入力が完了したら右上にある公開をクリックして公開します。

APIプレビュー

コンテンツの公開が完了したら、右上にあるAPIプレビューをクリックします

APIキーを確認

APIプレビューをクリックすると下の画像のような画面がでてきます。

赤枠の中の黒い部分が、ご自身のAPIキーになります。

このAPIキーは後ほど使用するので、見れる状態にしておきましょう。

サービスドメインを確認

ホームの画面左上のサービス名の下に記載されてあるのが「サービスドメイン」です。

こちらも後ほど使用するので、見れる状態にしておきましょう。

エディター

ここからはご自身のエディターでの作業になります。

※この記事ではvscodeをしようしています。

HTMLファイルを作成

エディターを起動させたら、HTMLファイルを作成します。

scriptタグを設定

HTMLファイルを作成したら、下の2つのscriptタグを設定します。

<script src="https://unpkg.com/microcms-js-sdk@latest/dist/umd/microcms-js-sdk.js"></script>
    const { createClient } = microcms;
    const client = createClient({
            serviceDomain: 'ご自身のサービスドメイン',
            apiKey: 'ご自身のAPIキー',
        });
  client
      .get({
        endpoint: 'test',
      })
      .then((res) => {
      ご自身が設定したいコード
      });

「ご自身が設定したいコード」部分を入力し、microCMSに登録したコンテンツの内容がHTMLファイルに吐き出されれば、導入完了です。

使用例

APIコンテンツ

表示例

コード

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>microCMS</title>
</head>
<style>
    .contents{
        width: 50%;
    }

    .title{
        display: inline-block;
        font-size: 1.2em;
        background-color: #415053;
        color: antiquewhite;
        width: 100%;
        text-align: center;
        border-radius: 999px;
        padding: .5em 0;
    }

    img{
        width: 100%;
    }
</style>
<body>
    
</body>
<script src="https://unpkg.com/microcms-js-sdk@latest/dist/umd/microcms-js-sdk.js"></script>
<script>
    const { createClient } = microcms;
    const client = createClient({
            serviceDomain: 'ご自身のサービスドメイン',
            apiKey: 'ご自身のAPIキー',
        });

    client
      .get({
        endpoint: 'test',
      })
      .then((res) => {
            console.log(res);
            let param = location.search;
            let body = document.querySelector("body");
            let h2 = document.createElement("h2");
            let p = document.createElement("p");
            let img = document.createElement("img");
            let div = document.createElement("div");
            h2.setAttribute("class", "title");
            p.setAttribute("class", "text");
            div.setAttribute("class", "contents");
            res.contents.forEach(item => {
            h2.innerText = item.title;
            img.src = item.image.url;
            p.innerText = item.text;
            body.appendChild(div);
            div.appendChild(h2);
            div.appendChild(img);
            div.appendChild(p);
            })
        })

</script>
</html>

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA