Я пытаюсь добавить все новые заказы Woocommerce в CSV под названием orders.csv. Все отлично работает, но не может получить каждый заказ, чтобы быть на новой линии. Он сливается с заголовком, то есть Products12345. Есть идеи, почему это может произойти? Я пытался использовать /n и php_eol. < /P>
add_action('woocommerce_checkout_order_processed', 'ppd_append_order_to_csv_full', 10, 1);
function ppd_append_order_to_csv_full($order_id) {
if (!$order_id) return;
$order = wc_get_order($order_id);
if (!$order) return;
$folder_path = ABSPATH . 'ppd/';
$csv_path = $folder_path . 'orders.csv';
if (!file_exists($folder_path)) {
mkdir($folder_path, 0755, true);
}
$need_headers = !file_exists($csv_path) || filesize($csv_path) === 0;
if ($need_headers) {
$file = fopen($csv_path, 'wb');
fwrite($file, "\xEF\xBB\xBF"); // UTF-8 BOM for Excel
fputcsv($file, [
'Order ID',
'Shipping Method',
'Products'
]);
fwrite($file, PHP_EOL);
} else {
$file = fopen($csv_path, 'ab');
}
// Products
$items = [];
foreach ($order->get_items('line_item') as $item_id => $item) {
$product = $item->get_product();
$name = $item->get_name();
$sku = $product ? $product->get_sku() : '';
$qty = $item->get_quantity();
$unit_price = $qty > 0 ? number_format($item->get_total() / $qty, 2, '.', '') : '0.00';
$items[] = "{$name} (SKU: {$sku}) x {$qty} - £{$unit_price}";
}
$shipping_method_names = [];
foreach ($order->get_shipping_methods() as $shipping_item) {
$shipping_method_names[] = $shipping_item->get_method_title();
}
$formatted_phone = $order->get_billing_phone() ? "'" . $order->get_billing_phone() : '';
// Row data
$data = [
$order->get_id(),
implode(' | ', $shipping_method_names),
implode(' | ', $items) //
Подробнее здесь: https://stackoverflow.com/questions/796 ... csv-export
Woocommerce заказы на экспорт CSV ⇐ Php
Кемеровские программисты php общаются здесь
1750700354
Anonymous
Я пытаюсь добавить все новые заказы Woocommerce в CSV под названием orders.csv. Все отлично работает, но не может получить каждый заказ, чтобы быть на новой линии. Он сливается с заголовком, то есть Products12345. Есть идеи, почему это может произойти? Я пытался использовать /n и php_eol. < /P>
add_action('woocommerce_checkout_order_processed', 'ppd_append_order_to_csv_full', 10, 1);
function ppd_append_order_to_csv_full($order_id) {
if (!$order_id) return;
$order = wc_get_order($order_id);
if (!$order) return;
$folder_path = ABSPATH . 'ppd/';
$csv_path = $folder_path . 'orders.csv';
if (!file_exists($folder_path)) {
mkdir($folder_path, 0755, true);
}
$need_headers = !file_exists($csv_path) || filesize($csv_path) === 0;
if ($need_headers) {
$file = fopen($csv_path, 'wb');
fwrite($file, "\xEF\xBB\xBF"); // UTF-8 BOM for Excel
fputcsv($file, [
'Order ID',
'Shipping Method',
'Products'
]);
fwrite($file, PHP_EOL);
} else {
$file = fopen($csv_path, 'ab');
}
// Products
$items = [];
foreach ($order->get_items('line_item') as $item_id => $item) {
$product = $item->get_product();
$name = $item->get_name();
$sku = $product ? $product->get_sku() : '';
$qty = $item->get_quantity();
$unit_price = $qty > 0 ? number_format($item->get_total() / $qty, 2, '.', '') : '0.00';
$items[] = "{$name} (SKU: {$sku}) x {$qty} - £{$unit_price}";
}
$shipping_method_names = [];
foreach ($order->get_shipping_methods() as $shipping_item) {
$shipping_method_names[] = $shipping_item->get_method_title();
}
$formatted_phone = $order->get_billing_phone() ? "'" . $order->get_billing_phone() : '';
// Row data
$data = [
$order->get_id(),
implode(' | ', $shipping_method_names),
implode(' | ', $items) //
Подробнее здесь: [url]https://stackoverflow.com/questions/79676576/woocommerce-orders-to-csv-export[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия