- This topic has 5 replies, 2 voices, and was last updated 7 years, 1 month ago by Pratik.
-
AuthorPosts
-
March 19, 2017 at 6:23 am #112285webtraderParticipant
Is it possible to randomize the slides shown in the featured slider? On our home page, I do not always want the slides to be shown starting with the first slide. Every time someone visits the home page, I would like the order of slides to be randomized, or at least start on a random slides.
If there is no way to set the slider to randomize via the GUI, is there an easy change somewhere in the code where I can pull the slides and perform a PHP shuffle() on the array of slides to be shown?
Thank you.
March 19, 2017 at 7:54 pm #112319PratikKeymasterHi @webtrader,
It is not as easy as using PHP shuffle. There needs to be some customization to the theme and cannot be achieved by GUI (as you have mentioned).
For that, first create a child theme via tutorial here: http://catchthemes.com/blog/create-child-theme-wordpress/. After that, I will provide you with the codes. Also, please post in your site url.
Regards,
PratikMarch 19, 2017 at 8:02 pm #112322webtraderParticipantPratik,
I have created child theme. Our website is still in development and I would prefer not to post URL on forum. Is it possible to message that to you privately if it is required?
Thanks.
March 20, 2017 at 12:32 am #112362PratikKeymasterHi @webtrader,
Add following code in your child theme’s functions.php file.
/** * Modify parent slider option to randomize the slider */ function helena_featured_slider() { //helena_flush_transients(); global $wp_query; $enable_slider = apply_filters( 'helena_get_option', 'featured_slider_option' ); // Get Page ID outside Loop $page_id = $wp_query->get_queried_object_id(); // Front page displays in Reading Settings $page_for_posts = get_option( 'page_for_posts' ); if ( 'entire-site' == $enable_slider || ( ( is_front_page() || ( is_home() && $page_for_posts != $page_id ) ) && 'homepage' == $enable_slider ) ) { if ( ( !$output = get_transient( 'helena_featured_slider' ) ) ) { echo '<!-- refreshing cache -->'; $output = ' <section id="feature-slider"> <div class="wrapper"> <div class="cycle-slideshow" data-cycle-log="false" data-cycle-pause-on-hover="true" data-cycle-swipe="true" data-cycle-random="true" data-cycle-fx="' . esc_attr( apply_filters( 'helena_get_option', 'featured_slider_transition_effect' ) ) . '" data-cycle-speed="' . esc_attr( apply_filters( 'helena_get_option', 'featured_slider_transition_length' ) ) * 1000 . '" data-cycle-timeout="' . esc_attr( apply_filters( 'helena_get_option', 'featured_slider_transition_delay' ) ) * 1000 . '" data-cycle-loader="' . esc_attr( apply_filters( 'helena_get_option', 'featured_slider_image_loader' ) ) . '" data-cycle-slides="> article" > <!-- prev/next links --> <div class="cycle-prev"></div> <div class="cycle-next"></div> <!-- empty element for pager links --> <div class="cycle-pager"></div>'; $select_slider = apply_filters( 'helena_get_option', 'featured_slider_type' ); // Select Slider if ( 'demo-featured-slider' == $select_slider ) { $output .= helena_demo_slider(); } else if ( 'featured-post-slider' == $select_slider || 'featured-page-slider' == $select_slider || 'featured-category-slider' == $select_slider ) { $output .= helena_post_page_category_slider(); } elseif ( 'featured-image-slider' == $select_slider ) { $output .= helena_image_slider(); } $output .= ' </div><!-- .cycle-slideshow --> </div><!-- .wrapper --> </section><!-- #feature-slider -->'; set_transient( 'helena_featured_slider', $output, 86940 ); } echo $output; } }
If this does not work, then I will need your site url. Let me know and I will email you to get the details for site url.
Regards,
PratikMarch 20, 2017 at 11:30 am #112420webtraderParticipantHi @Pratik ,
I appreciate the code. However it does not work for us. Would you please let me know how I can provide you with the URL privately?
Thank you.
March 21, 2017 at 1:12 am #112459PratikKeymasterHi @webtrader,
Please check your email. I have sent you details there.
Regards,
Pratik -
AuthorPosts
- The topic ‘Randomize slides shown by Featured Slider’ is closed to new replies.