私はワードプレスのeコマースプラグインにいくつかの変更を加えており、ニーズに合わせて簡単にするためにたくさんの関数を削除しました。order_id関数は、などのように削除したいくつかの変数を使用するため、購入ボタンが押された後、ありがとうページにリダイレクトされなくなりました 。
私はこれに数時間取り組んできました、そして私がしたいのは購入ボタンのクリックでthankyou.phpにリダイレクトすることだけです。(今はajaxを使用しているので、使用してもかまいません)processpayment関数などに移動する必要はありません。本当に簡単です。
これが私が使っているコードと関数です:
本当にありがとう!!!
入力要素:
<div id="payment">
<div class="form-row">
<noscript><?php _e('Since your browser does not support JavaScript, or it is disabled, please ensure you click the <em>Update Totals</em> button before placing your order. You may be charged more than the amount stated above if you fail to do so.', 'jigoshop'); ?><br/><input type="submit" class="button-alt" name="update_totals" value="<?php _e('Update totals', 'jigoshop'); ?>" /></noscript>
<?php jigoshop::nonce_field('process_checkout')?>
<input type="submit" class="button-alt" name="place_order" id="place_order" value="<?php _e('Next Step', 'jigoshop'); ?>" />
<?php do_action( 'jigoshop_review_order_before_submit' ); ?>
<?php if (get_option('jigoshop_terms_page_id')>0) : ?>
<p class="form-row terms">
<label for="terms" class="checkbox"><?php _e('I accept the', 'jigoshop'); ?> <a href="<?php echo get_permalink(get_option('jigoshop_terms_page_id')); ?>" target="_blank"><?php _e('terms & conditions', 'jigoshop'); ?></a></label>
<input type="checkbox" class="input-checkbox" name="terms" <?php if (isset($_POST['terms'])) echo 'checked="checked"'; ?> id="terms" />
</p>
<?php endif; ?>
<?php do_action( 'jigoshop_review_order_after_submit' ); ?>
</div>
</div>
checkout.class.php:
// Process Payment
$result = $available_gateways["cheque"]->process_payment( $order_id );
// Redirect to success/confirmation/payment page
if (is_ajax()) :
ob_clean();
echo json_encode($result);
exit;
else :
wp_safe_redirect( $result['redirect'] );
exit;
endif;
else :
// No payment was required for order
$order->payment_complete();
// Empty the Cart
jigoshop_cart::empty_cart();
// Redirect to success/confirmation/payment page
$checkout_redirect = apply_filters( 'jigoshop_get_checkout_redirect_page_id', get_option( 'jigoshop_thanks_page_id' ) );
if (is_ajax()) :
ob_clean();
echo json_encode( array( 'redirect' => get_permalink( $checkout_redirect ) ) );
exit;
else :
wp_safe_redirect( get_permalink( $checkout_redirect ) );
exit;
endif;
endif;
// Break out of loop
break;
支払い機能の処理:
function process_payment() {
// Remove cart
jigoshop_cart::empty_cart();
// Return thankyou redirect
$checkout_redirect = apply_filters( 'jigoshop_get_checkout_redirect_page_id', get_option( 'jigoshop_thanks_page_id' ) );
return array(
'result' => 'success',
'redirect' => add_query_arg('key', $order->order_key, add_query_arg('order', $order_id, get_permalink( $checkout_redirect )))
);
}
これが私がfirebugから得ているエラーの詳細です:





