我正在尝试在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);
}
}
当您设置class ControllerCsvCsv extends Controller {
时,你对Opencart说你的控制器在catalog / controller / csv / csv.php中你确定你的文件在那里吗?您的代码一切正常,所以我认为您的控制器不在正确的位置,您能显示您的文件在哪里(csv.php)吗?
在信息中创建了新的路由,也就是csv.php,url index.php?route = information / csv。结果相同,找不到页面。为什么找不到我创建的所有路线的任何线索?一些缓存或其他什么?用完了选项:(