2017-09-21 9 views
0

PrestaShop 1.6 이상에서 사용자 정의 XML 피드를 만드는 방법을 설명하는 설명서를 누군가에게 보낼 수 있습니까? 공식 문서를 수색했지만 필요한 것을 찾지 못했습니다.PrestaShop에서 XML 내보내기 피드 만들기

작업은 쉽습니다. 다른 e-shop이 제품을 가져올 수있는 사용자 정의 XML 피드를 만듭니다.

도움 주셔서 감사합니다.

답변

1

getProducts()을 사용하여 제품 목록을 얻은 다음 SimpleXMLElement을 사용하여 xml을 생성 할 수 있습니다.

include('config/config.inc.php'); 
include('init.php'); 
$productObj = new Product(); 
$products = $productObj -> getProducts($id_lang, 0, 0, 'id_product', 'DESC'); 

$xml = new SimpleXMLElement('<xml/>'); 
foreach($products as $product) { 
$productXml = $xml->addChild('product'); 
$productXml->addChild('id', $product->id); 
$productXml->addChild('name', $product->name); 
$productXml->addChild('description', $product->description); 
} 
Header('Content-type: text/xml'); 
print($xml->asXML()); 

출력 될 것입니다 .. 클래스에서

<xml> 
    <product> 
     <id>ID</id> 
     <name>NAME</name> 
     <description>DESCRIPTION</description> 
    </product> 
    <product> 
     <id>ID</id> 
     <name>NAME</name> 
     <description>DESCRIPTION</description> 
    </product> 
    ... 
    ... 
    ... 
</xml> 

참조 기능 getProducts() 설명/Product.php이 매개 변수에 대해 알아야 할 사항.

/** 
* Get all available products 
* 
* @param integer $id_lang Language id 
* @param integer $start Start number 
* @param integer $limit Number of products to return 
* @param string $order_by Field for ordering 
* @param string $order_way Way for ordering (ASC or DESC) 
* @return array Products details 
*/ 
public static function getProducts($id_lang, $start, $limit, $order_by, $order_way, $id_category = false, 
    $only_active = false, Context $context = null) {...} 

당신은 당신의 PrestaShop 버전의 루트 디렉토리에 함께 xml.php 파일을 배치 할 수 있습니다 및 방문하거나 yourdomain.com/xml.php에 요청을 전송하여이 XML에 액세스 할 수 있습니다.

xml 용 모듈을 만들려면 전면 컨트롤러에 코드를 넣고 yourdomain.com/index.php?fc=module&module=<ModuleName>&controller=<XMLFunction>을 방문하여 xml 파일에 액세스해야합니다. 사전 시작 모듈 구조에 대해 자세히 알고 싶으면 Prestashop Documentation을 읽으십시오.

+0

안녕하세요, 응답을 많이 주셔서 감사합니다.하지만 다른 것이 없어졌습니다. 모듈 엔드 포인트 주소를 만드는 방법은 XML을 사용할 수 있습니까? 예 : 내 XML이있는 일부 URL이 존재합니다. –

+1

답변 됨. – Sama

+0

고마워, 내 하루를 구 했어. :) –