mcpField
W
woocommerce-markdown

woocommerce-markdown

github.com/woocommerceドキュメント10.6k210 回インストール今日更新
リポジトリ

woocommerce-markdown について

WooCommerce プロジェクトの Markdown ファイルを作成・編集する開発者向けのスキルです。書式規則と、変更後に lint を実行する手順をまとめています。

主な機能

  1. 01WooCommerce の Markdown 規約
  2. 02見出し・リスト・コードブロックの規則
  3. 03UTF-8 とディレクトリツリーの指針
  4. 04markdownlint の修正と確認手順

活用シーン

  1. 01プロジェクト規約に沿った Markdown の作成
  2. 02編集後の文書の lint

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/woocommerce/woocommerce --skill woocommerce-markdown

インストール後、Claude Code で/woocommerce-markdownを入力して読み込まれたか確認します。

詳細

WooCommerce Markdown ガイドライン

このスキルでは、WooCommerce プロジェクトで Markdown ファイルを作成・編集する際のガイダンスを提供します。

重要なルール

  1. 変更後は必ず lint を実行する - markdownlint --fix を実行してから、検証のために markdownlint を実行します
  2. リポジトリのルートから実行する - .markdownlint.json 設定が読み込まれるようにします
  3. UTF-8 エンコーディングを使用する - 特にディレクトリツリーや特殊文字で重要です
  4. WooCommerce の Markdown 標準に従う - 下記の設定ルールを参照してください

WooCommerce の Markdown 設定

このプロジェクトでは、次の特定のルールで markdownlint を使用しています(.markdownlint.json より)。

有効なルール
  • MD003: 見出しスタイルは ATX 形式にする必要があります(# Heading。Heading\n=== ではありません)
  • MD007: 箇条書きのインデントは 4 スペースにする必要があります
  • MD013: 行の長さ制限は無効です(9999 に設定)
  • MD024: 同じ内容の見出しを複数使用できます(兄弟見出しのみ確認)
  • MD031: フェンス付きコードブロックの前後には空行が必要です
  • MD032: リストの前後には空行が必要です
  • MD033: h1、h2、h3、br、summary、details、video 要素では HTML を使用できます
  • MD036: 強調(太字/斜体)を見出しとして使用しないでください。適切な見出しタグを使用します
  • MD040: フェンス付きコードブロックには言語を指定する必要があります
  • MD047: ファイルの末尾は単一の改行にする必要があります
無効なルール
  • no-hard-tabs: タブを使用できます
  • whitespace: 行末の空白に関するルールは無効です

Markdown の記述ガイドライン

見出し
# Main Title (H1) - Only one per file

## Section (H2)

### Subsection (H3)

#### Minor Section (H4)
  • 下線形式ではなく、ATX 形式(#)を使用します
  • ファイル内の H1 は 1 つにします(通常はタイトルです)
  • 見出しの階層を維持します(レベルを飛ばさないでください)
リスト

箇条書き:

- Item one
- Item two
    - Nested item (4 spaces)
    - Another nested item
- Item three

番号付きリスト:

1. First item
2. Second item
3. Third item

重要:

  • ネストされたリスト項目には 4 スペースを使用します
  • リストの前後に空行を入れます
  • 箇条書きには - を使用します(* や + は使用しません)
コードブロック

必ず言語を指定してください:

```bash
pnpm test:php:env
```

```php
public function process_order( int $order_id ) {
    // code here
}
```

```javascript
const result = calculateTotal(items);
```

よく使用する言語識別子:

  • bash - シェルコマンド
  • php - PHP コード
  • javascript または js - JavaScript
  • typescript または ts - TypeScript
  • json - JSON データ
  • sql - SQL クエリ
  • markdown または md - Markdown の例

コードブロックのルール:

  • 開始フェンスの前に空行を入れます
  • 終了フェンスの後に空行を入れます
  • 必ず言語を指定します(プレーンな ``` は使用しません)
インラインコード

インラインコードにはバッククォートを使用します。

Use the `process_order()` method to handle orders.
The `$order_id` parameter must be an integer.
リンク
[Link text](https://example.com)

[Internal link](../path/to/file.md)

[Link with title](https://example.com "Optional title")
表
| Column 1 | Column 2 | Column 3 |
|----------|----------|----------|
| Value 1  | Value 2  | Value 3  |
| Value 4  | Value 5  | Value 6  |
  • 列の区切りにはパイプ(|)を使用します
  • ヘッダー区切り行は必須です
  • 配置指定は任意です(:---、:---:、---:)
ディレクトリツリー

必ず UTF-8 の罫線文字を使用します:

src/
├── Internal/
│   ├── Admin/
│   │   └── Controller.php
│   └── Utils/
│       └── Helper.php
└── External/
    └── API.php

次の形式は使用しないでください:

  • ASCII アート(+--、|--)
  • ツリー構造を表すスペースやタブ
  • 制御文字
強調
**Bold text** for strong emphasis
*Italic text* for regular emphasis
***Bold and italic*** for very strong emphasis

Markdown 編集のワークフロー

  1. Markdown ファイルを変更します

  2. lint の問題を自動修正します:

    markdownlint --fix path/to/file.md
    
  3. 残っている問題を確認します:

    markdownlint path/to/file.md
    
  4. 残っている問題(通常はコードブロックの言語指定)を手動で修正します

  5. 問題がないことを確認します - 出力がなければ成功です

  6. 変更をコミットします

よくある lint エラーと修正方法

MD007:リストのインデント

問題:

- Item
  - Nested (only 2 spaces)

修正:

- Item
    - Nested (4 spaces)
MD031:コードブロックの前後に空行が必要

問題:

Some text
```bash
command
```
More text

修正:

Some text

```bash
command
```

More text
MD032:リストの前後に空行が必要

問題:

Some text
- List item

修正:

Some text

- List item
MD036:見出しとして強調を使用

問題:

**Example: Using bold as a heading**

Some content here

修正:

#### Example: Using a proper heading

Some content here
MD040:コードに言語指定が必要

問題:

```
code here
```

修正:

```bash
code here
```

特別なケース

CLAUDE.md ファイル

CLAUDE.md ファイルは AI アシスタント向けのドキュメントです。

  • AI による最適な解析のため、適切にフォーマットする必要があります
  • すべての markdownlint ルールに厳密に従います
  • 明確で階層的な構成にします
  • 長いファイルには目次を含めます
README ファイル
  • H1 タイトルから始めます
  • 簡潔な説明を含めます
  • インストール/使用方法のセクションを追加します
  • 簡潔でざっと読める内容にします
変更履歴ファイル
  • Keep a Changelog 形式に従います
  • 日付の書式を統一します
  • 変更を種類ごとに分類します(追加、変更、修正など)

トラブルシューティング

ファイルがテキストではなく「data」と表示される

問題: ファイルに制御文字が含まれて破損しています

修正方法:

tr -d '\000-\037' < file.md > file.clean.md && mv file.clean.md file.md
file file.md  # Verify shows "UTF-8 text"
Lint で予期しないエラーが表示される

問題: リポジトリのルートから実行していません

修正方法:

# Always run from root
cd /path/to/woocommerce
markdownlint path/to/file.md

# NOT like this
markdownlint /absolute/path/to/file.md
自動修正が機能しない

問題: 手動での対応が必要な問題があります

修正方法:

  • コードブロックの言語仕様は手動で追加する必要があります
  • 長い行は手動で折り返しを調整する必要がある場合があります
  • 構造上の問題には、コンテンツの再構成が必要な場合があります

メモ

  • Markdown の問題の大半は markdownlint --fix で自動修正できます
  • markdownlint は必ずリポジトリのルートから実行してください
  • 特殊文字を扱うには UTF-8 エンコーディングが不可欠です
  • AI が最適に解析できるよう、CLAUDE.md ファイルは lint に合格する必要があります
  • Markdown の lint コマンドについては、woocommerce-dev-cycle スキルを参照してください

コメント