>使用WooCommerce与WordPress一起创建电子商务网站正在上升。如果您是像我这样的网络开发人员,那么了解wooCommerce模板系统的ins和and the Its and Cance和eilters是一项非常好的技能。试想一下,如果您知道有关WooCommerce的所有知识,或者至少足以在很少的帮助下实施任何事情,只有您和WooCommerce文档,您的老板会多么高兴。
>如果所有这些对您来说都不错,请继续阅读,我们将探索WordPress和WooCommerce并排工作可以做的事情。本文的风格(希望还有更多内容)将包括向您介绍一个问题,然后使用WordPress和WooCommerce Actions和Filters提出解决方案。
>>与您的电子商务网站一起使用CRM非常常见。 WooCommerce使我们可以简单地在结帐过程中或通过“我的帐户”页面检测新的客户或用户寄存器何时。
>>以下示例应该让您了解如何在某人通过WooCommerce注册时在Salesforce上创建帐户。请注意,未显示Salesforce API代码;我只是在概述该过程。
<span><span><?php </span></span><span><span>// Create Customer's Salesforce Account </span></span><span><span>add_action( 'woocommerce_created_customer', 'create_salesforce_account', 10, 3 ); </span></span><span><span>function create_salesforce_account( $customer_id, $new_customer_data, $password_generated ) { </span></span><span> </span><span> <span>// Get the New Customer's data </span></span><span> <span>$username = $new_customer_data['user_login']; </span></span><span> <span>$password = $new_customer_data['user_pass']; </span></span><span> <span>$email = $new_customer_data['user_email']; </span></span><span> <span>$role = $new_customer_data['role']; </span></span><span> </span><span> <span>// Getting the rest of the info for this customer </span></span><span> <span>$user = get_user_by( 'id', $customer_id ); </span></span><span> </span><span> <span>// Continue and send the information to Salesforce now </span></span><span><span>}</span></span>
>继续从我们的上一个示例开始,当客户编辑帐单或运输地址时,您很自然地要更新客户的Salesforce信息。 Woocommerce_customer_save_address在编辑任一个地址后立即运行,并提供了用户ID并编辑了哪个地址。请注意,您还可以通过$ _POST获取任何表单字段。
><span><span><?php </span></span><span><span>// Update Salesforce account with new shipping information </span></span><span><span>add_action( 'woocommerce_customer_save_address', 'update_salesforce_account', 10, 2 ); </span></span><span><span>function update_salesforce_account( $user_id, $load_address ) { </span></span><span> </span><span> <span>// Let's use a Switch statement to know which address we are updating </span></span><span> <span>switch ( $load_address ) { </span></span><span> <span>case 'billing': </span></span><span> <span>// Send billing info to Salesforce </span></span><span> <span>break; </span></span><span> </span><span> <span>case 'shipping': </span></span><span> <span>// Send shipping info to Salesforce </span></span><span> <span>break; </span></span><span> <span>} </span></span><span><span>}</span></span>
节标题,消息和描述。这些过滤器使您可以自定义向客户显示的内容,直到最后一个细节。您是否注意到我是在说过滤而不是动作?那是因为WooCommerce不使用措施来覆盖这类价值观,就像WordPress一样。
。woocommerce_checkout_coupon_message仅在商店中启用优惠券时才显示,并且在结帐页面时,它会要求您提供优惠券代码。例如:有优惠券?单击此处输入您的代码。
woocommerce_checkout_login_message在结帐页面上显示显示,它为您提供了登录的选项。例如:返回客户?单击此处登录。
woocommerce_lost_password_message在“我的帐户”页面下显示,它指示您输入用户名或电子邮件以重置密码。例如:丢失密码?请输入您的用户名或电子邮件地址。您将收到一个通过电子邮件创建新密码的链接。
> woocommerce_my_account_my_address_title在“我的帐户”页面上显示,默认情况下它可以具有两个标题之一。当您仅将其设置为帐单地址时,它从“我的地址”略微修改为“我的地址”,因此只需要其中一个。例如:我的地址或我的地址。
> woocommerce_my_account_my_downloads_title在“我的帐户”页面上显示,并为下载部分设置标题。例如:可用下载。
> woocommerce_my_account_my_orders_title在“我的帐户”页面上显示,并设置订单部分的标题。例如:最近的订单。
>当然,这些用法与名称除外几乎相同。以下是一些有关如何更改它们的示例。
><span><span><?php </span></span><span><span>// Create Customer's Salesforce Account </span></span><span><span>add_action( 'woocommerce_created_customer', 'create_salesforce_account', 10, 3 ); </span></span><span><span>function create_salesforce_account( $customer_id, $new_customer_data, $password_generated ) { </span></span><span> </span><span> <span>// Get the New Customer's data </span></span><span> <span>$username = $new_customer_data['user_login']; </span></span><span> <span>$password = $new_customer_data['user_pass']; </span></span><span> <span>$email = $new_customer_data['user_email']; </span></span><span> <span>$role = $new_customer_data['role']; </span></span><span> </span><span> <span>// Getting the rest of the info for this customer </span></span><span> <span>$user = get_user_by( 'id', $customer_id ); </span></span><span> </span><span> <span>// Continue and send the information to Salesforce now </span></span><span><span>}</span></span>
现在就这样。我们才开始探索WooCommerce的引擎盖下的内容,并且随着我们通过一系列文章进行进步,我们将建立更复杂的模块,这些模块将在很大程度上依赖使用WooCommerce和WordPress'挂钩系统来生产我们设置的任何东西注意。
在下一篇文章中,我们将在现实世界的情况下进行工作,您可能希望在其中提供免费的产品,并在其他感兴趣的项目中符合某些标准的购买。经常询问有关掌握WooCommerce动作和过滤器的问题
add_action('wooocommerce_before_cart','your_custom_function');
函数yous_custom_function() '是要添加操作的钩子,而'your_custom_function'是将执行的功能。
>
> $ new_price;
}
在此示例中,'woocommerce_cart_item_price'是过滤器钩,'modify_cart_item_price'是您的自定义函数,'10'是您函数的优先级,'2是您的'2'是参数的数量。函数接受。
>如何将自定义字段添加到WooCommerce Checkout页面?
>
add_action('wooocommerce_after_order_notes','add_custom_checkout_field');
>函数add_custom_checkout_field($ checkout) array(
'type'=>'text',
'class'=> array('input-text'),
'label'=> __('custom field'),
> '必需'=> true,
),$ checkout-> get_value('custom_field'));
echo''; ';
}
在此示例中,'woocommerce_after_order_order_notes'您想添加自定义字段的挂钩,“ add_custom_checkout_field”是创建自定义字段的函数。
>
如何通过编程方式修改WooCommerce产品价格?产品价格以编程方式,您可以使用“ Woocommerce_product_get_price”过滤器挂钩。以下是一个示例:
add_filter('woocommerce_product_get_price','modify_product_price',10,2);
以上是掌握WooCommerce的动作和过滤器的详细内容。更多信息请关注PHP中文网其他相关文章!