Opencart 3路由无效,但应该

时间:2018-08-30 18:51:07

标签: opencart opencart-3

我正在尝试在Opencart 3中创建路由,但不知道为什么它不起作用。转到该路线时,将显示404页面未找到。但这很简单,应该可以工作。至少我是这样认为的:)。也许我缺少了一些东西。这是代码:

class ControllerCsvCsv extends Controller {

public function index() {

    header('Content-Type: application/csv; charset=UTF-8');
    header('Content-Disposition: attachment; filename="amby_products.csv"');

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

    $products = $this->model_catalog_product->getProducts();


    $csvArray[0] = array(
        'id',
        'image_link',
        'title',
        'category',
        'price',
        'inventory_tracking',
        'availability',
        'link',
        'brand',
        'google_product_category',
        'desciption',
        'condition'
    );

    foreach ($products as $product) {
        $category = $this->model_catalog_product->getCategories($product['product_id']);
        $url = $this->url->link('product/product', 'product_id=' . $product['product_id']);
        foreach ($category as $cat) {
            $getCategory = $this->model_catalog_category->getCategory($cat['category_id']);
        }

        $csvArray[] = array(
            $product['product_id'],
            $product['image'],
            $product['name'],
            $getCategory['name'],
            $product['special'] ? $product['special'] : $product['price'],
            $product['quantity'],
            $product['stock_status'],
            $url,
            $product['manufacturer'],
            $getCategory['name'],
            null,
            'new'
        );
    }


    $fp = fopen('php://output', 'w');
    foreach ($csvArray as $line) {
        fputcsv($fp, $line, ',');
    }
    fclose($fp);
}

}

应该正常工作的网址https://domain/index.php?route=csv/csv

2 个答案:

答案 0 :(得分:0)

当您设置class ControllerCsvCsv extends Controller {时,您对Opencart说您的控制器位于catalog / controller / csv / csv.php中,您确定文件在那里吗?您的代码一切正常,所以我认为您的控制器不在正确的位置,您能显示文件(csv.php)的位置吗?

答案 1 :(得分:0)

在信息中也创建了新路线,也包括csv.php,url index.php?route = information / csv。结果相同,找不到页面。为什么找不到我创建的所有路由的任何线索?一些缓存还是其他?用完选项:(