2015-09-05 43 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的不同主題的指導..我可以問嗎? –