2014-04-16 2 views
0

관리 제품 페이지에서 ID로 카테고리를 정의 할 수 있습니까?관리 제품 페이지에서 ID로 카테고리 선택

아이디어는 이름이 아닌 ID (이전에 등록 된)로 카테고리를 캡처하는 것입니다. 그 기능에 대한 책임이 있습니다 변화에 대한 이러한 코드 발견 :

admin/model/catalog/product.php

public function getProductCategories($product_id) { 
    $product_category_data = array(); 

    $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'"); 

    foreach ($query->rows as $result) { 
    $product_category_data[] = $result['category_id']; 
    } 

    return $product_category_data; 

을}

admin/controller/catalog/product.php

// Categories 
    $this->load->model('catalog/category'); 

    if (isset($this->request->post['product_category'])) { 
    $categories = $this->request->post['category_id']; 
    } elseif (isset($this->request->get['product_id'])) {  
    $categories = $this->model_catalog_product->getProductCategories($this->request->get['product_id']); 
    } else { 
    $categories = array(); 
    } 

    $this->data['product_categories'] = array(); 

    foreach ($categories as $category_id) { 
    $category_info = $this->model_catalog_category->getCategory($category_id); 

    if ($category_info) { 
     $this->data['product_categories'][] = array(
      'category_id' => $category_info['category_id'], 
      'name'  => ($category_info['path'] ? $category_info['path'] . ' > ' : '') . $category_info['name'] 
     ); 
    } 
    } 

admin/view/template/catalog/product_form.tpl

<tr> 
      <td><?php echo $entry_category; ?></td> 
      <td><input type="text" name="category" value="" /></td> 
     </tr> 
     <tr> 
      <td>&nbsp;</td> 
      <td><div id="product-category" class="scrollbox"> 
       <?php $class = 'odd'; ?> 
       <?php foreach ($product_categories as $product_category) { ?> 
       <?php $class = ($class == 'even' ? 'odd' : 'even'); ?> 
       <div id="product-category<?php echo $product_category['category_id']; ?>" class="<?php echo $class; ?>"><?php echo $product_category['name']; ?><img src="view/image/delete.png" alt="" /> 
       <input type="hidden" name="product_category[]" value="<?php echo $product_category['category_id']; ?>" /> 
       </div> 
       <?php } ?> 
      </div></td> 
     </tr> 

문제는 내가 PHP가 좋지 않아서 그 결과를 얻기 위해 내가 어디로 갈지 모르겠다. 도움이나 아이디어에 감사드립니다! 관리자/모델/카탈로그/category.php

에서

+0

'getProductCategories'는 특정 product_id의 모든 카테고리를 제공합니다. 원하지 않는 것이 아닙니까? –

+0

감사합니다. 아뇨, 제 아이디어는 ID에 대한 카테고리를 찾는 것입니다. 기본값으로 opencart는 이것을 name으로 만듭니다. – Silva

+0

아직도 이해할 수없는 작은 예제를 –

답변

0

if (!empty($data['filter_name'])) { $sql .= " AND cp.category_id LIKE '" . $this->db->escape($data['filter_name']) . "%'";

라인 (211)은 그러나 나는 내 문제를 해결하지 않고, 내 질문에 대한 해결책을 발견했다. 도와 주신 모든 분들께 감사드립니다!

관련 문제