デバッグをオンにした後、次のエラーが発生しました。
注意:未定義のインデックス:/home2/findmyki/public_html/bolistylus/wp-content/plugins/all-in-one-seo-pack/all_in_one_seo_pack.phpの710行目のaiosp_enabled
注意:未定義のインデックス:/home2/findmyki/public_html/bolistylus/wp-content/plugins/all-in-one-seo-pack/all_in_one_seo_pack.phpの710行目のaiosp_enabled
注意:未定義の定数PLUGIN_URLの使用-81行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/wp-google-fonts/google-fonts.phpで「PLUGIN_URL」と見なされます
注意:未定義の定数PLUGIN_PATHの使用-82行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/wp-google-fonts/google-fonts.phpで「PLUGIN_PATH」と見なされます
注意:未定義のインデックス:2306行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jetpack/jetpack.phpのホスト
注意:未定義のインデックス:198行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-first_name
注意:未定義のインデックス:199行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-last_name
注意:未定義のインデックス:200行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-company
注意:未定義のインデックス:201行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-address
注意:未定義のインデックス:202行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-address-2
注意:未定義のインデックス:203行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-city
注意:未定義のインデックス:204行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-state
注意:未定義のインデックス:205行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-postcode
注意:未定義のインデックス:206行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-country
重要:
注意:未定義の変数:211行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのuser_id
注意:未定義のインデックス:256行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのorder_comments
注意:未定義のインデックス:請求-会社(/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.php、264行目)
注意:未定義のインデックス:265行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのbilling-address
注意:未定義のインデックス:266行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのbilling-address-2
注意:未定義のインデックス:/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpの267行目のbilling-city
注意:未定義のインデックス:請求-268行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpの郵便番号
注意:未定義のインデックス:269行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのbilling-country
注意:未定義のインデックス:270行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのbilling-state
注意:未定義のインデックス:272行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのbilling-phone
注意:未定義のインデックス:282行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping_method
注意:未定義のインデックス:283行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのpayment_method
注意:未定義のインデックス:1105行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/all-in-one-seo-pack/aioseop.class.phpのaiosp_edit
注意:未定義のインデックス:1106行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/all-in-one-seo-pack/aioseop.class.phpのnonce-aioseop-edit
重要:
注意:未定義の変数:/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpの364行目のuser_id
注意:未定義の変数:379行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのavailable_gateways
重要:
致命的なエラー:379行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpの非オブジェクトでメンバー関数process_payment()を呼び出す
注意:未定義のインデックス:/home2/findmyki/public_html/bolistylus/wp-content/plugins/all-in-one-seo-pack/all_in_one_seo_pack.phpの710行目のaiosp_enabled
注意:未定義のインデックス:/home2/findmyki/public_html/bolistylus/wp-content/plugins/all-in-one-seo-pack/all_in_one_seo_pack.phpの710行目のaiosp_enabled
注意:未定義の定数PLUGIN_URLの使用-81行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/wp-google-fonts/google-fonts.phpで「PLUGIN_URL」と見なされます
注意:未定義の定数PLUGIN_PATHの使用-82行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/wp-google-fonts/google-fonts.phpで「PLUGIN_PATH」と見なされます
注意:未定義のインデックス:2306行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jetpack/jetpack.phpのホスト
注意:未定義のインデックス:198行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-first_name
注意:未定義のインデックス:199行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-last_name
注意:未定義のインデックス:200行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-company
注意:未定義のインデックス:201行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-address
注意:未定義のインデックス:202行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-address-2
注意:未定義のインデックス:203行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-city
注意:未定義のインデックス:204行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-state
注意:未定義のインデックス:205行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-postcode
注意:未定義のインデックス:206行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping-country
注意:未定義の変数:211行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのuser_id
注意:未定義のインデックス:256行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのorder_comments
注意:未定義のインデックス:請求-会社(/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.php、264行目)
注意:未定義のインデックス:265行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのbilling-address
注意:未定義のインデックス:266行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのbilling-address-2
注意:未定義のインデックス:/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpの267行目のbilling-city
注意:未定義のインデックス:請求-268行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpの郵便番号
注意:未定義のインデックス:269行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのbilling-country
注意:未定義のインデックス:270行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのbilling-state
注意:未定義のインデックス:272行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのbilling-phone
注意:未定義のインデックス:282行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのshipping_method
注意:未定義のインデックス:283行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのpayment_method
注意:未定義のインデックス:1105行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/all-in-one-seo-pack/aioseop.class.phpのaiosp_edit
注意:未定義のインデックス:1106行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/all-in-one-seo-pack/aioseop.class.phpのnonce-aioseop-edit
注意:未定義の変数:/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpの364行目のuser_id
注意:未定義の変数:379行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpのavailable_gateways
重要!!!!:
致命的なエラー:379行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/jigoshop/classes/jigoshop_checkout.class.phpの非オブジェクトでメンバー関数process_payment()を呼び出す
注意:未定義のインデックス:/home2/findmyki/public_html/bolistylus/wp-content/plugins/all-in-one-seo-pack/all_in_one_seo_pack.phpの710行目のaiosp_enabled
注意:未定義のインデックス:/home2/findmyki/public_html/bolistylus/wp-content/plugins/all-in-one-seo-pack/all_in_one_seo_pack.phpの710行目のaiosp_enabled
注意:未定義の定数PLUGIN_URLの使用-81行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/wp-google-fonts/google-fonts.phpで「PLUGIN_URL」と見なされます
注意:未定義の定数PLUGIN_PATHの使用-82行目の/home2/findmyki/public_html/bolistylus/wp-content/plugins/wp-google-fonts/google-fonts.phpで「PLUGIN_PATH」と見なされます