Welcart 一括商品登録をcronで自動実行したい (ふたたび Ajax版)

実現したいこと

Welcart 一括商品登録をcronで自動実行したい
以前こちらで相談したのですが、
WPやプラグインのバージョンアップに
伴い、再びできなくなってしまったので再度相談します。

curlコマンドはAjaxを利用した通信は可能なのでしょうか?

前提

以下をシェルスクリプトで実現したいと考えています。

チェックを入れた項目については実現できていますが、
最後の「フォームをPOSTして商品を一括登録する」が実現できていません。

Welcartがバージョンアップして、
Ajaxを利用するようになったようです。

そのためか、curlを使ってフォームを
POSTするのですが処理が行われません。

[1]についてはオペレータが手動で行います。

[2]については、以下コマンドを実行します。

/usr/bin/php7.4 (プラグインディレクトリ)/bulk-media-register-add-on-wpcron/lib/bmrcroncli.php

[3]については、シェルスクリプトで生成します。

[4]については、まずWordPressにログインし、

curl -X POST -H "Content-Type:application/x-www-form-urlencoded" -H "charset:UTF-8" -c (cookieファイル) -d "log=(WordPressユーザid)" -d "pwd=(WordPressパスワード)" --verbose -L (サイトURL)//wp-login.php (見やすいように改行を入れています)

その時に取得したcookieを使ってフォームをPOSTしています。

curl -X POST -H "Content-Type:multipart/form-data" -H "charset:UTF-8" -b (cookieファイル) -F "upload_mode=all" -F itemcsv=登録開始 -F "action=upload_register" -F "usces_upcsv=@(一括登録データ).csv" (サイトURL)/wp-admin/admin.php?page=usces_itemedit & (見やすいように改行を入れています)

発生している問題・エラーメッセージ

以前のバージョンではこれで正しく商品が登録されていたのですが、
Ajaxを使う仕組みに変わったからなのか、
商品を登録することができなくなってしまいました。
「準備中」とまでは表示されるのですが・・・。

イメージ説明

試したこと

シェルスクリプトで、末尾に「&」を入れて
バックグラウンド実行し、完了を待機してみましたが
結果は変わりませんでした。

補足情報(FW/ツールのバージョンなど)

curl 7.29.0
PHP 7.4
WordPress 6.2.2
プラグイン
Welcart e-Commerce 2.8.19
WCEX DL Seller 3.4.7
Bulk Media Register 1.31

コメントを投稿

0 コメント