我正在制作magento的网络服务。我在magento项目中创建了许多magento项目的web服务,如登录,注册等。我没有使用第三方网络服务(默认的magento webservice)。
我按照步骤操作:只需在magento根目录(webservice)中创建文件夹,然后在创建文件serach.php之后创建搜索代码:
require("../app/Mage.php");
Mage::app();
if (isset($_REQUEST['search_text']) && ($_REQUEST['search_text'] != "")) {
$text = $_REQUEST['search_text'];
} else {
$text = "";
}
$search = "%" . trim($text) . "%";
$collection->addCategoryFilter()->addAttributeToSelect('name')->addAttributeToFilter('name', array(
'like' => $search
));
echo "";
print_r($collection);
die;
我收到错误:
致命错误:在第700行的/home/demo/public_html/app/code/core/Mage/Catalog/Model/Resource/Product/Collection.php中的非对象上调用成员函数getId()< / p>
答案 0 :(得分:0)
require("../app/Mage.php");
Mage::app();
if (isset($_REQUEST['search_text']) && ($_REQUEST['search_text'] != "")) {
$text = $_REQUEST['search_text'];
}
else{
$text = "";
}
$search = "%".trim($text)."%";
$collection = Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect('sku');
$collection->addAttributeToSelect('city');
$collection->joinAttribute('city', 'catalog_product/city', 'entity_id', null, 'inner');
$category = Mage::getModel('catalog/category')->load();
$productCollection = $collection->addCategoryFilter($category)
->addAttributeToSelect('name')
->addAttributeToFilter('name',array('like'=>$search));
答案 1 :(得分:0)
Magento提供内置易于使用的SOAP和REST API。可以轻松扩展..你可以参考Vinai Kopps通过会话认证获得REST API的回购
答案 2 :(得分:0)
您尚未初始化并加载该集合。
我错过了这样一句话:
$collection = Mage::getModel('catalog/product')->getCollection()...