Я пытаюсь создать маршрут в Opencart 3, но не знаю, почему он не работает. При переходе по этому маршруту выдает 404 Page not found. Но это просто и должно работать. По крайней мере, я так думаю :). Может быть, я что-то упустил. Вот код:
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);
}
}
URL, который должен работать https://domain/index.php?route=csv/csv