无论如何,要从我的 OpenCart 商店、使用 Ajax、JavaScript/jQuery 的 phonegap 移动应用程序中获取 JSON 格式的产品目录。OpenCart 允许这样的事情吗?
欢迎任何想法或代码:)
无论如何,要从我的 OpenCart 商店、使用 Ajax、JavaScript/jQuery 的 phonegap 移动应用程序中获取 JSON 格式的产品目录。OpenCart 允许这样的事情吗?
欢迎任何想法或代码:)
OcJoy 正朝着正确的方向发展,但提供的解决方案将包含我猜不是您想要的输出的所有页面数据。
而不是他的解决方案,你应该在之前做这样的事情(假设你只需要产品 JSON 数组)$this->response->setOutput($this->render());
:
if(isset($this->request->get['json'])) {
echo json_encode($this->data['products']);
die;
} else
然后http://www.example.com/index.php?route=product/category&path=20&json
只输出 ID 为 20 的类别的产品数组的 JSON。
编辑:要从模板中将其作为 AJAX 请求调用,您可以执行以下操作:
$(document).ready(function(){
$.ajax({
url: 'index.php?route=product/category&path=<CATEGORY_ID>&json',
type: 'get',
dataType: 'json',
beforeSend: function() {
},
complete: function() {
},
success: function(data) {
if (data.length > 0) {
// do something here with the products in data array
}
}
});
});
确保在上面的 URL 中替换为正确的值,并在回调函数<CATEGORY_ID>
中添加所需的功能。success
在catalog/controller/product/catalog.php之前
$this->response->setOutput($this->render());
粘贴此代码
if (isset( $this->request->get['json'])) $this->response->setOutput(json_encode($this->data)); else
并去链接http://opencart.examle/index.php?route=product/category&path=20&json