ฉันได้นำแนวคิดของคุณไปใช้ในโครงการ opencart ของฉันแล้ว
หมายเหตุ:
1) โดยค่าเริ่มต้นในหน้าแดชบอร์ดการเพิ่มผลิตภัณฑ์มีช่องให้ป้อนตำแหน่งผลิตภัณฑ์ที่คุณกรอกตำแหน่งผลิตภัณฑ์ที่นั่นและปฏิบัติตามประเด็นของฉัน
2) เปิด Catalog > model > category.php เพิ่มโค้ดนี้
function getCategoryLoction($category_id) {
$sql = "select p.location,count(p.location) as locCount from " . DB_PREFIX . "product p inner join " . DB_PREFIX . "product_to_category p2c on(p.product_id=p2c.product_id) where p2c.category_id=$category_id group by p.location";
$query = $this->db->query($sql);
return $query->rows;
}
3) เปิดแค็ตตาล็อก > คอนโทรลเลอร์ > โมดูล > category.php เพิ่มโค้ดนี้
/* location based search starts here */
$incomingCatId = ($this->data['category_id']!= '')?$this->data['category_id']:'0';
$locations = $this->model_catalog_category->getCategoryLoction($incomingCatId);
foreach($locations as $loc):
$this->data['locations'][] = array(
'location' => $loc['location'],
'count' => $loc['locCount'],
'href' => $this->url->link('product/category', 'path=' . $incomingCatId.'&loc='.$loc['location'].'')
);
endforeach;
/* location based search ends here */
4) เปิดแคตตาล็อก > ดู >ธีม >ค่าเริ่มต้น >แม่แบบ>โมดูล > หมวดหมู่ category.tpl เพิ่มรหัสนี้
<div class="l_nav_box">
<div class="l_nav_title">
<h6>Location</h6>
</div>
<ul class="cat_ul">
<?php if(!empty($locations)): ?>
<?php foreach ($locations as $loc) : ?>
<?php if($loc['location']!= ''): ?>
<li> <a href="/th<?php echo $loc['href']; ?>"><?php echo $loc['location']; ?> <span>(<?php echo $loc['count']; ?>)</span> </a> </li>
<?php endif; ?>
<?php endforeach; ?>
<?php else: ?>
No Locations mentioned
<?php endif; ?>
</ul>
</div>
5) สำคัญในด้านผู้ดูแลระบบเปิดใช้งานโมดูลหมวดหมู่แล้วบันทึกเลือก
person
Ishak Ali
schedule
18.09.2012