我正在构建一个条带插件,我被困在这个小问题上。
问题:表单调用我的进程。php页面获取表单输入变量,处理Stripe标记,最后调用Stripe来根据成功完成的所有参数构建新客户。调用此工作表后,此工作表中的wp函数均未定义。
我的理论是,当表单请求php工作表时,服务器会清除其缓存并重新加载请求的工作表,这会转储我需要的所有wp全局变量。
问题:how do I call from my form to my custom php sheet, and still have access to the wp global functions? 小褶皱,表单内置另一个插件
我希望这是有意义的,如果我需要进一步澄清,请告诉我。
文件夹结构:
plugins
-->other plugin
-includes
--template-functions.php(form is built here)
-->my plugin
-includes
-languages
-lib
-custom-form-processing.php
代码:表单内置
template-functions.php
<form id="<?php echo $form_id; ?>" action="<?php echo plugins_url() . \'/lmf-stripe/includes/process-customer.php\' ?>" method="post">
--inner form bits here
<script src="https://checkout.stripe.com/checkout.js" class="stripe-button"
data-key="<?php echo $newKey; ?>" data-amount="<?php echo $amount*100; ?>" data-description="<?php the_title_attribute(); ?>"></script>
</form><!--end #<?php echo esc_attr( $form_id ); ?>-->
process-customer.php
<?php
function setCustomer()
{
if (isset($_POST[\'action\']) && $_POST[\'action\'] == \'stripe\' && wp_verify_nonce($_POST[\'stripe_nonce\'], \'stripe-nonce\')) {
global $stripe_options;
<!-- inner bits removed for brevity -->
// redirect back to our previous page with the added query variable
wp_redirect(\'http://www.google.com\');
exit;
}
}
add_action(\'init\', \'setCustomer\');
?>