Browse Source

feat: product add relatedPages

igb 2 days ago
parent
commit
b86498b5be

+ 42 - 1
app/Http/Controllers/ProductController.php

@@ -6,7 +6,7 @@ use Illuminate\Http\Request;
 use App\Services\LiquidRenderer;
 use App\Models\DistProduct;
 use App\Models\DistProductCategory; // 引入分类模型
-
+use App\Models\SitePage;
 
 class ProductController extends Controller
 {
@@ -162,6 +162,46 @@ class ProductController extends Controller
             'name' => $product->title,
         ];
 
+        //能过 seo_keywords 查找相有相同 seo_keywords的产品, seo_keywords 可能是多个,用逗号分隔
+        $seo_keywords = $product->seo_keywords;
+
+
+        if($seo_keywords) {
+            $seo_keywords_array = explode(',', $seo_keywords);
+        }
+        else {
+            $seo_keywords_array = [];
+        }
+        $relatedPages= [];
+
+        if(!empty($seo_keywords_array))
+        {
+            $seo_keywords_array = array_map('trim', $seo_keywords_array);
+            $seo_keywords_array = array_unique($seo_keywords_array);
+
+            // 构建查询条件
+            $query = SitePage::where('dist_id', getDistId())
+                ->where('status', 1);
+
+            // 为每个关键词添加查询条件
+            $query->where(function($q) use ($seo_keywords_array) {
+                foreach ($seo_keywords_array as $keyword) {
+                    $q->orWhere(function($subQ) use ($keyword) {
+                        $subQ->where('seo_keywords', 'LIKE', $keyword)
+                            ->orWhere('seo_keywords', 'LIKE', $keyword . ',%')
+                            ->orWhere('seo_keywords', 'LIKE', '%,' . $keyword)
+                            ->orWhere('seo_keywords', 'LIKE', '%,' . $keyword . ',%');
+                    });
+                }
+            });
+
+            // 获取相关产品
+            $relatedPages = $query->orderBy('id', 'desc')
+                ->limit(10)
+                ->get();
+
+        }
+
 
         // 渲染模板并传递数据
         return $this->liquidRenderer->render('products_detail.liquid',
@@ -169,6 +209,7 @@ class ProductController extends Controller
                 'product' => $product,
                 'relatedProducts' => $relatedProducts,
                 'breadcrumbs' => $breadcrumbs,
+                'relatedPages' => $relatedPages,
             ]);
     }
 }

+ 16 - 3
resources/views/liquid_src/1/cable_tech/products_detail.liquid

@@ -28,14 +28,14 @@
             "sku": "{{product.sku | strip_html }}",
             "offers": {
                 "@type": "Offer",
-                "price": "To be negotiated",                
+                "price": "To be negotiated",
                 "priceCurrency": "PESO",
                 "availability": "https://schema.org/InStock",
                 "itemCondition": "https://schema.org/NewCondition",
                 "url": "{{site.current_url}}"
             }
         }
-      
+
     </script>
 </head>
 <body class="bg-gray-100 tracking-wide">
@@ -132,6 +132,19 @@
     </div>
 </div>
 
+<!-- FAQ Section -->
+<div class="mt-16">
+    <h2 class="text-2xl font-bold mb-8 text-center">FAQ</h2>
+
+    <div class="max-w-3xl mx-auto">
+        <!-- FAQ Item 1 -->
+        <div class="mb-6 border-b border-gray-200 pb-6">
+            <h3 class="font-bold text-lg mb-2">这款USB-C集线器是否适配所有MacBook设备?</h3>
+            <p class="text-gray-600">是的,此集线器兼容所有配备USB-C端口的MacBook设备,包括MacBook Pro、MacBook Air以及最新的M1/M2芯片设备。</p>
+        </div>
+    </div>
+</div>
+
 
 
     <!-- You May Also Like -->
@@ -209,4 +222,4 @@
 {% include '_footer.liquid' %}
 {% include '_footer_js.liquid' %}
 </body>
-</html>
+</html>