WooCommerce — потужний інструмент для створення інтернет-магазинів на базі WordPress, який вирішує все від демонстрації товарів до обробки покупок, управління податками та багато іншого.
Однією з визначних особливостей WooCommerce є його здатність зберігати докладну інформацію про замовлення. Він ретельно зберігає кожен аспект замовлення, включаючи суму, валюту, деталі доставки та податки.
Ця докладна інформація є цінною як для власників магазинів, так і для клієнтів. Уявіть собі створення сторінки, на якій користувачі можуть без зусиль перевірити деталі замовлення та налаштувати її для відображення додаткової інформації.
У цьому посібнику ви дізнаєтесь, як створити сторінку користувача WooCommerce, на якій будуть відображатися відомості про замовлення (ордер) на основі його ідентифікатора.
Навіщо створювати індивідуальну сторінку із подробицями замовлення?
Створення сторінки з даними про замовлення WooCommerce може дати кілька переваг, задовольняючи потреби як власника магазину, так і клієнта. Ось кілька вагомих причин, з яких хочеться піти цим шляхом:
- Покращений досвід користувача — сторінка з даними користувача про замовлення надає інформацію, яка найкраще відповідає потребам клієнтів. При налаштуванні макету та змісту сторінки можна виділити важливі деталі, такі як статус доставки, характеристики продукту та дати доставки, що спрощує клієнтам швидкий пошук того, що вони шукають.
- Додаткові функції — сторінка користувача з подробицями замовлення дозволить додати недоступні за замовчуванням функції WooCommerce. Наприклад, можна відображати поля користувача, такі як повідомлення про подарунки, спеціальні інструкції або персональні нотатки, унікальні для кожного ордера.
- інтерактивність — сторінка з подробицями, що настроюється, дозволяє включати інтерактивні елементи, такі як індикатори виконання для відстеження замовлення, посилання на супутні товари або прямий доступ до служби підтримки клієнтів, забезпечуючи більш насичений та цікавий досвід для ваших користувачів.
- Гнучкість та адаптивність — створення сторінки з даними користувача про замовлення дасть можливість реалізувати логіку, специфічну для вашого бізнесу, і адаптуватися до мінливих потреб. Ви можете відображати різну інформацію на основі критеріїв, унікальних для вашого магазину, таких як розташування клієнта або тип продуктів.
Дивіться також:
WooCommerce проти Shopify – все, що потрібно знати.
Як отримати дані про замовлення з об'єкта $order
У WooCommerce $order
об'єкт є центральною частиною, яка містить всю інформацію про конкретне замовлення. Використовуючи цей об'єкт, можна отримати різні відомості, такі як ідентифікатор, дата, інформація про виставлення рахунків та доставки, а також придбані продукти.
Давайте докладно розглянемо, як отримати доступ до цих різних фрагментів даних об'єкта $order
та використовувати їх.
1. Вийняти об'єкт замовлення
Спочатку необхідно отримати об'єкт замовлення за допомогою wc_get_order
функції. Ця функція приймає ідентифікатор та повертає відповідний об'єкт.
$order_id = 123; // Example order ID $order = wc_get_order( $order_id );
2. Основна інформація про замовлення
Отримавши об'єкт $order
Ви можете отримати основну інформацію про замовлення. Ось кілька прикладів:
- Ідентифікатор замовлення - Унікальний ідентифікатор.
$order_id = $order->get_id(); echo 'Order ID: ' . $order_id;
- Дата замовлення - Дата створення ордера.
$order_date = $order->get_date_created(); echo 'Order date: ' . wc_format_datetime( $order_date );
- Загальна сума замовлення - Загальна сума товарів.
$order_total = $order->get_formatted_order_total(); echo 'Order total: ' . $order_total;
3. Платіжна інформація
Інформація про виставлення рахунків включає дані, надані клієнтом під час оформлення. Ви можете отримати ці дані, використовуючи такі методи:
- Адреса для виставлення рахунку:
$billing_address = $order->get_formatted_billing_address(); echo 'Billing address: ' . $billing_address;v
- Електронна пошта для виставлення рахунків:
$billing_email = $order->get_billing_email(); echo 'Billing email: ' . $billing_email;
- Телефон для виставлення рахунків:
$billing_phone = $order->get_billing_phone(); echo 'Billing phone: ' . $billing_phone;
4. Інформація про доставку
Інформація про доставку включає інформацію про те, куди буде надіслано замовлення. Подібно до інформації про виставлення рахунків, можна отримати доступ до цих відомостей за допомогою об'єкта $order
:
- Адреса доставки:
$shipping_address = $order->get_formatted_shipping_address(); echo 'Shipping address: ' . $shipping_address;
5. Замовити товари
Можна отримати елементи, включені до ордеру, що особливо корисно, якщо необхідно відобразити куплені продукти. Ось як отримати елементи:
$items = $order->get_items(); foreach ( $items as $item_id => $item ) { $product_name = $item->get_name(); $product_quantity = $item->get_quantity(); $product_total = $item->get_total(); echo 'Product name: ' . $product_name . '<br>'; echo 'Quantity: ' . $product_quantity . '<br>'; echo 'Total: ' . wc_price( $product_total ) . '<br>'; }
6. Способи оплати та доставки
Ви також можете отримати інформацію про способи оплати та доставки, використані для замовлення:
- Спосіб оплати:
$payment_method = $order->get_payment_method_title(); echo 'Payment method: ' . $payment_method;
- Спосіб доставки:
$shipping_methods = $order->get_shipping_methods(); foreach ( $shipping_methods as $shipping_method ) { echo 'Shipping method: ' . $shipping_method->get_name(); }
7. Статус замовлення
Статус може бути корисним для різних функцій, таких як відстеження виконання замовлення:
$order_status = wc_get_order_status_name( $order->get_status() ); echo 'Order status: ' . $order_status;
Створення сторінки для відображення деталей за ідентифікатором замовлення
Щоб забезпечити безперебійну роботу з клієнтами, корисно створити спеціальну сторінку, на якій вони зможуть переглядати відомості про замовлення, просто ввівши ідентифікатор.
Нижче наведено процес створення сторінки, включаючи налаштування шаблону та відображення інформації про замовлення.
Крок 1: Створіть свій шаблон сторінки
Спочатку створіть власний шаблон сторінки у вашій темі WordPress. Цей шаблон використовуватиметься для відображення деталей.
Для цього перейдіть до вихідного коду проекту. Ви також можете використовувати FTP-клієнт, використовуючи налаштування на сторінці інформації про ваш сайт ( Сайти WordPress > назва сайту > інформація ).
У каталозі дочірньої теми створіть новий файл з ім'ям page-order-details.php. Додайте до цього файлу наступний код:
<?php /** * Template Name: Order Details */ get_header(); ?> <div id="primary" class="content-area"> <main id="main" class="site-main"> <?php if ( isset( $_GET['order_id'] ) ) { $order_id = intval( $_GET['order_id'] ); display_order_details( $order_id ); } else { echo '<p>No order ID provided.</p>'; } ?> </main><!-- #main --> </div><!-- #primary --> <?php get_footer(); // Function to display order details function display_order_details( $order_id ) { $order = wc_get_order( $order_id ); if ( ! $order ) { echo '<p>Invalid order ID.</p>'; return; } echo '<h2>Order Details</h2>'; echo '<ul>'; echo '<li>Order ID: ' . $order->get_id() . '</li>'; echo '<li>Order Date: ' . wc_format_datetime( $order->get_date_created() ) . '</li>'; echo '<li>Order Total: ' . $order->get_formatted_order_total() . '</li>'; echo '<li>Billing Address: ' . $order->get_formatted_billing_address() . '</li>'; echo '<li>Shipping Address: ' . $order->get_formatted_shipping_address() . '</li>'; echo '<li>Billing Email: ' . $order->get_billing_email() . '</li>'; echo '<li>Billing Phone: ' . $order->get_billing_phone() . '</li>'; echo '<li>Payment Method: ' . $order->get_payment_method_title() . '</li>'; echo '<li>Order Status: ' . wc_get_order_status_name( $order->get_status() ) . '</li>'; echo '</ul>'; echo '<h3>Order Items</h3>'; echo '<ul>'; $items = $order->get_items(); foreach ( $items as $item_id => $item ) { echo '<li>'; echo 'Product Name: ' . $item->get_name() . '<br>'; echo 'Quantity: ' . $item->get_quantity() . '<br>'; echo 'Total: ' . wc_price( $item->get_total() ) . '<br>'; echo '</li>'; } echo '</ul>'; }
Давайте розберемо цей код, щоб ви зрозуміли.
По-перше, вказуємо функції get_header()
и get_footer()
, які включають стандартний верхній та нижній колонтитул WordPress для сторінки, гарантуючи, що вона збереже загальний дизайн та макет сайту.
У нас також є деякі базові HTML-розмітки, які є важливими для відображення тексту в Інтернеті. Наступний важливий код – це умова, яка перевіряє, order_id
чи передається як параметр URL.
if ( isset( $_GET['order_id'] ) ) { $order_id = intval( $_GET['order_id'] ); display_order_details( $order_id ); } else { echo '<p>No order ID provided.</p>'; }
Що він робить, так це те, що якщо order_id
існує, він очищає вхідні дані за допомогою intval()
і викликає display_order_details
функцію. Якщо не вказано order_id
він виводить повідомлення, що вказує на це.
Функція display_order_details
- це функція, оголошена нижче get_footer()
. Ця функція приймає ідентифікатор як вхідні дані та витягує відповідний об'єкт замовлення за допомогою wc_get_order()
.
Якщо ідентифікатор є недійсним, відображається повідомлення про помилку. В іншому випадку виймаються та відображаються різні відомості про замовлення, такі як ідентифікатор, дата, загальна сума, адреси виставлення рахунків та доставки, адреса електронної пошти, телефон, спосіб оплати та статус у неупорядкованому списку.
Крім того, він перебирає позиції ордера та відображає назву товару, кількість та загальну ціну для кожної позиції в іншому невпорядкованому списку.
Крок 2: Додайте шаблон до своєї теми і створіть нову сторінку WordPress.
Збережіть файл page-order-details.php у каталозі дочірньої теми. Це зробить шаблон доступним для вибору під час створення нової сторінки WordPress.
Далі перейдіть до сторінки > Додати у панелі адміністратора WordPress. Дайте сторінці ім'я, а потім у розділі Page Attributes праворуч виберіть шаблон Подробиці замовлення з списку Template, що розкривається.
Якщо ви не бачите розділ Атрибути сторінки, то можете повернутися назад Сторінки, де ви побачите список усіх сторінок з деякими опціями при наведенні курсору на кожну сторінку. Виберіть Швидке редагування, щоб знайти розділ Атрибути сторінки.
Опублікуйте сторінку, і тепер її можна протестувати з даними про індивідуальне замовлення.
Для перевірки перейдіть до браузера та додайте до URL-адреси?order_id=ORDER_ID
дійсний ідентифікатор WooCommerce ORDER_ID
. наприклад, https://yourwebsite.com/order-details/?order_id=70
Це має відображати деталі замовлення для зазначеного ідентифікатора.
Потім можна додати стиль до шаблону на власний розсуд.
Створення сторінки відомостей про замовлення з використанням шорткоду відстеження
Ще одна опція, про яку ви, можливо, не знаєте, - це шорткод відстеження замовлень WooCommerce, який надає користувачам інтерфейс користувача для пошуку даних свого замовлення шляхом введення номера ордера та адреси електронної пошти.
На цій сторінці відображається номер замовлення, дата, статус, товари, адреса доставки та виставлення рахунку. Це може бути корисним, якщо ви не збираєтеся показувати більш детальну інформацію.
Створення сторінки відстеження замовлень з використанням шорткоду відстеження ордерів WooCommerce — це простий спосіб покращити якість обслуговування клієнтів, не заглиблюючись у написання коду користувача.
Для цього виконайте такі дії:
- Увійдіть до панелі керування WordPress.
- Потім створіть нову сторінку, перейшовши в Сторінки > Додати нову.
- Дайте сторінці заголовок і в редакторі сторінок додайте наступний шорткод:
[woocommerce_order_tracking]
- Потім натисніть кнопку «Опублікувати», щоб опублікувати сторінку
Так просто. Але це може не дати вам бажаної гнучкості.
Створення сторінки відомостей про замовлення WooCommerce покращує якість обслуговування клієнтів, надаючи їм легкий доступ до інформації про замовлення, підвищуючи прозорість і задоволеність клієнтів.
Джерело: kinsta.com
Коментарі до запису: 0