Я использую код, который добавляет поле загрузки файла на странице оформления заказа. Как добавить загрузку файла в Woocommerce Checkout? Большое спасибо @loictheaztec за этот код.add_action( 'woocommerce_after_order_notes', 'add_custom_checkout_field' );
function add_custom_checkout_field($checkout) {
echo '';
woocommerce_form_field('certificate', array(
'type' => 'file',
'class' => array('form-row-wide'),
'label' => __('File', 'woocommerce'),
'required' => false,
'max_size' => '2048',
'accept' => '.pdf,.doc,.docx,.rtf,.txt',
), '');
echo '';
}
// Save the uploaded file URL and name
add_action( 'woocommerce_checkout_create_order', 'save_checkout_uploaded_file', 10, 2 );
function save_checkout_uploaded_file( $order, $data ){
if( $checkout_upload = WC()->session->get('checkout_upload') ) {
$order->update_meta_data( '_checkout_upload', $checkout_upload );
}
WC()->session->__unset('checkout_upload');
}
// Display the uploaded file in admin orders
add_action('woocommerce_admin_order_data_after_billing_address', 'display_uploaded_file_in_admin_orders');
function display_uploaded_file_in_admin_orders( $order ){
if( $checkout_upload = $order->get_meta( '_checkout_upload' ) ) {
printf( '
%s
%s
',
__("File Uploaded:", 'woocommerce'),
$checkout_upload['file_url'],
$checkout_upload['file_name']
);
}
}
// Display the uploaded file in thankyou page
add_action('woocommerce_order_details_after_order_table', 'display_uploaded_file_in_thankyou');
function display_uploaded_file_in_thankyou ( $order ){
if( $checkout_upload = $order->get_meta( '_checkout_upload' ) ) {
printf( '
%s
%s
',
__("File Uploaded:", 'woocommerce'),
$checkout_upload['file_url'],
$checkout_upload['file_name']
);
}
}
// Display the uploaded file in emails
add_action('woocommerce_email_customer_details', 'display_uploaded_file_in_email');
function display_uploaded_file_in_email ( $order ){
if( $checkout_upload = $order->get_meta( '_checkout_upload' ) ) {
printf( '
%s %s
',
__("File Uploaded:", 'woocommerce'),
$checkout_upload['file_url'],
$checkout_upload['file_name']
);
}
}
< /code>
На данный момент можно загрузить только один файл. Как я могу загрузить несколько файлов одновременно? Я буду рад вашей помощи!
Подробнее здесь: https://stackoverflow.com/questions/797 ... erce-order
Загрузите несколько файлов при размещении заказа Woocommerce ⇐ Php
Кемеровские программисты php общаются здесь
-
Anonymous
1757462896
Anonymous
Я использую код, который добавляет поле загрузки файла на странице оформления заказа. Как добавить загрузку файла в Woocommerce Checkout? Большое спасибо @loictheaztec за этот код.add_action( 'woocommerce_after_order_notes', 'add_custom_checkout_field' );
function add_custom_checkout_field($checkout) {
echo '';
woocommerce_form_field('certificate', array(
'type' => 'file',
'class' => array('form-row-wide'),
'label' => __('File', 'woocommerce'),
'required' => false,
'max_size' => '2048',
'accept' => '.pdf,.doc,.docx,.rtf,.txt',
), '');
echo '';
}
// Save the uploaded file URL and name
add_action( 'woocommerce_checkout_create_order', 'save_checkout_uploaded_file', 10, 2 );
function save_checkout_uploaded_file( $order, $data ){
if( $checkout_upload = WC()->session->get('checkout_upload') ) {
$order->update_meta_data( '_checkout_upload', $checkout_upload );
}
WC()->session->__unset('checkout_upload');
}
// Display the uploaded file in admin orders
add_action('woocommerce_admin_order_data_after_billing_address', 'display_uploaded_file_in_admin_orders');
function display_uploaded_file_in_admin_orders( $order ){
if( $checkout_upload = $order->get_meta( '_checkout_upload' ) ) {
printf( '
%s
[url=%s]%s[/url]
',
__("File Uploaded:", 'woocommerce'),
$checkout_upload['file_url'],
$checkout_upload['file_name']
);
}
}
// Display the uploaded file in thankyou page
add_action('woocommerce_order_details_after_order_table', 'display_uploaded_file_in_thankyou');
function display_uploaded_file_in_thankyou ( $order ){
if( $checkout_upload = $order->get_meta( '_checkout_upload' ) ) {
printf( '
%s
[url=%s]%s[/url]
',
__("File Uploaded:", 'woocommerce'),
$checkout_upload['file_url'],
$checkout_upload['file_name']
);
}
}
// Display the uploaded file in emails
add_action('woocommerce_email_customer_details', 'display_uploaded_file_in_email');
function display_uploaded_file_in_email ( $order ){
if( $checkout_upload = $order->get_meta( '_checkout_upload' ) ) {
printf( '
%s [url=%s]%s[/url]
',
__("File Uploaded:", 'woocommerce'),
$checkout_upload['file_url'],
$checkout_upload['file_name']
);
}
}
< /code>
На данный момент можно загрузить только один файл. Как я могу загрузить несколько файлов одновременно? Я буду рад вашей помощи!
Подробнее здесь: [url]https://stackoverflow.com/questions/79751073/upload-multiple-files-when-placing-a-woocommerce-order[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия