首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有可能将wordpress重力表单作为soap发布到第三方软件中吗?

有可能将wordpress重力表单作为soap发布到第三方软件中吗?
EN

Stack Overflow用户
提问于 2022-11-10 07:10:47
回答 2查看 22关注 0票数 0

我想将提交到wordpress重力表单上的表单数据发布到第三方erp软件,该软件只接受soap信封。重力forms elitle包提供只有json和form数据两种格式的webhooks,是否可以将数据作为表单发布。下面是wsdl,我需要用表单字段映射它。如果没有,那么我的选择是什么,请帮助,因为这是一个帮助朋友的项目。

我需要填写的WSDL:

代码语言:javascript
复制
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:v3="http://schemas.datacontract.org/2004/07/V3.WebServiceInterface.Models.V3" xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/">
   <soapenv:Header/>
   <soapenv:Body>
      <tem:AddJobs>
         <!--Optional:-->
         <tem:jobs>
            <!--Zero or more repetitions:-->
            <v3:Job ser:Id="" ser:Ref="">
               <!--Optional:-->
               <v3:Fields>
                  <!--Zero or more repetitions:-->
                  <v3:Field>
                     <!--Optional:-->
                     <!--type: string-->
                     <v3:Name>My_test_Jalal</v3:Name>
                     <!--Optional:-->
                     <!--type: string-->
                     <v3:Value>verrantque per auras</v3:Value>
                  </v3:Field>
               </v3:Fields>
               <!--Optional:-->
               <!--type: string-->
               <v3:FormName>per auras</v3:FormName>
               <!--Optional:-->
               <v3:Asset ser:Id="circum claustra" ser:Ref="nimborum in">
                  <!--Optional:-->
                  <v3:Fields>
                     <!--Zero or more repetitions:-->
                     <v3:Field>
                        <!--Optional:-->
                        <!--type: string-->
                        <v3:Name>foedere certo</v3:Name>
                        <!--Optional:-->
                        <!--type: string-->
                        <v3:Value>profundum quippe ferant</v3:Value>
                     </v3:Field>
                  </v3:Fields>
                  <!--Optional:-->
                  <!--type: string-->
                  <v3:FormName>et carcere</v3:FormName>
                  <!--Optional:-->
                  <v3:Customer ser:Id="iovis rapidum iaculata" ser:Ref="speluncis abdidit">
                     <!--Optional:-->
                     <v3:Fields>
                        <!--Zero or more repetitions:-->
                        <v3:Field>
                           <!--Optional:-->
                           <!--type: string-->
                           <v3:Name>bella gero et</v3:Name>
                           <!--Optional:-->
                           <!--type: string-->
                           <v3:Value>flammas turbine</v3:Value>
                        </v3:Field>
                     </v3:Fields>
                     <!--Optional:-->
                     <!--type: string-->
                     <v3:FormName>hoc metuens</v3:FormName>
                     <!--Optional:-->
                     <v3:Contacts>
                        <!--Zero or more repetitions:-->
                        <v3:Contact ser:Id="ac vinclis" ser:Ref="speluncis abdidit">
                           <!--Optional:-->
                           <v3:Fields>
                              <!--Zero or more repetitions:-->
                              <v3:Field>
                                 <!--Optional:-->
                                 <!--type: string-->
                                 <v3:Name>aris imponet honorem</v3:Name>
                                 <!--Optional:-->
                                 <!--type: string-->
                                 <v3:Value>praeterea aut</v3:Value>
                              </v3:Field>
                           </v3:Fields>
                           <!--Optional:-->
                           <!--type: string-->
                           <v3:FormName>claustra fremunt</v3:FormName>
                        </v3:Contact>
                     </v3:Contacts>
                     <!--Optional:-->
                     <v3:Products>
                        <!--Zero or more repetitions:-->
                        <v3:Product ser:Id="imperio premit" ser:Ref="quisquam numen">
                           <!--Optional:-->
                           <v3:Fields>
                              <!--Zero or more repetitions:-->
                              <v3:Field>
                                 <!--Optional:-->
                                 <!--type: string-->
                                 <v3:Name>ac vinclis</v3:Name>
                                 <!--Optional:-->
                                 <!--type: string-->
                                 <v3:Value>ac vinclis</v3:Value>
                              </v3:Field>
                           </v3:Fields>
                           <!--Optional:-->
                           <!--type: string-->
                           <v3:FormName>pectore flammas</v3:FormName>
                        </v3:Product>
                     </v3:Products>
                  </v3:Customer>
                  <!--Optional:-->
                  <v3:Products>
                     <!--Zero or more repetitions:-->
                     <v3:Product ser:Id="pectore flammas" ser:Ref="annos bella gero">
                        <!--Optional:-->
                        <v3:Fields>
                           <!--Zero or more repetitions:-->
                           <v3:Field>
                              <!--Optional:-->
                              <!--type: string-->
                              <v3:Name>certo et</v3:Name>
                              <!--Optional:-->
                              <!--type: string-->
                              <v3:Value>rates evertitque aequora</v3:Value>
                           </v3:Field>
                        </v3:Fields>
                        <!--Optional:-->
                        <!--type: string-->
                        <v3:FormName>volutans nimborum in</v3:FormName>
                     </v3:Product>
                  </v3:Products>
               </v3:Asset>
               <!--Optional:-->
               <v3:Contacts>
                  <!--Zero or more repetitions:-->
                  <v3:Contact ser:Id="faciat maria" ser:Ref="et quisquam">
                     <!--Optional:-->
                     <v3:Fields>
                        <!--Zero or more repetitions:-->
                        <v3:Field>
                           <!--Optional:-->
                           <!--type: string-->
                           <v3:Name>et soror</v3:Name>
                           <!--Optional:-->
                           <!--type: string-->
                           <v3:Value>annos bella gero</v3:Value>
                        </v3:Field>
                     </v3:Fields>
                     <!--Optional:-->
                     <!--type: string-->
                     <v3:FormName>ventos tempestatesque sonoras</v3:FormName>
                  </v3:Contact>
               </v3:Contacts>
               <!--Optional:-->
               <v3:Customer ser:Id="regina iovisque" ser:Ref="rapidum iaculata">
                  <!--Optional:-->
                  <v3:Fields>
                     <!--Zero or more repetitions:-->
                     <v3:Field>
                        <!--Optional:-->
                        <!--type: string-->
                        <v3:Name>insuper altos</v3:Name>
                        <!--Optional:-->
                        <!--type: string-->
                        <v3:Value>cum murmure</v3:Value>
                     </v3:Field>
                  </v3:Fields>
                  <!--Optional:-->
                  <!--type: string-->
                  <v3:FormName>in patriam</v3:FormName>
                  <!--Optional:-->
                  <v3:Contacts>
                     <!--Zero or more repetitions:-->
                     <v3:Contact ser:Id="abdidit atris hoc" ser:Ref="coniunx una cum">
                        <!--Optional:-->
                        <v3:Fields>
                           <!--Zero or more repetitions:-->
                           <v3:Field>
                              <!--Optional:-->
                              <!--type: string-->
                              <v3:Name>ipsa iovis</v3:Name>
                              <!--Optional:-->
                              <!--type: string-->
                              <v3:Value>frenat illi indignantes</v3:Value>
                           </v3:Field>
                        </v3:Fields>
                        <!--Optional:-->
                        <!--type: string-->
                        <v3:FormName>nimborum in</v3:FormName>
                     </v3:Contact>
                  </v3:Contacts>
                  <!--Optional:-->
                  <v3:Products>
                     <!--Zero or more repetitions:-->
                     <v3:Product ser:Id="mollitque animos" ser:Ref="montis insuper altos">
                        <!--Optional:-->
                        <v3:Fields>
                           <!--Zero or more repetitions:-->
                           <v3:Field>
                              <!--Optional:-->
                              <!--type: string-->
                              <v3:Name>molemque et montis</v3:Name>
                              <!--Optional:-->
                              <!--type: string-->
                              <v3:Value>gero et</v3:Value>
                           </v3:Field>
                        </v3:Fields>
                        <!--Optional:-->
                        <!--type: string-->
                        <v3:FormName>circum claustra fremunt</v3:FormName>
                     </v3:Product>
                  </v3:Products>
               </v3:Customer>
               <!--Optional:-->
               <v3:ProductRows>
                  <!--Zero or more repetitions:-->
                  <v3:ProductRow ser:Id="montis insuper" ser:Ref="aris imponet">
                     <!--Optional:-->
                     <v3:Fields>
                        <!--Zero or more repetitions:-->
                        <v3:Field>
                           <!--Optional:-->
                           <!--type: string-->
                           <v3:Name>aris imponet</v3:Name>
                           <!--Optional:-->
                           <!--type: string-->
                           <v3:Value>incedo regina</v3:Value>
                        </v3:Field>
                     </v3:Fields>
                     <!--Optional:-->
                     <!--type: string-->
                     <v3:FormName>ac vinclis</v3:FormName>
                  </v3:ProductRow>
               </v3:ProductRows>
               <!--Optional:-->
               <v3:SubJobs/>
            </v3:Job>
         </tem:jobs>
      </tem:AddJobs>
   </soapenv:Body>
</soapenv:Envelope>

`

我想知道这里是否有人尝试过这一点,因为超过一半的互联网运行wordpress网站,而且我对wsdl非常熟悉。我尝试将上面的soap信封提交给端点,但是失败了,所以不知道xml中有什么问题。

EN

回答 2

Stack Overflow用户

发布于 2022-11-10 11:55:46

在表单提交之后,您可以尝试使用garivty表单操作。您可以根据提交的数据准备soap,并使用库发送请求。

参考链接:https://docs.gravityforms.com/gform_after_submission/

谢谢!

票数 0
EN

Stack Overflow用户

发布于 2022-11-14 20:36:11

您可以使用动作钩子发布数据。

适用于所有表格。

代码语言:javascript
复制
add_action( 'gform_after_submission', 'after_submission', 10, 2 );

适用于特定的表单。在这种情况下,表单id 5。

代码语言:javascript
复制
add_action( 'gform_after_submission_5', 'after_submission', 10, 2 );

将数据发送给第三方的功能

代码语言:javascript
复制
add_action( 'gform_after_submission', 'post_to_third_party', 10, 2 );
function post_to_third_party( $entry, $form ) {

  $endpoint_url = 'https://thirdparty.com';
  $body = array(
    'first_name' => rgar( $entry, '1.3' ),
    'last_name' => rgar( $entry, '1.6' ),
    'message' => rgar( $entry, '3' ),
    );
  GFCommon::log_debug( 'gform_after_submission: body => ' . print_r( $body, true ) );

  $response = wp_remote_post( $endpoint_url, array( 'body' => $body ) );
  GFCommon::log_debug( 'gform_after_submission: response => ' . print_r( $response, true ) );

}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74385292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档