From 9855e33f0b613cc7ed8828bfc3a24d15821456db Mon Sep 17 00:00:00 2001 From: Miqdad Date: Tue, 18 Nov 2025 15:22:07 +0700 Subject: balikin sitemap dan benerin canonical brand --- src/pages/api/shop/search.js | 32 +++++++++++++------------- src/pages/shop/brands/[slug].jsx | 49 ++++++++++++++++++++++++++-------------- 2 files changed, 48 insertions(+), 33 deletions(-) (limited to 'src/pages') diff --git a/src/pages/api/shop/search.js b/src/pages/api/shop/search.js index 2652174a..42d16100 100644 --- a/src/pages/api/shop/search.js +++ b/src/pages/api/shop/search.js @@ -26,31 +26,31 @@ export default async function handler(req, res) { try { const offset = (page - 1) * limit; - // const parameter = [ - // 'q=*:*', - // `rows=${limit}`, - // `start=${offset}`, - // 'fl=product_id_i,name_s,default_code_s,image_s,category_name', - // 'wt=json', - // 'omitHeader=true', - // ]; - const parameter = [ 'q=*:*', `rows=${limit}`, `start=${offset}`, - - // ❌ EXCLUDE PROMOTION - 'fq=-(name_s:*promotion* OR display_name_s:*promotion* OR variants_name_t:*promotion*)', - - // ❌ EXCLUDE DUMMY PRODUCT - 'fq=-(name_s:*dummy* OR display_name_s:*dummy* OR variants_name_t:*dummy* OR default_code_s:A.*)', - 'fl=product_id_i,name_s,default_code_s,image_s,category_name', 'wt=json', 'omitHeader=true', ]; + // const parameter = [ + // 'q=*:*', + // `rows=${limit}`, + // `start=${offset}`, + + // // ❌ EXCLUDE PROMOTION + // 'fq=-(name_s:*promotion* OR display_name_s:*promotion* OR variants_name_t:*promotion*)', + + // // ❌ EXCLUDE DUMMY PRODUCT + // 'fq=-(name_s:*dummy* OR display_name_s:*dummy* OR variants_name_t:*dummy* OR default_code_s:A.*)', + + // 'fl=product_id_i,name_s,default_code_s,image_s,category_name', + // 'wt=json', + // 'omitHeader=true', + // ]; + const solrUrl = process.env.SOLR_HOST + '/solr/product/select?' + parameter.join('&'); diff --git a/src/pages/shop/brands/[slug].jsx b/src/pages/shop/brands/[slug].jsx index ed6724ea..c5b3eaac 100644 --- a/src/pages/shop/brands/[slug].jsx +++ b/src/pages/shop/brands/[slug].jsx @@ -1,30 +1,34 @@ -import dynamic from 'next/dynamic' -import { getIdFromSlug, getNameFromSlug } from '@/core/utils/slug' -import { useRouter } from 'next/router' -import _ from 'lodash' -import Seo from '@/core/components/Seo' -import Breadcrumb from '@/lib/brand/components/Breadcrumb' -import useBrand from '@/lib/brand/hooks/useBrand' +import dynamic from 'next/dynamic'; +import { getIdFromSlug, getNameFromSlug } from '@/core/utils/slug'; +import { useRouter } from 'next/router'; +import _ from 'lodash'; +import Seo from '@/core/components/Seo'; +import Breadcrumb from '@/lib/brand/components/Breadcrumb'; +import useBrand from '@/lib/brand/hooks/useBrand'; import PageNotFound from '@/pages/404'; -const BasicLayout = dynamic(() => import('@/core/components/layouts/BasicLayout')) -const ProductSearch = dynamic(() => import('@/lib/product/components/ProductSearch')) -const Brand = dynamic(() => import('@/lib/brand/components/Brand')) +const BasicLayout = dynamic(() => + import('@/core/components/layouts/BasicLayout') +); +const ProductSearch = dynamic(() => + import('@/lib/product/components/ProductSearch') +); +const Brand = dynamic(() => import('@/lib/brand/components/Brand')); export default function BrandDetail() { - const router = useRouter() - const { slug = '' } = router.query + const router = useRouter(); + const { slug = '' } = router.query; - const brandName = getNameFromSlug(slug) - const id = getIdFromSlug(slug) - const {brand} = useBrand({id}) + const brandName = getNameFromSlug(slug); + const id = getIdFromSlug(slug); + const { brand } = useBrand({ id }); // if ( !brand.isLoading && _.isEmpty(brand.data)) { // console.log('ini masuk pak') // return ; // } return ( - */} + @@ -47,5 +62,5 @@ export default function BrandDetail() { /> )} - ) + ); } -- cgit v1.2.3