本文へスキップ

その他

アカウント・ブログ・記事ソースの関係

  • 1つのアカウントで複数のブログを持てます
  • 作成できるブログ数(サイト数)と公開できる記事数の上限はプランによって異なります。詳しくは料金ページを参照してください
  • ブログごとに、記事の置き場所となる記事ソース(NotionのデータベースやGitHubのリポジトリ)を接続します

ブログのURL(サブドメインと独自ドメイン)

  • ブログには○○.nekote.blog形式のサブドメインが割り当てられます。サブドメインはブログ作成時に自分で決め、あとからブログ設定で変更できます
  • appwwwblogなどの一部のサブドメインは予約済みのため取得できません
  • 有料プランでは、自分のドメイン(独自ドメイン)でブログを公開できます。設定方法は独自ドメインを参照してください

公開URLとslugの基本

記事の公開URLに使われる文字列をslug(スラッグ)と呼びます。Notionでは記事の「スラッグ」プロパティ、GitHubではfrontmatterのslugで指定します。

  • スラッグが未設定の場合、NotionではページIDベースのURLになり、GitHubではファイル名(拡張子を除く)がslugになります
  • slugは公開後も変更できます(全プラン)。変更を反映すると記事のURLが新しいslugに変わり、旧URLは404になります(自動リダイレクトはありません)
  • 同じブログ内でslugが重複した場合は同期エラーになります。エラーになる範囲はソースによって異なり、Notionではあとから公開した記事だけが、GitHubでは重複した全ファイルがエラーになります(トラブルシューティングを参照)
  • /%・空白などの一部の文字は使えません。長さは200文字以内で、日本語も使えます。ルールに違反した場合は同期エラーになります

固定ページの基本

About・プロフィールなどの固定ページを、記事とは別に公開できます。Notionでは「種別」プロパティで固定ページを選び、GitHubではコンテンツディレクトリ直下のpages/にファイルを置きます。

  • URLは記事と同じ/スラッグの形式です。記事一覧・タグ・カテゴリ・RSS・記事検索には出ません
  • 公開・更新の操作は記事と同じです。ダッシュボードでは記事一覧とは別の「固定ページ」画面にまとまります
  • 公開できる固定ページは1ブログ10件までです(プランの記事数上限には数えません)。上限を超えたときの動作はソースによって異なり、Notionでは超えたページだけが同期エラーになり、GitHubではその同期全体がエラーになります(公開中の内容は前回の同期結果のまま維持されます)
  • 公開しただけではブログのメニューには出ません。メニューに出すには、ダッシュボードの「ナビゲーション」でリンクを追加してください(設定の説明
  • 記事と固定ページはあとから切り替えられます。Notionでは「種別」を変更すると次の反映時に切り替わり、GitHubではgit mvposts/pages/の間を移動します(slugが同じなら、URLと公開日はそのまま引き継がれます)

Markdown記法の詳細(GitHub連携)

GitHub連携のMarkdownで使える、HTMLとコールアウト記法の詳細です。

HTMLで書く

レイアウト用のクラスを付けたいときなど、Markdownでは書けない部分をHTMLで書けます。安全のため、使えるタグと属性は決められた範囲だけです。

使えるタグ:

種類 タグ
ブロック divpdetailssummaryfigure
インライン spanbrkbdsupsubmarksmallusdel
リンク・画像 aimg

使える属性:

タグ 属性
すべて class
a hreftitle
img srcalttitlewidthheight
details open
<div class="l--flex -g:20">

左のカラムの中身。

</div>
  • ブロックのタグは、開始タグ・終了タグの前後に空行を空けてください。空行が無いと、中身がMarkdownとして解釈されません
  • <p class="…">のように段落へクラスを付けるときは、1行で閉じてください。中に空行を挟むと段落が分かれてしまいます
  • <span><a><img>は文中でそのまま使えます。<img>は1行だけで書くこともできます
  • 上の表に無いタグは、タグだけが外れて中身のテキストが残ります<b>太字</b>太字)。<script><style><iframe><svg>などは中身ごと消えます。<!-- コメント -->も消えます
  • 上の表に無い属性は消えますstyleidtargetrelonclickなどは使えません。余白・配置・色はクラスで指定してください
  • <a>targetrelは書けません(外部リンクのrelは自動で付きます)。idでアンカーを作ることもできません(見出しに自動で付くidを使ってください)
  • <img>widthで表示幅を指定できます(<img src="./a.png" alt="図" width="300">)。heightは画像の実際の縦横比から自動で決まるため、書いても計算し直されます。loadingdecodingも自動の値に置き換わります。値は300のような整数だけで、50%のような割合はクラスで指定してください
  • HTMLで書いたリンク・画像も、Markdownで書いたときとまったく同じ扱いです。相対リンクの書き換え・画像の取り込み・URLの安全チェックがそのままかかります
  • 取り除かれたタグ・属性・クラスは同期履歴の警告に出ます

