2015-09-05 118 views
0

WC Rest API将产品更新到wordpress网站。所有的条目都可以正确上传,但是在简短描述下,表格不会被创建,只有表格的平面文本以非表格格式显示,在woocommerce-api.php中以直线显示。WC REST API | HTML表格未创建

代码:

print_r($client->products->create(array('title' => 'Nile - Over Counter Basin','sku' => '91081_Nile', 'type' => 'simple', 'regular_price' => '7260', 'sale_price' => '5445','description' => 'Nile - Over Counter BasinOver Counter BasinHindware Italian CollectionContemporary design with smooth flowing line Space for toiletries', 'dimensions'=>array('length' =>'67.5' ,'width' =>'39.5','height'=>'12.5'), 'categories'=>array(' SANITARYWARE' =>'592',' WASHBASIN' =>'650',' Table Top Wash Basin' =>'508'),'images' =>Array ('91081_Nile'=>Array('src'=>'http://www.somethingsomething.com/images/products/91081/2.jpg','title'=>'91081_Nile','position'=>'0')),'short_description'=>'Contemporary design with smooth flowing line Space for toiletries <table id="ProductDescriptiontable"><tr><td>Brand</td><td>:</td><td class="thirdcolumn">Hindware</td></tr><tr><td>Product Name</td><td>:</td><td class="thirdcolumn">Nile - Over Counter Basin</td></tr><tr><td>Product Description</td><td>:</td><td class="thirdcolumn">Table Top Wash Basin</td></tr></tr><tr><td>Product Color</td><td>:</td><td class="thirdcolumn">StarwhiteIvory</td></tr></table>') )) ; 

回答

1

答案就在wp-content/plugins/woocommerce/includes/api/class-wc-api-product.php上线#244

// Enable short description html tags. 
$post_excerpt = isset($data['short_description']) ? wc_clean($data['short_description']) : ''; 
if ($post_excerpt && isset($data['enable_html_short_description']) && true === $data['enable_html_short_description']) { 
    $post_excerpt = $data['short_description']; 
} 

在第一行的代码使用wc_clean清洁简短的描述,它然后检查是否enable_html_short_description密钥在数据中传递,如果设置为true,则当条件满足时,它将按照收到的简短说明传递“非干净”版本。

略有变化到你上面的代码将让你我用https://github.com/kloon/WooCommerce-REST-API-Client-Library期望的结果

print_r($client->products->create(array( 
    'title' => 'Nile - Over Counter Basin', 
    'sku' => '91081_Nile', 
    'type' => 'simple', 
    'regular_price' => '7260', 
    'sale_price' => '5445', 
    'description' => 'Nile - Over Counter BasinOver Counter BasinHindware Italian CollectionContemporary design with smooth flowing line Space for toiletries', 
    'dimensions'=>array('length' =>'67.5' ,'width' =>'39.5','height'=>'12.5'), 
    'categories'=>array(' SANITARYWARE' =>'592',' WASHBASIN' =>'650',' Table Top Wash Basin' =>'508'), 
    'images' =>Array ('91081_Nile'=>Array('src'=>'http://www.somethingsomething.com/images/products/91081/2.jpg','title'=>'91081_Nile','position'=>'0')), 
    'short_description'=>'Contemporary design with smooth flowing line Space for toiletries <table id="ProductDescriptiontable"><tr><td>Brand</td><td>:</td><td class="thirdcolumn">Hindware</td></tr><tr><td>Product Name</td><td>:</td><td class="thirdcolumn">Nile - Over Counter Basin</td></tr><tr><td>Product Description</td><td>:</td><td class="thirdcolumn">Table Top Wash Basin</td></tr></tr><tr><td>Product Color</td><td>:</td><td class="thirdcolumn">StarwhiteIvory</td></tr></table>', 
    'enable_html_short_description' => true, // This is the line you need to add 
) )) ; 
+1

。我没有一个文件夹包括/ api/class-wc-api-product.php –

+0

我已经测试过使用相同的API库,它的工作原理。我提到的文件是一个WooCoommerce核心文件,查看'plugins/woocommerce/includes/api /'。我正在使用最新版本的WooCommerce 2.4.6 –

+1

我真的不知道如何谢谢你..我一直在这个工作好几个小时,最后你来到像一个天使,并修复它..完美..工作好..谢谢你一百万..我需要你在同一个API的不同主题的指导..我可以问吗? –