Jak dodać kolumnę z nazwami produktów w zamówieniach WooCommerce
Objaśnienie
Chcesz zobaczyć nazwy produktów bezpośrednio na liście zamówień w panelu administracyjnym WooCommerce? Ten fragment kodu pomoże Ci to osiągnąć, dodając nową kolumnę do wyświetlania nazw produktów.
- Dodaj nową kolumnę: Kod najpierw dodaje nową kolumnę o nazwie "Nazwy produktów" tuż po kolumnie "Łączna kwota zamówienia" w Twojej liście zamówień w panelu administracyjnym. Ułatwia to zobaczenie, jakie produkty znajdują się w każdym zamówieniu, bez konieczności klikania w nie.
- Wyświetlaj nazwy produktów: Po dodaniu kolumny, kod wypełnia ją nazwami produktów w każdym zamówieniu. Zbiera wszystkie pozycje w zamówieniu i wypisuje ich nazwy, oddzielając je przecinkami.
- Strona Moje konto: Dodatkowo, kod modyfikuje szczegóły zamówienia na stronie "Moje konto" dla klientów. Do każdej pozycji dodaje nazwę produktu, co ułatwia klientom zobaczenie, co zamówili.
To rozwiązanie jest idealne dla właścicieli sklepów, którzy chcą szybko przeglądać zawartość zamówień bezpośrednio z panelu administracyjnego, a także poprawia doświadczenie klientów, dostarczając bardziej szczegółowe informacje o zamówieniach na ich stronie konta.
Kod
<?php
// Add a new column to the WooCommerce admin orders list to display product names
add_filter('manage_edit-shop_order_columns', 'wp_dudecom_add_product_name_column');
function wp_dudecom_add_product_name_column($columns) {
$new_columns = array();
foreach ($columns as $column_name => $column_info) {
$new_columns[$column_name] = $column_info;
if ('order_total' === $column_name) {
$new_columns['product_names'] = __('Product Names', 'woocommerce');
}
}
return $new_columns;
}
// Populate the new column with product names
add_action('manage_shop_order_posts_custom_column', 'wp_dudecom_display_product_names_in_orders', 10, 2);
function wp_dudecom_display_product_names_in_orders($column, $post_id) {
if ('product_names' === $column) {
$order = wc_get_order($post_id);
$items = $order->get_items();
$product_names = array();
foreach ($items as $item) {
$product_names[] = $item->get_name();
}
echo implode(', ', $product_names);
}
}
// Add product names to the order details in the My Account page
add_filter('woocommerce_order_item_name', 'wp_dudecom_add_product_names_to_my_account_orders', 10, 2);
function wp_dudecom_add_product_names_to_my_account_orders($item_name, $item) {
$product = $item->get_product();
if ($product) {
$item_name .= ' (' . $product->get_name() . ')';
}
return $item_name;
}
?>
Instrukcja
Lokalizacja pliku: Dodaj poniższy kod do pliku functions.php
swojego motywu lub do pliku własnej wtyczki.
Wymagania wstępne:
- Upewnij się, że WooCommerce jest zainstalowane i aktywowane na Twojej stronie WordPress.
Kroki wdrożenia:
- Uzyskaj dostęp do panelu administracyjnego WordPress.
- Przejdź do Wygląd > Edytor motywu, jeśli dodajesz kod do
functions.php
. Alternatywnie, użyj edytora kodu, jeśli dodajesz go do pliku własnej wtyczki. - Znajdź plik
functions.php
w swoim aktywnym motywie lub otwórz plik własnej wtyczki. - Skopiuj podany fragment kodu i wklej go na końcu pliku
functions.php
lub pliku własnej wtyczki. - Zapisz zmiany.
- Przejdź do WooCommerce > Zamówienia w panelu administracyjnym WordPress, aby zweryfikować, że kolumna "Nazwy produktów" jest teraz widoczna i zawiera nazwy produktów dla każdego zamówienia.
- Odwiedź stronę "Moje konto" jako klient, aby upewnić się, że nazwy produktów są dodane do pozycji zamówienia.
Jeśli napotkasz jakiekolwiek problemy lub potrzebujesz dalszej personalizacji, rozważ skontaktowanie się z wp-dude.com w celu uzyskania fachowej pomocy.