表示が変わる場合があります。これまでMarkdown内のHTMLはタグごとそのまま表示されていました。次回の同期から上のルールで解釈されるため、コードブロックやインラインコードの外にタグ風の文字列を書いていた記事は表示が変わります(タグが消えて中身だけが残ります)。取り除いたものは同期履歴の警告で確認できます。

折りたたみ・カラム・図(:::

コールアウトと同じ:::の記法で、折りたたみ・段組み・キャプション付きの図も書けます。

:::details[クリックで開く]
折りたたみの中身。
:::

:::details[見出しにもできる]{level=2}
`{level=2}``{level=4}`を付けると、開閉のラベルが見出しになり目次にも載ります。
:::

::::columns
:::column
左のカラム。
:::
:::column
右のカラム。
:::
::::

:::figure[キャプション]
![](./diagram.png)
:::
  • detailstogglecolumnscolumnfigure予約された名前で、コールアウトにはなりません
  • :::toggle:::detailsの古い書き方で、同じ折りたたみとして表示されます
  • カラムは外側を::::columns、内側の各カラムを:::columnで書きます(外側のコロンを1つ増やすのは入れ子のためです)。画面の幅が足りなくなると、全カラムが縦1列に切り替わります

ブックマークなど(::

行頭に::で書く記法です。下の3つだけが記法として扱われ、それ以外の::name:nameはそのままの文字として表示されます。

::bookmark{url="https://example.com"}
記法 表示
::bookmark{url="…"} リンクをカード風に表示します(::bookmark[表示文字]{url="…"}で文言を変えられます)
::audio{url="…"} 音声プレイヤー
::file{url="…"} ファイルのダウンロードリンク

コードブロックのキャプション

コードブロックの言語のうしろにtitle="…"と書くと、ファイル名などのキャプションが付きます。

```ts title="src/server.ts"
console.log("hello");
```

コールアウト(:::

補足や注意書きを枠付きで目立たせる記法です。:::で囲み、種類(type)を書きます。[...]でタイトルを付けられます。

:::tip[ここがポイント]
タイトル付きのコールアウトです。**強調**`コード`もそのまま使えます。
:::

:::warning
タイトルを省くと、アイコンと本文が横に並びます。
:::

コールアウトの表示例。tip・info・note・warning・alert・check・helpの7種

  • 種類はtipinfonotewarningalertcheckhelpの7つです。point(=tip)・hint(=info)・memo(=note)と書いても同じものになります
  • ::::で囲めば入れ子にできます
  • 上の「ブックマークなど」で挙げた3つ以外の::nameと、コロン1つの:nameには対応していません。文中のコロン(12:30など)はそのまま表示されます
  • コールアウトの種類名・別名・中立名callout・上の予約名以外(例: :::spoiler)には対応していません。書いた場合はエラーにはならず、名前と中身がグレーの箱として表示されます(同期履歴に警告が残ります)

自分の記事を世界へ。