Intereting Posts
404 постоянных ошибок на страницах только Создать статическую страницу с 3-5 последних сообщений <? php wp_list_comments (); ?> возможно ли получить полный код на странице comments.php Как добавить вкладку, которая видна только в стороне администратора продукта в woocommerce? Встроенный стиль появляется в редакторе, но ломается на живом сайте Выпадающий список настраиваемого типа сообщения Можно ли создать экземпляр нового WC_Cart? Как удалить ссылку эскиза продукта из определенного div в Woocommerce? Как вставить локальное изображение с нестандартным размером Современный календарь Tribe Календарь wp-запрос с мета-запросом не работает вообще Создание страницы шаблона блога Запуск функции сразу после того, как пользователь разместил комментарий Импорт больших категорий товаров в WordPress Как оптимизировать множественную вставку в базу данных wordpress столбцы пользовательской таблицы пользователя

Обновление пользовательской почты Meta Even if Draft

В настоящее время у меня есть сайт WooCommerce с плагином подписки WooCommerce. Я пытаюсь добавить мета-сообщение после создания нового порядка подписки через панель мониторинга, и мне трудно получить мета, чтобы сохранить, когда подписка еще не выполнена.

Мне нужно сохранить значение только при выполнении нескольких условий:

  • Сначала только когда сообщение создается с помощью панели инструментов WordPress, а не через систему корзины покупок на лицевой стороне.
  • Второе, только когда meta еще не существует, только для новых сообщений
  • Это должно произойти, даже если сообщение все еще ожидается

Это то, что я сейчас имею:

add_action( 'added_post_meta', 'shop_sync_on_shop_subscription_save', 10, 4 ); add_action( 'updated_post_meta', 'shop_sync_on_shop_subscription_save', 10, 4 ); function shop_sync_on_shop_subscription_save( $meta_id, $post_id, $meta_key, $meta_value ) { if ( $meta_key == '_edit_lock' ) { // we've been editing the post if ( get_post_type( $post_id ) == 'shop_subscription' ) { // we've been editing a subscription $remaining_issues = get_post_meta($post_id, '_remaining_issues'); if ($remaining_issues == "") { // we only want to update to the default 6 if this has not already been set update_post_meta($post_id, '_remaining_issues', '6'); } } } } 

Solutions Collecting From Web of "Обновление пользовательской почты Meta Even if Draft"

get_post_meta () без третьего параметра вернет пустой массив, если ключ не найден, поэтому похоже, что ваша проверка на $ else_issues будет терпеть неудачу каждый раз.

Пытаться

 $remaining_issues = get_post_meta($post_id, '_remaining_issues',true); if ($remaining_issues === false) { // we only want to update to the default 6 if this has not already been set update_post_meta($post_id, '_remaining_issues', '6'); }