4

我想在 opencart 管理中将子菜单项“位置”添加到“目录”菜单项。在选择位置时,我想查看我自己的位置管理视图页面,该页面包含我自己在 opencart 数据库中的位置表。

请让我知道在哪里以及创建什么 mvc 以在打开的购物车中实现此功能。谢谢你。

4

2 回答 2

6

如何创建一个 opencart 管理模块?

您可以通过调整简单地做到这一点:

Admin > controller > view > template > common > header.tpl

您可以简单地调整此页面上的菜单(静态更改)。为您和您的员工等实际创建模块。然后按照此页面上发布的 MVC 教程进行操作:

如何在 Opencart 中创建自定义管理页面?

于 2012-06-11T14:01:56.857 回答
2

我已经在我的 opencart 项目中实现了你的概念。

笔记:

1)默认情况下,在产品添加仪表板页面中有一个输入产品位置的字段,您在那里填写产品位置并按照我的观点

2)打开目录>模型> 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)打开目录>查看>主题>默认>模板>模块>类别.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="<?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)在管理员端重要激活类别模块并保存选择

于 2012-09-18T09:56:46.077 回答