• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP wc_is_webhook_valid_topic函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中wc_is_webhook_valid_topic函数的典型用法代码示例。如果您正苦于以下问题:PHP wc_is_webhook_valid_topic函数的具体用法?PHP wc_is_webhook_valid_topic怎么用?PHP wc_is_webhook_valid_topic使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了wc_is_webhook_valid_topic函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: edit_webhook

 /**
  * Edit a webhook
  *
  * @since 2.2
  * @param int $id webhook ID
  * @param array $data parsed webhook data
  * @return array
  */
 public function edit_webhook($id, $data)
 {
     $data = isset($data['webhook']) ? $data['webhook'] : array();
     try {
         $id = $this->validate_request($id, 'shop_webhook', 'edit');
         if (is_wp_error($id)) {
             return $id;
         }
         $data = apply_filters('woocommerce_api_edit_webhook_data', $data, $id, $this);
         $webhook = new WC_Webhook($id);
         // update topic
         if (!empty($data['topic'])) {
             if (wc_is_webhook_valid_topic(strtolower($data['topic']))) {
                 $webhook->set_topic($data['topic']);
             } else {
                 throw new WC_API_Exception('woocommerce_api_invalid_webhook_topic', __('Webhook topic must be valid', 'woocommerce'), 400);
             }
         }
         // update delivery URL
         if (!empty($data['delivery_url'])) {
             if (wc_is_valid_url($data['delivery_url'])) {
                 $webhook->set_delivery_url($data['delivery_url']);
             } else {
                 throw new WC_API_Exception('woocommerce_api_invalid_webhook_delivery_url', __('Webhook delivery URL must be a valid URL starting with http:// or https://', 'woocommerce'), 400);
             }
         }
         // update secret
         if (!empty($data['secret'])) {
             $webhook->set_secret($data['secret']);
         }
         // update status
         if (!empty($data['status'])) {
             $webhook->update_status($data['status']);
         }
         // update user ID
         $webhook_data = array('ID' => $webhook->id, 'post_author' => get_current_user_id());
         // update name
         if (!empty($data['name'])) {
             $webhook_data['post_title'] = $data['name'];
         }
         // update post
         wp_update_post($webhook_data);
         do_action('woocommerce_api_edit_webhook', $webhook->id, $this);
         delete_transient('woocommerce_webhook_ids');
         return $this->get_webhook($id);
     } catch (WC_API_Exception $e) {
         return new WP_Error($e->getErrorCode(), $e->getMessage(), array('status' => $e->getCode()));
     }
 }
开发者ID:abcode619,项目名称:wpstuff,代码行数:57,代码来源:class-wc-api-webhooks.php


示例2: update_topic

 /**
  * Updated the Webhook topic.
  *
  * @param WC_Webhook $webhook
  */
 private function update_topic($webhook)
 {
     if (!empty($_POST['webhook_topic'])) {
         $resource = '';
         $event = '';
         switch ($_POST['webhook_topic']) {
             case 'custom':
                 if (!empty($_POST['webhook_custom_topic'])) {
                     list($resource, $event) = explode('.', wc_clean($_POST['webhook_custom_topic']));
                 }
                 break;
             case 'action':
                 $resource = 'action';
                 $event = !empty($_POST['webhook_action_event']) ? wc_clean($_POST['webhook_action_event']) : '';
                 break;
             default:
                 list($resource, $event) = explode('.', wc_clean($_POST['webhook_topic']));
                 break;
         }
         $topic = $resource . '.' . $event;
         if (wc_is_webhook_valid_topic($topic)) {
             $webhook->set_topic($topic);
         }
     }
 }
开发者ID:coderkevin,项目名称:woocommerce,代码行数:30,代码来源:class-wc-admin-webhooks.php


