web-dev-qa-db-ja.com

WooCommerce - プログラムによる製品の作成

私は自動的にJSON APIを介して製品をインポートするプラグインを書いています。プログラムで製品を作成/更新する必要があります。

私は研究をしました、そしてそれは誰もがこのためにwp_insert_post()update_post_meta()を使っているようです、すなわち this そして this

しかし、 class-wc-api-products があることに気付きました。そこには、製品やバリエーションを追加/編集するためのさまざまな関数があります。

人々がこんなものを使わないのには理由があるのでしょうか。

$wc = new WC_API_Products();
$wc->create_product( $data );

このためにネイティブのWCクラスを使用することは、将来的には私には向いていないようですが、私は間違っていますか?

3
user1049961

技術的に言えば、Woocommerce製品は、カスタマイズされた投稿タイプ(この場合はproduct)を持つ単なるWordPress投稿オブジェクトです。 create_product内のclass-wc-api-products.php関数を見ると、次の行がわかります。

// Attempts to create the new product
$id = wp_insert_post( $new_product, true );

そのため、APIは最終的にwp_insert_postを使用することになります。私はあなたが両方をすることができると思います、しかしそれは明らかにWooCommerce製品を作成するためにWooCommerce APIが提供するものを使うことはより良い方法です。

3
Nam