Dear Maeve,
Let me lighten up your burden over this. I found the conflicting lines of code and here is the detail:
Within the function logo_slider() in the plugin file logo-slider.php, please add this piece of code after line 571:
else{
$data_chunks = array_chunk($wp_logo_slider_images, $num_img);
}
So the complete if-else ladder looks like:
if( $iPod || $iPhone ){
$data_chunks = array_chunk($wp_logo_slider_images, $img_num1);
}else if($iPad){
$data_chunks = array_chunk($wp_logo_slider_images, $img_num1);
}else if($Android){
$data_chunks = array_chunk($wp_logo_slider_images, $img_num1);
}else if($webOS){
$data_chunks = array_chunk($wp_logo_slider_images, $img_num1);
}else if($mobile){
$data_chunks = array_chunk($wp_logo_slider_images, $img_num1);
}else if($BlackBerry){
$data_chunks = array_chunk($wp_logo_slider_images, $img_num1);
}else if($RimTablet){
$data_chunks = array_chunk($wp_logo_slider_images, $img_num4);
}else if(($msie) || ($firefox) || ($safari) || ($chrome) || ($IE11)){
$data_chunks = array_chunk($wp_logo_slider_images, $num_img);
}else{
$data_chunks = array_chunk($wp_logo_slider_images, $num_img);
}
You skipped the final else{}
statement due to which if the User Agent does not matches the one from list it don’t show the logo images while the page loads. Now how it was conflicting with W3TC specifically?
Answer is: When any Search-Bot (or the Cron-Job which runs in background as a setting in W3TC to pre-load the pages’ cache) tries to visit any page which is not yet cached on disk, the logo-slider plugin skips showing logo images to them and eventually the cache file generated for the page during this operation has no logo-slider showing up on the page.
I hope to see amendment in your next upcoming version of this plugin. I also have one more small thing to put into your consideration for the next version of this plugin and will be happy to discuss it with you. Feel free to contact me via contact email given on my website/blog (you can find it by visiting my profile)
Cheers!