PHP Mall 시스템을 개발할 때는 제품 분류 및 필터링 기능이 사용자 경험을 향상시키는 핵심 요소입니다. 합리적인 제품 분류 및 필터링 기능을 통해 사용자는 관심있는 제품을 신속하게 찾아 시간을 절약하고 쇼핑 효율성을 향상시킬 수 있습니다. 이 기사는 PHP를 통해이 두 기능을 구현하는 방법을 자세히 설명하고 개발자가 더 나은 이해와 적용을 지원할 수 있도록 코드 예제를 제공합니다.
먼저 데이터베이스에서 제품 분류 테이블을 만들고 필요에 따라 해당 모델 클래스를 만들어야합니다. 제품 분류 테이블에는 다음 필드가 포함되어야합니다. ID, Name 및 Parent_id는 ID가 자동 증가 기본 키이며 이름은 분류 이름이며 Parent_id는 분류의 부모 ID입니다.
다음은 제품 분류 테이블을 만들기위한 SQL 코드의 예입니다.
테이블 만들기`categories '( `id` int (11) 부호없는 auto_increment 기본 키, `Name` Varchar (255)는 null, `parent_id` int (11) 기본 널, `created_at` timestamp null 기본 널, `updated_at` timestamp null 기본 널 ) 엔진 = innodb 기본 charset = utf8;
다음으로, 우리는 코드에서 제품 분류 데이터를 조작하고 해당 연관 관계를 정의하기 위해 카테고리라는 모델 클래스를 만들어야합니다.
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; class Category extends Model { protected $fillable = ['name', 'parent_id']; public function parent() { return $this-> 소속 (범주 :: class, 'parent_id'); } 공개 기능 어린이 () { $ this-> hasmany (category :: class, 'parent_id'); } }
프론트 엔드 페이지에서는 사용자가 카테고리를 탐색하고 선택할 수 있도록 트리 구조에 제품 범주를 표시해야합니다. 다음은이 기능을 구현하는 코드 예입니다.
<?php use App\Models\Category; function displayCategories($categories, $parent_id = 0) { echo '<ul class="category-list"> ';; foreach ($ 범주로 $ 범주) { if ($ category-> parent_id == $ parent_id) { 에코 '<li> '. $ 카테고리-> 이름; $ children = $ 카테고리-> 어린이; if (count ($ children)> 0) { DisplayCategories ($ children, $ category-> id); } 에코 '</li> ';; } } 에코 '</ul> ';; } $ 범주 = 범주 :: all (); DisplayCategories ($ 범주);
제품 필터링 기능을 통해 사용자는 개인의 요구에 따라 필요한 제품을 신속하게 찾는 데 도움이됩니다. 일반적으로 제품 심사에는 가격 범위, 색상, 브랜드 등과 같은 속성 조건이 포함됩니다. 기준에 따라 요구 사항을 충족하는 양식 및 쿼리 제품을 통해 사용자 필터링 기준을 수집 할 수 있습니다.
다음은 제품 필터링을위한 코드 예입니다.
<?php use App\Models\Product; function getFilteredProducts($filters) { $query = Product::query(); if (isset($filters['price'])) { $query-> WHEREBETGEING ( 'price', [$ 필터 [ 'price'] [ 'min'], $ 필터 [ 'price'] [ 'max']); } if (isset ($ 필터 [ 'color'])) { $ query-> wherein ( 'color', $ 필터 [ 'color']); } // 기타 필터 추가 $ uppu즈즈 = $ query-> get (); 반품 $ 제품; } $ 필터 = $ _post [ '필터']; // 사용자 $ products = getFilteredProducts ($ 필터)가 제출 한 필터 기준을 가져옵니다. // 필터 기준을 충족하는 제품을 얻습니다
이 기사의 자습서를 통해 PHP Mall 시스템에서 제품 분류 및 필터링 기능을 구현하는 방법을 배웠습니다. 합리적인 분류 및 심사는 사용자 경험을 향상시킬뿐만 아니라 사용자가 필요한 제품을 더 빨리 찾는 데 도움이되어 쇼핑몰의 전환율이 높아집니다. 이 기사가 프로젝트 개발에 도움이되기를 바랍니다!