Figma | Bakery-Theme

目次

サイト概要

Figmaデザインカンプをもとに、HTML/CSS/JavaScriptで静的コーディングを行った後、WordPressオリジナルテーマ化したベーカリーサイトです。

デザインの再現だけでなく、WordPressのテンプレート階層に沿ってPHP化を行い、トップページ、商品一覧ページ、商品詳細ページ、Aboutページ、Contactページ、404ページを実装しました。

商品はカスタム投稿タイプ(Product)で管理し、Advanced Custom Fields(ACF)を利用して価格やトップページ掲載フラグなどのカスタムフィールドを実装しています。また、カスタムタクソノミーによるカテゴリー分類や、カテゴリー切り替え機能、商品カードの共通化など、保守性を意識した設計を採用しました。

開発環境にはDockerとMySQLを利用し、Git・GitHubでソースコードを管理しながら開発を進め、完成後はConoHa WINGへデプロイして公開しています。

使用技術

  • HTML
  • CSS
  • JavaScript
  • PHP
  • WordPress(オリジナルテーマ開発)
  • Advanced Custom Fields(ACF)
  • Contact Form 7
  • Docker
  • Docker Compose
  • MySQL
  • Git
  • GitHub
  • ConoHa WING

こだわった点

Figmaのデザインカンプをもとに、レスポンシブ対応を含めたコーディングを行い、デザインをできる限り忠実に再現しました。CSS Gridを利用した商品一覧レイアウトや、JavaScriptによるハンバーガーメニューを実装し、PC・スマートフォンのどちらでも快適に閲覧できるよう工夫しています。

静的サイトで終わらせず、WordPressオリジナルテーマとして再構築しました。テンプレートを header.phpfooter.phpfront-page.phparchive-product.phpsingle-product.phppage-about.phppage-contact.php などに分割し、WordPressのテンプレート階層を意識した構成としています。

商品管理にはカスタム投稿タイプ(Product)を採用し、商品価格やトップページ表示、注目商品などはACFのカスタムフィールドで管理しています。また、カスタムタクソノミーを利用したカテゴリー分類と絞り込み機能を実装し、管理画面から柔軟に商品を追加・更新できるようにしました。

商品カードはテンプレートパーツとして共通化し、トップページ・商品一覧・おすすめ商品など複数箇所で再利用できる構成としています。CSSもボタンや商品グリッドなどを共通化し、保守性と再利用性を意識して設計しました。

セキュリティ面では、esc_html()esc_url()esc_attr()sanitize_text_field() などのWordPress関数を利用し、出力時のエスケープや入力値のサニタイズを実装しています。

開発環境にはDocker Composeを利用してWordPressとMySQLを構築し、ローカル環境で開発・検証を行いました。Git・GitHubによるバージョン管理を行い、完成後はConoHa WINGへデプロイしてデモサイトを公開しています。

目次