woocommerce製品にもう1つのダウンロード可能なファイルをアップロードしようとしています。私はすでに製品にダウンロード可能なファイルが1つあり、もう1つ追加したいと思っています。このためWooCommerceの製品用にプログラムでダウンロード可能なファイルを追加する
私は、次のコードを使用しています:正しい方法でこの機能アップロードファイルは、
if($_FILES){
$attachment_id = media_handle_upload('abe_update_epub', $post_id);
if (is_wp_error($attachment_id)) {
$errors = $attachment_id->get_error_messages();
foreach($errors as $error){
echo $error;
}
echo 'There was an error uploading the image';
} else {
// to get exiting file/Old file
$abe_file = get_post_meta($abe_post_id, '_downloadable_files', true);
foreach($abe_file as $abe){
$name = $abe['name'];
$url = $abe['file'];
}
// This is my new file which i want to upload also
$file_name = 'Epub Files';
$file_url1 = wp_get_attachment_url($attachment_id);
$files[md5($file_url)] = array(
'name' => $file_name,
'file' => $file_url
);
update_post_meta($post_id, '_downloadable_files', $files);
echo 'The image was uploaded successfully!';
}
}
をしかし、それは新しいものに古いファイルを置き換えます。
どうすればこの問題を解決できますか?
このスクリプトで何が間違っていますか?
ありがとうございました
@LoicTheAztec今では、のために感謝を働いている:あなたは、これが働いて更新されたコードである...(
$abe_post_id
としては未定義だった)$post_id
はあなたの製品のIDであることを確認するためにを持っています私の人生を救う。バリエーション製品をアップロードするためにこれを実装できますか? –