Hi Darren,
I think I know whats wrong here.
ajax-load-more.php, line 246
You register the ALM script with a jQuery 1.1 dependency.
wp_register_script( 'ajax-load-more', plugins_url( '/core/js/ajax-load-more.min.js', __FILE__ ), array('jquery'), '1.1', true );
However there are developers like me who use Foundation or any other piece of software which need a different jQuery version than 1.1. So people like me deregister the default jQuery version which gets registered by WordPress as default and register our own version.
This setup prevents your script from getting registered.
If I change your code in ajax-load-more.php, line 246 to:
wp_register_script( 'ajax-load-more', plugins_url( '/core/js/ajax-load-more.min.js', __FILE__ ), '', '', true );
The JavaScript gets loaded and everything works.
But changing Plugin files is not the way to go, cause I’ll loose this changes at the next update. Also deregistering your script and register it by myself is not working, cause alm_localize get’s not set as you do it in ajax-load-more.php line 264.
Of course I could just copy your whole alm_enqueue_scripts function and register the script with the function, but also thats not clean.
Suggested Solution:
I suggest to provide an option for devs in the plugin settings to choose if the JavaScript should be loaded depending on jQuery or not. Should be not more work than 30 minutes or so.
Actual i fixed this by changing your plugin file, so I can use your plugin but that’s only an hotfix and not the way to go.
Cheers
Tobias