Wpis z mikrobloga

Mirki z #dev #webdev #wordpress #php

Potrzebuję Waszej pomocy.

Mam zarejestrowane takie statusy zamówień w #woocommerce :

W trakcie realizacji (wc-processing)
Wstrzymane (wc-on-hold)
Anulowano (wc-cancelled)
Nowe (wc-new)
Wysłane (wc-shipped)

Niestety, ale podczas próby masowej edycji statusów zamówień, na liście wyboru nie widzę zarejestrowanych przeze mnie statusów, czyli wc-new i wc-shipped

Dodałem taki kod do functions.php i dalej nic.
Już próbowałem masę metod i nie wiem, dlaczego się nie wyświetlają:

function custom_bulk_admin_order_statuses( $bulk_actions ) {
$bulk_actions['mark_wc-new'] = 'Zmień status na Nowe';
$bulk_actions['mark_wc-shipped'] = 'Zmień status na Wysłane';
return $bulk_actions;
}
add_filter( 'bulk_actions-edit-shop_order', 'custom_bulk_admin_order_statuses' );

function register_custom_order_status_bulk_edit() {
?>
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('select[name="action"]').find('option').each(function() {
if (jQuery(this).val() == 'mark_wc-new') {
jQuery(this).attr('value','mark_processing');
}
if (jQuery(this).val() == 'mark_wc-shipped') {
jQuery(this).attr('value','mark_completed');
}
});
});
</script>
<?php
}
add_action( 'admin_footer', 'register_custom_order_status_bulk_edit' );
  • 3
@NightRock: A spróbuj:

function register_custom_order_status_bulk_edit() {
?>
<script type="text/javascript">
jQuery(document).ready(function($) {
// Dodaj opcję 'Nowe'
$('select[name="action"]').append($('<option>', {
value: 'mark_wc-new',
text: 'Zmień status na Nowe'
}));

// Dodaj opcję 'Wysłane'
$('select[name="action"]').append($('<option>', {
value: 'mark_wc-shipped',
text: 'Zmień status na Wysłane'
}));
});
</script>
<?php
}
add_action( 'admin_footer', 'register_custom_order_status_bulk_edit' );