• Apologies in advance, I know this topic has come up before (I read other posts here on Ajax but still have some questions).

    I’m working to improve the performance of a website I’m managing. During my investigation (using a copy of the site on my dev server) I noticed a lot of Ajax calls being made by Wishlist. If I deactivate the plugin they go away. If I turn on the “Enable Ajax loading” option in settings then the ajax calls are greatly reduced. This seems counter-intuitive to me–why are there many more Ajax calls if “Enable Ajax loading” is not active?

    In any case, I’m trying to reduce my page load times. Should I have “Enable Ajax loading” enabled? Should I add the PHP function that’s been mentioned in other threads to reduce/eliminate Ajax calls? What do you recommend strictly in terms of performance?

    Also, is there a good way to check how many customers are actually using wishlists?

    Here’s some screenshots to help:

    This is with “Enable Ajax loading” deactivated:

    And this is with “Enable Ajax loading” activated:

    The page I need help with: [log in to see the link]

Viewing 3 replies - 1 through 3 (of 3 total)
  • Hello there,
    thanks for contacting us and I hope you’re doing well!

    That’s weird. Have you performed exactly the same tests in both situations?

    The best way to reduce AJAX calls is to add the following code to the functions.php file of your active theme:

    add_filter( 'yith_wcwl_reload_on_found_variation', '__return_false' );

    Regarding knowing if your users are using wishlists, unfortunately, this is not possible. Only in the premium version, you can see from the plugin panel all the wish lists with their creation date, and the date on which each item has been added, so with that data you can know if they are being used or not.

    Let us know any news.

    Best regards.

    Thread Starter Megunticook

    (@megunticook)

    Yes, test is the same, just reloading the same page in Chrome with Developer Tools activated and comparing results. Way more ajax calls when the “Enable Ajax” is checked in plugin settings. Maybe they’re attempts at Ajax calls and failing somehow so being repeated?

    Thanks, I’ll add the function to my child theme on the test server and see what happens.

    I’ll consider an update if I can get this ajax issue resolved.

    Thread Starter Megunticook

    (@megunticook)

    I added the function you provided to my dev site, while testing I’m seeing a PHP error now coming from YITH Wishlist (verified because when I deactivate the plugin the error disappears).

    When I load the page, I get this error showing in Chrome developer tools:

    PHP Errors in Ajax Response: Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini.

    I’m not sure it’s a great idea to change max_input_vars to over 1000. Something seems wrong if a plugin is making a demand like that. Any idea what might be going on here?

    Here’s the full output from Chrome Dev tools:

    PHP Errors in Ajax Response
    query-monitor.js?ver=3.15.0:400 {key: '255d0f07fa07f36664047bf8eb27952e', type: 'warning', message: 'Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini.', file: 'Unknown', line: 0, …}component: "Unknown"file: "Unknown"key: "255d0f07fa07f36664047bf8eb27952e"line: 0message: "Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini."stack: Array(0)length: 0lastIndex: (…)lastItem: (…)[[Prototype]]: Array(0)at: ƒ at()concat: ƒ concat()constructor: ƒ Array()copyWithin: ƒ copyWithin()entries: ƒ entries()every: ƒ every()fill: ƒ fill()filter: ƒ filter()filterOut: ƒ (r)filterReject: ƒ (r)find: ƒ find()findIndex: ƒ findIndex()findLast: ƒ findLast()findLastIndex: ƒ findLastIndex()flat: ƒ flat()flatMap: ƒ flatMap()forEach: ƒ forEach()group: ƒ (r)groupBy: ƒ (r)groupByToMap: ƒ (r)groupToMap: ƒ (r)includes: ƒ includes()indexOf: ƒ indexOf()join: ƒ join()keys: ƒ keys()lastIndex: (…)lastIndexOf: ƒ lastIndexOf()lastItem: (…)length: 0map: ƒ map()pop: ƒ pop()push: ƒ (t)reduce: ƒ reduce()reduceRight: ƒ reduceRight()reverse: ƒ reverse()shift: ƒ shift()slice: ƒ slice()some: ƒ some()sort: ƒ sort()splice: ƒ splice()toLocaleString: ƒ toLocaleString()toReversed: ƒ toReversed()toSorted: ƒ toSorted()toSpliced: ƒ toSpliced()toString: ƒ toString()uniqueBy: ƒ (t)unshift: ƒ unshift()values: ƒ values()with: ƒ with()Symbol(Symbol.iterator): ƒ values()Symbol(Symbol.unscopables): {at: true, copyWithin: true, entries: true, fill: true, find: true, …}get lastIndex: ƒ ()get lastItem: ƒ ()set lastItem: ƒ (t)[[Prototype]]: Objecttype: "warning"[[Prototype]]: Objectconstructor: ƒ Object()hasOwnProperty: ƒ hasOwnProperty()isPrototypeOf: ƒ isPrototypeOf()propertyIsEnumerable: ƒ propertyIsEnumerable()toLocaleString: ƒ toLocaleString()toString: ƒ toString()valueOf: ƒ valueOf()defineGetter: ƒ defineGetter()defineSetter: ƒ defineSetter()lookupGetter: ƒ lookupGetter()lookupSetter: ƒ lookupSetter()proto: (…)get proto: ƒ proto()set proto: ƒ proto()
    (anonymous) @ query-monitor.js?ver=3.15.0:400
    dispatch @ jquery.min.js?ver=3.7.1:2
    v.handle @ jquery.min.js?ver=3.7.1:2
    trigger @ jquery.min.js?ver=3.7.1:2
    l @ jquery.min.js?ver=3.7.1:2
    (anonymous) @ jquery.min.js?ver=3.7.1:2
    load (async)
    send @ jquery.min.js?ver=3.7.1:2
    ajax @ jquery.min.js?ver=3.7.1:2
    (anonymous) @ jquery-migrate.min.js?ver=3.4.1:2
    e. @ jquery-migrate.min.js?ver=3.4.1:2
    P @ jquery.yith-wcwl.min.js?ver=3.27.0:1
    (anonymous) @ jquery.yith-wcwl.min.js?ver=3.27.0:1
    dispatch @ jquery.min.js?ver=3.7.1:2
    v.handle @ jquery.min.js?ver=3.7.1:2
    trigger @ jquery.min.js?ver=3.7.1:2
    (anonymous) @ jquery.min.js?ver=3.7.1:2
    each @ jquery.min.js?ver=3.7.1:2
    each @ jquery.min.js?ver=3.7.1:2
    trigger @ jquery.min.js?ver=3.7.1:2
    (anonymous) @ jquery.yith-wcwl.min.js?ver=3.27.0:1
    e @ jquery.min.js?ver=3.7.1:2
    t @ jquery.min.js?ver=3.7.1:2
    setTimeout (async)
    (anonymous) @ jquery.min.js?ver=3.7.1:2
    c @ jquery.min.js?ver=3.7.1:2
    fireWith @ jquery.min.js?ver=3.7.1:2
    fire @ jquery.min.js?ver=3.7.1:2
    c @ jquery.min.js?ver=3.7.1:2
    fireWith @ jquery.min.js?ver=3.7.1:2
    ready @ jquery.min.js?ver=3.7.1:2
    P @ jquery.min.js?ver=3.7.1:2
Viewing 3 replies - 1 through 3 (of 3 total)

The topic ‘Ajax calls’ is closed to new replies.