Я использую Wordpress WooCommerce и WooCommerce Subscriptions, и он работает в соответствии с моими ожиданиями.
Однако у меня было требование добавить настраиваемое поле на страницу Изменить подписку, поэтому я воспользовался приведенным ниже крючком и кодом, чтобы добавить новое поле на странице Изменить подписку.
add_action('woocommerce_admin_order_data_after_order_details', 'showWCSubscriptionCustomFields');
function showWCSubscriptionCustomFields($subscription) {
$currentPage = get_current_screen();
// If page is "Edit Subscription" page, then only show
if ($currentPage->action == 'add')
return;
// Getting all the users
$mindeskUsers = getAllUsers();
?>
<br class="clear" />
<p class="form-field form-field-wide">
<label for="mindesk_wc_subscriptions_var_client_user_id">Mindesk VAR Client User:</label>
<?php
$selectedUser = get_post_meta($subscription->get_id(), 'mindesk_wc_subscriptions_var_client_user_id', true);
echo getUsersListSelect('mindesk_wc_subscriptions_var_client_user_id', $selectedUser, $mindeskUsers, 'mindesk_select2');
?>
</p>
<?php
}
У меня это работает нормально ... Здесь я проверяю, не находится ли страница в режиме добавить, и мое настраиваемое поле будет отображаться только тогда, когда страница находится в режиме редактирования. Итак, на странице Изменить подписку отображается мое настраиваемое поле, и я могу сохранить данные, используя крючок ниже.
add_action('woocommerce_process_shop_order_meta', 'saveWCSubscriptionCustomFields');
function saveWCSubscriptionCustomFields($subscription_id) {
// wc_clean() and wc_sanitize_textarea() are WooCommerce sanitization functions
update_post_meta($subscription_id, 'mindesk_wc_subscriptions_var_client_user_id', wc_clean($_POST['mindesk_wc_subscriptions_var_client_user_id']));
}
Теперь мой запрос: когда я перехожу на страницу Изменить порядок, я также вижу это новое поле. Я не хочу показывать это новое настраиваемое поле на этой странице.
Я пытался найти различные крючки и пробовал несколько, но ни один из них не работал у меня должным образом.
Может ли кто-нибудь посоветовать мне показать свое новое настраиваемое поле только на странице Изменить подписку… и как скрыть это новое поле для страницы Изменить заказ?
Любая помощь или руководство будут высоко оценены.
Спасибо
Mindesk VAR Client User:
поле вы хотите скрыть? - person Bhautik   schedule 05.04.2021