-
Notifications
You must be signed in to change notification settings - Fork 31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add 'crypto' custom route issue #154 #156
base: master
Are you sure you want to change the base?
Conversation
@@ -139,7 +139,8 @@ public function process_payment($order_id) | |||
update_option('blockonomics_orders', $blockonomics_orders); | |||
$order_url = WC()->api_request_url('WC_Gateway_Blockonomics'); | |||
$order_url = add_query_arg('show_order', $address, $order_url); | |||
|
|||
$order_url = str_replace('wc-api/WC_Gateway_Blockonomics', 'crypto', $order_url); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there is no need to first add WC()->api_request_url and then replace it. We should directly use show_order
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We do not have any way to directly access show_order as we are not creating any page or post type. We still have to use WC()->api_request_url('WC_Gateway_Blockonomics')
to fetch the correct url.
add_action('init', 'custom_rewrite_rules'); | ||
|
||
/* Custom Rewrite Rule */ | ||
function custom_rewrite_rules() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let us show_order . Also don't hardcode wc-api=WC_Gateway_Blockonomics
let us use WC()->api_request_url
else it won't work for WC < 3.0
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We cannot use WC()->api_request_url
because add_rewrite_rule requires the url to start with index.php
. All wordpress urls can be accessed in this manner.
In later versions of woocommerce, they added their own rewrite rules to change the url, however, we still need to access the original page with the form index.php?wc-api=WC_Gateway_Blockonomics
Does this require customer to manually flush rewrite rules or it will auto work on installation / upgrade ? |
Yes this does require a manual flush or flush_rewrite_rules() can be added to the installation / upgrade. |
I don't like the thought of rewrite_rules() ...but do the code . Let us see how less complex it is |
Please fix conflicts and other pull request comments |
The current version should work at rewriting the url correctly for all users who have rewrites enabled. Further tests will still be required to check if users with different permalink settings or custom rewrites in .htaccess breaks any functionality for existing users. |
Issue #154 - change checkout page URL from
http://localhost/wc-api/WC_Gateway_Blockonomics/?show_order=
to
http://localhost/crypto/?show_order=