WooCommerce — это одно из наиболее популярных решений для создания интернет-магазинов на WordPress. Он предоставляет множество функциональных возможностей для управления вашим бизнесом. Однако, по умолчанию, он не предоставляет информацию о дате последнего изменения товара. В этой статье я расскажу, как добавить колонку «Дата изменения» на страницу «Все товары» в админ-панели WooCommerce.
Шаг 1: Добавление колонки «Дата изменения»
Первым шагом является добавление колонки «Дата изменения» в админ-панель WooCommerce. Для этого необходимо добавить следующий код в functions.php вашей темы или вашего плагина:
/**
* Добавление колонки «Дата изменения» в список товаров WooCommerce
*/
function wplife_add_product_modified_date_column( $columns ) {
// Add custom column after 'Name' column
$columns['product_modified_date'] = __( 'Дата изменения', 'woocommerce' );
return $columns;
}
add_filter( 'manage_edit-product_columns', 'wplife_add_product_modified_date_column' );
Этот код добавляет новую колонку «Дата изменения» на страницу «Все товары» в административной панели WooCommerce.
Шаг 2: Вывод даты последнего изменения
Чтобы отображать дату последнего изменения в новой колонке, необходимо добавить следующий код:
/**
* Заполнение колонки «Дата изменения» данными
*/
function wplife_populate_product_modified_date_column( $column, $post_id ) {
if ( 'product_modified_date' === $column ) {
$product = wc_get_product( $post_id );
$date = $product->get_date_modified()->date_i18n( get_option( 'date_format' ) );
$time = $product->get_date_modified()->date_i18n( get_option( 'time_format' ) );
echo sprintf( __( 'Изменено<br>%1$s в %2$s', 'woocommerce' ), $date, $time );
}
}
add_action( 'manage_product_posts_custom_column', 'wplife_populate_product_modified_date_column', 10, 2 );
Этот код выводит значение даты последнего изменения товара в колонке «Дата изменения». Значение даты форматируется в соответствии с настройками даты и времени WordPress.
Шаг 3: Сделать колонку «Дата изменения» сортируемой
Последний шаг заключается в том, чтобы сделать колонку «Дата изменения» сортируемой. Для этого нужно использовать следующий код:
/**
* Сделать колонку «Дата изменения» сортируемой
*/
function wplife_make_product_modified_date_column_sortable( $columns ) {
// Make custom column sortable
$columns['product_modified_date'] = 'product_modified_date';
return $columns;
}
add_filter( 'manage_edit-product_sortable_columns', 'wplife_make_product_modified_date_column_sortable' );
Этот код делает колонку «Дата изменения» сортируемой в админ-панели WooCommerce и обрабатывает сортировку по дате последнего изменения.
Шаг 4: Кастомизация внешнего вида
Хотя колонка «Дата изменения» добавляется автоматически, вы можете кастомизировать ее внешний вид. Например, вы можете изменить ее ширину. Для этого вам нужно добавить следующий блок CSS кода:
/**
* Настройка ширины колонки
*/
function wplife_admin_custom_css() {
echo '<style>
.widefat .column-product_modified_date {
width: 14%;
}
</style>';
}
add_action( 'admin_head', 'wplife_admin_custom_css' );
Этот CSS код изменяет ширину колонки «Дата изменения» на 14%.
Заключение
Теперь, когда вы знаете, как добавить колонку «Дата изменения» на страницу «Все товары» в админ-панели WooCommerce, вы можете легко отслеживать дату последнего изменения товаров в вашем интернет-магазине. Это поможет вам более эффективно управлять вашим бизнесом, позволяя быстро находить и редактировать информацию о товарах.