示例3: update_item

 /**
  * Update a single webhook.
  *
  * @param WP_REST_Request $request Full details about the request.
  * @return WP_Error|WP_REST_Response
  */
 public function update_item($request)
 {
     $id = (int) $request['id'];
     $post = get_post($id);
     if (empty($id) || empty($post->ID) || $this->post_type !== $post->post_type) {
         return new WP_Error("woocommerce_rest_{$this->post_type}_invalid_id", __('ID is invalid.', 'woocommerce'), array('status' => 400));
     }
     $webhook = new WC_Webhook($id);
     // Update topic.
     if (!empty($request['topic'])) {
         if (wc_is_webhook_valid_topic(strtolower($request['topic']))) {
             $webhook->set_topic($request['topic']);
         } else {
             return new WP_Error("woocommerce_rest_{$this->post_type}_invalid_topic", __('Webhook topic must be valid.', 'woocommerce'), array('status' => 400));
         }
     }
     // Update delivery URL.
     if (!empty($request['delivery_url'])) {
         if (wc_is_valid_url($request['delivery_url'])) {
             $webhook->set_delivery_url($request['delivery_url']);
         } else {
             return new WP_Error("woocommerce_rest_{$this->post_type}_invalid_delivery_url", __('Webhook delivery URL must be a valid URL starting with http:// or https://.', 'woocommerce'), array('status' => 400));
         }
     }
     // Update secret.
     if (!empty($request['secret'])) {
         $webhook->set_secret($request['secret']);
     }
     // Update status.
     if (!empty($request['status'])) {
         $webhook->update_status($request['status']);
     }
     $post = $this->prepare_item_for_database($request);
     if (is_wp_error($post)) {
         return $post;
     }
     // Convert the post object to an array, otherwise wp_update_post will expect non-escaped input.
     $post_id = wp_update_post((array) $post, true);
     if (is_wp_error($post_id)) {
         if (in_array($post_id->get_error_code(), array('db_update_error'))) {
             $post_id->add_data(array('status' => 500));
         } else {
             $post_id->add_data(array('status' => 400));
         }
         return $post_id;
     }
     $post = get_post($post_id);
     $this->update_additional_fields_for_object($post, $request);
     /**
      * Fires after a single item is created or updated via the REST API.
      *
      * @param WP_Post         $post      Inserted object.
      * @param WP_REST_Request $request   Request object.
      * @param boolean         $creating  True when creating item, false when updating.
      */
     do_action("woocommerce_rest_insert_{$this->post_type}", $post, $request, false);
     $request->set_param('context', 'edit');
     $response = $this->prepare_item_for_response($post, $request);
     // Clear cache.
     delete_transient('woocommerce_webhook_ids');
     return rest_ensure_response($response);
 }
开发者ID:tlovett1,项目名称:woocommerce,代码行数:68,代码来源:class-wc-rest-webhooks-controller.php


示例4: data_provider_test_wc_is_webhook_valid_topic

 /**
  * Data provider for test_wc_is_webhook_valid_topic.
  *
  * @since 2.4
  */
 public function data_provider_test_wc_is_webhook_valid_topic()
 {
     return array(array(true, wc_is_webhook_valid_topic('action.woocommerce_add_to_cart')), array(true, wc_is_webhook_valid_topic('action.wc_add_to_cart')), array(true, wc_is_webhook_valid_topic('product.created')), array(true, wc_is_webhook_valid_topic('product.updated')), array(true, wc_is_webhook_valid_topic('product.deleted')), array(true, wc_is_webhook_valid_topic('order.created')), array(true, wc_is_webhook_valid_topic('order.updated')), array(true, wc_is_webhook_valid_topic('order.deleted')), array(true, wc_is_webhook_valid_topic('customer.created')), array(true, wc_is_webhook_valid_topic('customer.updated')), array(true, wc_is_webhook_valid_topic('customer.deleted')), array(true, wc_is_webhook_valid_topic('coupon.created')), array(true, wc_is_webhook_valid_topic('coupon.updated')), array(true, wc_is_webhook_valid_topic('coupon.deleted')), array(false, wc_is_webhook_valid_topic('coupon.upgraded')), array(false, wc_is_webhook_valid_topic('wc.product.updated')), array(false, wc_is_webhook_valid_topic('missingdot')), array(false, wc_is_webhook_valid_topic('with space')));
 }
开发者ID:bitoncoin,项目名称:woocommerce,代码行数:9,代码来源:conditional-functions.php



注:本文中的wc_is_webhook_valid_topic函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP wc_let_to_num函数代码示例发布时间:2022-05-23
下一篇:
PHP wc_is_valid_url函数代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap