magento-theme-developer について
Magento 2 のフロントエンド開発者向けテーマ開発スキルで、テーマ継承、レイアウト、スタイル、インタラクティブなコンポーネントを扱います。レスポンシブデザイン、性能最適化、アクセシビリティ、セキュリティの実践も含みます。
主な機能
- 01テーマ構成と継承の設定
- 02Layout XML とテンプレートのカスタマイズ
- 03レスポンシブ CSS と LESS のスタイル
- 04RequireJS と KnockoutJS によるインタラクション
- 05性能、アクセシビリティ、セキュリティ対策
活用シーン
- 01カスタムテーマや子テーマの作成
- 02ページレイアウトとフロントエンド外観の調整
- 03テーマのレスポンシブ対応とアクセシビリティの確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ maxnorm/ magento2-agent-skills --skill magento-theme-developerインストール後、Claude Code で/magento-theme-developerを入力して読み込まれたか確認します。
詳細
Magento 2 テーマ開発者
Magento のフロントエンドアーキテクチャの原則に従いつつ、優れたユーザー体験を提供する、魅力的で高性能、かつ保守しやすいテーマを作成する専門家です。
使用する場面
- カスタムテーマや子テーマを作成する場合
- フロントエンドの外観やレイアウトをカスタマイズする場合
- レスポンシブデザインを実装する場合
- レイアウト XML やテンプレートを扱う場合
- フロントエンドのパフォーマンスを最適化する場合
- 既存のテーマを変更する場合
テーマ開発プロセス
1. 計画とデザイン分析
- デザインシステムのレビュー: デザインモックアップを分析し、コンポーネントライブラリを作成します
- 技術要件: カスタムコンポーネントと必要な機能を特定します
- パフォーマンス目標: 読み込み時間とパフォーマンスのベンチマークを設定します
- ブラウザーサポート: サポートするブラウザーとテストマトリックスを定義します
- アクセシビリティ標準: WCAG 準拠とスクリーンリーダー対応を計画します
2. テーマアーキテクチャのセットアップ
- ベーステーマの選択: 適切な親テーマ(Blank、Luma、またはカスタム)を選択します
- 子テーマの作成: テーマの継承構造を設定します
- アセットの整理: CSS、JavaScript、画像ファイルの構造を計画します
- ビルドプロセス: コンパイルと最適化のワークフローを構成します
- バージョン管理: テーマの開発とデプロイの戦略を確立します
3. テーマの構造
app/design/frontend/Vendor/theme-name/
├── etc/
│ └── view.xml
├── media/
│ └── preview.jpg
├── web/
│ ├── css/
│ ├── js/
│ └── images/
├── registration.php
└── theme.xml
4. レイアウト開発
- ページレイアウト: カスタムのページレイアウトとページ構成を作成します
- レイアウトの更新: レイアウト XML の変更とカスタマイズを実装します
- ブロックのカスタマイズ: Magento のブロッククラスをカスタマイズおよび拡張します
- コンテナの管理: コンテンツコンテナとレスポンシブな動作を整理します
- テンプレートの階層: テンプレートファイルの構成と再利用性を計画します
5. スタイリングの実装
- コンポーネントのスタイリング: モジュール化された再利用可能な CSS コンポーネントを開発します
- レスポンシブブレークポイント: モバイルファーストのレスポンシブデザインを実装します
- タイポグラフィシステム: 一貫したタイポグラフィのスケールと階層を作成します
- カラーシステム: テーマのカラー変数とバリエーションを実装します
- アニメーションとインタラクション: 滑らかなトランジションとマイクロインタラクションを追加します
テーマのコンポーネント
レイアウト XML
- マスターレイアウトの指示、コンテナ、ブロックを理解します
- フォールバックの仕組みを理解します
- カスタムレイアウトの更新を作成します
- ブロックとコンテナの構成を管理します
テンプレートファイル(.phtml)
- テンプレートファイルを作成およびカスタマイズします
- 適切な出力エスケープ(
$escaper->escapeHtml()など)を使用します - テンプレートのベストプラクティスに従います
- テンプレート変数に適切な PHPDoc を実装します
CSS/LESS
- レスポンシブでモバイルファーストのスタイルシートを構築します
- LESS プリプロセッサを使用します
- Magento の LESS 変数システムを活用します
- パフォーマンスのために CSS を最適化します
JavaScript
- RequireJS を使用してインタラクティブな機能を実装します
- 動的コンポーネントには KnockoutJS を使用します
- Magento の JS フレームワークのパターンに従います
- JavaScript の読み込みを最適化します
特殊なテーマの種類
Eコマーステーマ
- 商品ページ: 魅力的な商品詳細ページと一覧ページをデザインします
- チェックアウトフロー: コンバージョンのためにチェックアウト体験を最適化します
- ショッピングカート: 直感的なカートとミニカートのインターフェースを作成します
- 顧客アカウント: 使いやすいアカウント管理インターフェースをデザインします
- 検索結果: 効果的な検索とフィルタリングのインターフェースを実装します
レスポンシブテーマ
- モバイル最適化: モバイルのユーザー体験を優先します
- タッチ操作: タッチしやすいナビゲーションとコントロールを実装します
- パフォーマンスバジェット: モバイルネットワークでも高速な読み込みを維持します
- プログレッシブエンハンスメント: さまざまな性能範囲で機能を確保します
- ビューポート管理: さまざまな画面サイズと向きに対応します
アクセシビリティに配慮したテーマ
- キーボードナビゲーション: 完全なキーボードアクセシビリティを確保する
- スクリーンリーダー対応: 適切な ARIA ラベルとロールを実装する
- 色のコントラスト: WCAG の色のコントラスト要件を満たす
- フォーカス管理: 明確なフォーカスインジケーターと論理的なタブ順序を作成する
- 代替テキスト: 包括的な画像の説明を提供する
ベストプラクティス
パフォーマンスの最適化
- アセットの最適化: CSS/JS ファイルを最小化および圧縮する
- 画像の最適化: モダンな画像フォーマットと遅延読み込みを使用する
- クリティカル CSS: より高速なレンダリングのためにクリティカル CSS を実装する
- JavaScript の最適化: JavaScript のペイロードを最小化する
- キャッシュ: ブラウザーと CDN のキャッシュを活用する
コードの構成
- モジュール構造: 論理的で保守しやすいモジュールでコードを整理する
- テンプレートの再利用性: 再利用可能なテンプレートコンポーネントを作成する
- CSS アーキテクチャ: BEM または同様の方法論を使用する
- JavaScript モジュール: RequireJS モジュールで JS を整理する
- バージョン管理: 共同開発に Git を効果的に活用する
Magento 固有のパターン
- レイアウト XML: レイアウト命令とフォールバックを習得する
- UI コンポーネント: Magento の UI コンポーネントライブラリを扱う
- LESS 変数: Magento の LESS 変数システムを活用する
- テーマの継承: 親子テーマの関係を適切に実装する
- フォールバックの仕組み: テンプレートとレイアウトのフォールバック順序を理解する
セキュリティ
- 出力のエスケープ: テンプレート内の出力は常にエスケープする
- XSS 対策: ユーザー入力の適切なサニタイズ
- CSRF 対策: フォームキーの検証を実装する
- 安全なアセット: アセットを安全に配信する
テスト
- ブラウザーテスト: サポート対象のブラウザー全体でテストする
- レスポンシブテスト: さまざまなデバイスと画面サイズでテストする
- パフォーマンステスト: Core Web Vitals を検証する
- アクセシビリティテスト: スクリーンリーダーとキーボードナビゲーションでテストする
- 機能テスト: すべての機能が正しく動作することを確認する
参考資料
パフォーマンスとアクセシビリティの基準を維持しながら、優れたユーザーエクスペリエンスを提供するテーマの作成に注力してください。
コメント
Markdown 対応