Currency not updating on AJAX "Load More" with Bricks Builder
The support doesn work on Saturdays and Sundays, so some Friday requests can be answered on Monday. If you have problems with registration ask help on contact us page pleaseIf you not got email within 24~36 business hours, firstly check your spam box, and if no any email from the support there - back to the forum and read answer here. DO NOT ANSWER ON EMAILS [noreply@pluginus.net] FROM THE FORUM!! Emails are just for your info, all answers should be published only here.
The support doesn work on Saturdays and Sundays, so some Friday requests can be answered on Monday.
Quote from Libi on June 18, 2025, 10:39Hi there,
I'm using the FOX - Currency Switcher Professional for WooCommerce plugin together with Bricks Builder on my site https://www.maqes.com/bestsellers/. The currency switcher works perfectly on initial page load, but I'm having trouble with AJAX-loaded products via Bricks' “Load More” functionality.
When I switch the currency (e.g., to PLN), everything looks good. But after clicking “Load More”, the newly loaded products are still showing the default currency (EUR) instead of the selected one.
Here's what I’ve tried so far:
Triggering
jQuery(document).trigger('woocs_after_ajax')inside abricks/frontend/renderevent listener.Calling
WOOCS.reinit_currency()manually after Load More.Using
setTimeoutafter the button click to delay the reinit.Verified that my JS is loading and the events are firing (via
console.log).Despite this, the newly loaded products do not convert to the selected currency.
Could you please advise how to properly trigger the currency update for products loaded via Bricks Builder’s AJAX Load More?
Or is there a recommended way to ensure FOX detects and updates the new elements?Thank you so much for your help!
Best regards,
Libi
Hi there,
I'm using the FOX - Currency Switcher Professional for WooCommerce plugin together with Bricks Builder on my site https://www.maqes.com/bestsellers/. The currency switcher works perfectly on initial page load, but I'm having trouble with AJAX-loaded products via Bricks' “Load More” functionality.
When I switch the currency (e.g., to PLN), everything looks good. But after clicking “Load More”, the newly loaded products are still showing the default currency (EUR) instead of the selected one.
Here's what I’ve tried so far:
Triggering
jQuery(document).trigger('woocs_after_ajax')inside abricks/frontend/renderevent listener.Calling
WOOCS.reinit_currency()manually after Load More.Using
setTimeoutafter the button click to delay the reinit.Verified that my JS is loading and the events are firing (via
console.log).
Despite this, the newly loaded products do not convert to the selected currency.
Could you please advise how to properly trigger the currency update for products loaded via Bricks Builder’s AJAX Load More?
Or is there a recommended way to ensure FOX detects and updates the new elements?
Thank you so much for your help!
Best regards,
Libi
Quote from Pablo Borysenco on June 18, 2025, 11:09Hello Libi
Try customizing a third-party plugin. Add a GET request currency to this ajax request
Hello Libi
Try customizing a third-party plugin. Add a GET request currency to this ajax request
Quote from Libi on June 18, 2025, 11:29Hi again,
Thanks for your reply — but I’m not a developer, and I’m not sure what you mean by "customizing a third-party plugin" or how to "add a GET request currency to this ajax request."
I’m using Bricks Builder, and I don’t know how to modify the AJAX request it sends when I click "Load More." I just need a way to make your plugin update the currency correctly when more products are loaded via AJAX — either by using some JavaScript method you provide or a setting in the plugin.
Could you please walk me through exactly what I need to do, step by step — or let me know if there’s a script or snippet I can copy-paste to make this work?
Thanks a lot,
Libi
Hi again,
Thanks for your reply — but I’m not a developer, and I’m not sure what you mean by"customizing a third-party plugin" or how to"add a GET request currency to this ajax request."
I’m using Bricks Builder, and I don’t know how to modify the AJAX request it sends when I click"Load More." I just need a way to make your plugin update the currency correctly when more products are loaded via AJAX — either by using some JavaScript method you provide or a setting in the plugin.
Could you please walk me through exactly what I need to do, step by step — or let me know if there’s a script or snippet I can copy-paste to make this work?
Thanks a lot,
Libi
Quote from Pablo Borysenco on June 18, 2025, 13:12Ok! From my side I can give you the code for redrawing prices:
var products_ids = {};
var products_currency = {};
jQuery.each(jQuery('.woocs_price_code'), function (index, item) {
products_ids[jQuery(item).data('redraw-id')] = jQuery(item).data('product-id');
if (jQuery(item).data('currency')) {
products_currency[jQuery(item).data('redraw-id')] = jQuery(item).data('currency');
}});
//if no prices on the page - do nothing
if (Object.keys(products_ids).length === 0) {
woocs_sumbit_currency_changing = true;
return;
}var data = {
action: "woocs_get_products_price_html",
products_ids: products_ids,
products_currency: products_currency,
current_currency: woocs_current_currency['name']
};jQuery.post(woocs_ajaxurl, data, function (data) {
data = JSON.parse(data);
if (jQuery.isEmptyObject(data)) {
woocs_sumbit_currency_changing = true;
}
if (!jQuery.isEmptyObject(data)) {
jQuery('.woocs_price_info').remove();
jQuery('.woocs_price_approx.woocs_cart_item_price').remove();
jQuery.each(jQuery('.woocs_price_code'), function (index, item) {
if (data.ids[jQuery(item).data('redraw-id')] != undefined) {
jQuery(item).replaceWith(data.ids[jQuery(item).data('redraw-id')]);
}});
jQuery('.woocs_price_code').removeClass('woocs_preloader_ajax');
//***
jQuery('.woocommerce-currency-switcher').val(data.current_currency);
//***}
});
Ok! From my side I can give you the code for redrawing prices:
var products_ids = {};
var products_currency = {};
jQuery.each(jQuery('.woocs_price_code'), function (index, item) {
products_ids[jQuery(item).data('redraw-id')] = jQuery(item).data('product-id');
if (jQuery(item).data('currency')) {
products_currency[jQuery(item).data('redraw-id')] = jQuery(item).data('currency');
}
});
//if no prices on the page - do nothing
if (Object.keys(products_ids).length === 0) {
woocs_sumbit_currency_changing = true;
return;
}
var data = {
action:"woocs_get_products_price_html",
products_ids: products_ids,
products_currency: products_currency,
current_currency: woocs_current_currency['name']
};
jQuery.post(woocs_ajaxurl, data, function (data) {
data = JSON.parse(data);
if (jQuery.isEmptyObject(data)) {
woocs_sumbit_currency_changing = true;
}
if (!jQuery.isEmptyObject(data)) {
jQuery('.woocs_price_info').remove();
jQuery('.woocs_price_approx.woocs_cart_item_price').remove();
jQuery.each(jQuery('.woocs_price_code'), function (index, item) {
if (data.ids[jQuery(item).data('redraw-id')] != undefined) {
jQuery(item).replaceWith(data.ids[jQuery(item).data('redraw-id')]);
}
});
jQuery('.woocs_price_code').removeClass('woocs_preloader_ajax');
//***
jQuery('.woocommerce-currency-switcher').val(data.current_currency);
//***
}
});
Quote from Libi on June 19, 2025, 10:20Thank you, but unfortunately, it did not work. I tried to edit the code with ChatGPT, but none of them worked. Would you be willing to look into it if I share login info with you? And if so, where can I share it privately?
That would be an amazing help.Or is there something else we could try?
Thank you, but unfortunately, it did not work. I tried to edit the code with ChatGPT, but none of them worked. Would you be willing to look into it if I share login info with you? And if so, where can I share it privately?
That would be an amazing help.
Or is there something else we could try?
Quote from Pablo Borysenco on June 19, 2025, 11:07Hello
In this case, you should hire a developer. Customization of third-party code is not included in support
Hello
In this case, you should hire a developer. Customization of third-party code is not included in support