Viewing 14 replies - 1 through 14 (of 14 total)
  • Plugin Author WPTreasure

    (@wptreasure)

    Hi carassiuspro,

    Yes, with the help of customization you can set image slider to random.
    Please let us know.

    Thanks,
    WPTreasure

    Thread Starter carassiuspro

    (@carassiuspro)

    loving your plugin which I am playing with here
    https://simpletheme.carassiusproductions.com.au/

    Not sure how to set image slider to randomise but any help would be appreciated

    Plugin Author WPTreasure

    (@wptreasure)

    Hi carassiuspro,

    To know more about this , you can contact us by our site contact form:
    https://wptreasure.com/contact/

    Thanks,
    WPTreasure

    Thread Starter carassiuspro

    (@carassiuspro)

    Email sent.

    I have created this lot of code for the admin panel

    in rwbs-settings.php

    <tr>
    <td><?php _e("Randomise",'rfwbs'); ?> :</td>
    <td>
    <select id="rfwbs_randomise" name="rfwbs_settings[rfwbs_randomise]">
    <option value="1" <?php selected('1', $rfwbs_getOpts['rfwbs_randomise']); ?>><?php _e('Enable','rfwbs'); ?></option>
    <option value="0" <?php selected('0', $rfwbs_getOpts['rfwbs_randomise']); ?>><?php _e('Disable','rfwbs'); ?></option>
    </select>
    </td>
    </tr>

    and in rfwbsFontClass.php
    $rfwbs_randomise = $options["rfwbs_randomise"];

    This has given me the option to create a simple Enable/Disable dropdown in the admin panel under the Overlay setting, now just need to work out where (and what) code I need to action this option if enabled.

    Jon

    Thread Starter carassiuspro

    (@carassiuspro)

    Hi Jon,

    Thank you for contacting us.
    Unfortunately, there is no option is available in plugin current version to make slider slides randomize.
    For this, we’ll have to write proper code..

    Regards,
    WPTreasure

    Thanks, so that means you cannot (or will not) help?

    Plugin Author WPTreasure

    (@wptreasure)

    Hi carassiuspro,

    If you could wait, we are going to release slider update with random slides option asap.

    Regards,
    WPTreasure

    You’ve already added the randomise backend option, so to get it to show a different image order each page load, do this.

    In responsive-full-width-background-slider/inc/rfwbsFrontClass.php

    Replace:
    $rfwbs_imgsArr = $options[“rfwbs_img”];

    With:

    $rfwbs_randomise = $options[“rfwbs_randomise”];
    if ($fwbs_randomise == 1)
    $rfwbs_imgsArr = shuffle($options[“rfwbs_img”]);
    else
    $rfwbs_imgsArr = $options[“rfwbs_img”];

    Thread Starter carassiuspro

    (@carassiuspro)

    If anyone else wants this to work, this code was shared with me (thanks Michael Mann)

    In rfwbsFontClass.php change line 18

    From
    $rfwbs_imgsArr = $options["rfwbs_img"];
    To
    $rfwbs_imgsArr = shuffle($options["rfwbs_img"]);

    Or use your code above and mine (just above as well) and that will give you to choose if it shows as random or not ??

    Thread Starter carassiuspro

    (@carassiuspro)

    You’ve already added the randomise backend option, so to get it to show a different image order each page load, do this.

    In responsive-full-width-background-slider/inc/rfwbsFrontClass.php

    Replace:
    $rfwbs_imgsArr = $options[“rfwbs_img”];

    With:

    $rfwbs_randomise = $options[“rfwbs_randomise”];
    if ($fwbs_randomise == 1)
    $rfwbs_imgsArr = shuffle($options[“rfwbs_img”]);
    else
    $rfwbs_imgsArr = $options[“rfwbs_img”];

    I tried your code and it did not want to work for me?
    I pasted it into lines 18-22 on rfwbsFrontClass.php, perhaps I am doing something wrong?

    Your code makes sense to me as what it does so I must be placing it somewhere wrong?

    <?php
    class rfwbsFront
    {
    	// DISPLAY RFWBSLIDER
    	function rfwbs_display()
    	{
    		$options          = get_option('rfwbs_settings');
    
    		$rfwbs_interval   = $options["rfwbs_sduration"];
    		$rfwbs_tspeed     = $options["rfwbs_tspeed"];
    		$rfwbs_navigation = $options["rfwbs_navigation"];
    		$rfwbs_toggle     = $options["rfwbs_toggle"];
    		$rfwbs_bullet     = $options["rfwbs_bullet"];
    		$rfwbs_controlpos = $options["rfwbs_controlpos"];
    		$rfwbs_play       = $options["rfwbs_play"];
    		$rfwbs_animation  = $options["rfwbs_animation"];
    		$rfwbs_overlay    = $options["rfwbs_overlay"];
    		$rfwbs_randomise = $options["rfwbs_randomise"];
    		if ($fwbs_randomise == 1)
    		$rfwbs_imgsArr = shuffle($options["rfwbs_img"]);
    		else
    		$rfwbs_imgsArr = $options["rfwbs_img"]; 
    
    		if($rfwbs_play=='true'){$rfwbs_play = $rfwbs_interval;}
    		if($rfwbs_tspeed=="" || $rfwbs_tspeed=="0"){$rfwbs_tspeed = 700;}
    		$rfwbs_imgsArr = $options["rfwbs_img"];
    		$rfwbs_errors = array_filter($rfwbs_imgsArr);
    		$rfwbs_imgsCount = "";
    
    		if(!empty($rfwbs_errors)){
    		?>
    		<style type="text/css">
    			.rfwbs_navi{<?php if(empty($rfwbs_controlpos)){?>right:0;<?php }else{ ?>left:0<?php } ?>}
    		</style>
    
    		<div id="rfwbs_slider" class="rfwbs_slider">
    			<div class="rfwbs_container">
    			  <?php
    				if(!empty($rfwbs_imgsArr)){
    					foreach($rfwbs_imgsArr as $rfwbs_img){
    						if(empty($rfwbs_img)){
    							continue;
    						}
    						?><img class="rfwbs_bg" src="<?php echo $rfwbs_img; ?>" alt="rfwbs-slide" /><?php
    						$rfwbs_imgsCount++;
    					}
    				}
    				if($rfwbs_imgsCount === '1'){$rfwbs_play = 'false';$rfwbs_navigation=0;}
    			  ?>
    			</div>
    	        <nav class="rfwbs_navigation" style="display:none">
    				<a href="#" class="rfwbs_next"><?php _e('Next','rfwbs'); ?></a>
    				<a href="#" class="rfwbs_prev"><?php _e('Previous','rfwbs'); ?></a>
    			</nav>
    			<?php
    			if(!empty($rfwbs_overlay)){
    				?>
    					<div class="rfwbsoverlay" style="background:url('<?php echo plugins_url( '/images/overlay/overlay.png' , __FILE__ )  ?>')"></div>
    				<?php
    			}
    			?>
    		</div> 
    
    		<?php if( (isset($rfwbs_toggle) && $rfwbs_toggle) || (isset($rfwbs_navigation) && $rfwbs_navigation) ) { ?>
    			<div class="rfwbs_navi">
    				<?php if(isset($rfwbs_toggle) && $rfwbs_toggle) { ?>
    				<a href="javascript:void(0)" id="rfwbs_toggle" title="toggle"><img src="<?php echo plugins_url( '/images/slider-fullscreen.png', __FILE__);?>" /></a>
    				<?php } ?>
    				<?php
    				if(isset($rfwbs_navigation) && $rfwbs_navigation && $rfwbs_imgsCount > 1){
    				?>
    					<a href="javascript:void(0)" id="rfwbs_prev_slide" title="Previous"><img src="<?php echo plugins_url( '/images/left.png', __FILE__);?>" /></a>
    					<a href="javascript:void(0)" id="rfwbs_next_slide" title="Next"><img src="<?php echo plugins_url( '/images/right.png', __FILE__);?>" /></a>
    				<?php
    				}
    				?>
    			</div>
    		<?php } ?>
    
    		<script type="text/javascript">
    			jQuery(function() {
    				jQuery('#rfwbs_slider').superslides({
    					animation: '<?php echo $rfwbs_animation; ?>' ,
    					animation_speed: <?php echo $rfwbs_tspeed; ?>,
    					play: <?php echo $rfwbs_play; ?>,
    					slide_speed: 'normal',
    					slide_easing: 'linear',
    					pagination: <?php echo $rfwbs_bullet; ?>,
    				});
    			});
    
    			jQuery(document).ready(function(){
    				jQuery('#rfwbs_next_slide').click(function(){
    					jQuery('.rfwbs_navigation .rfwbs_next').trigger('click');
    				});
    				jQuery('#rfwbs_prev_slide').click(function(){
    					jQuery('.rfwbs_navigation .rfwbs_prev').trigger('click');
    				});
    				jQuery('#rfwbs_toggle').click(function(){
    					var zindex = jQuery('.rfwbs_slider').css('z-index');
    					if(zindex < 0){
    						jQuery('.rfwbs_slider').css('z-index','999999999');
    					}else{
    						jQuery('.rfwbs_slider').css('z-index','-1');
    					}
    				});
    				jQuery('body').addClass('rfwbs-active');
    			});
    		</script>
    
    		<?php } ?>
    	<?php
    	}
    
    	function rfwbs_is_customPostTtype( $post = NULL ){
    		$all_custom_post_types = get_post_types( array ( '_builtin' => FALSE ) );
    
    		// THERE ARE NO CUSTOM POST TYPES
    		if ( empty ( $all_custom_post_types ) )
    		return FALSE;
    
    		$custom_types = array_keys( $all_custom_post_types );
    		$current_post_type = get_post_type( $post );
    
    		// COULD NOT DETECT CURRENT TYPE
    		if ( ! $current_post_type )
    		return FALSE;
    		return in_array( $current_post_type, $custom_types );
    	}
    }
    ?>
    Thread Starter carassiuspro

    (@carassiuspro)

    ***SOLVED***

    Open rfwbs-settings.php with your editor

    and copy and paste this code to give you the option of randomise or not in the admin panel

    [ 330+ lines of code moderated, that’s just way too much. For that many lines of code please use pastebin.com instead. ]

    For anyone interested, the fix above is almost correct. It seems the 1 or 0 (Enable/Disable) is stored as a string. So, the following will let the images be randomized.

    In responsive-full-width-background-slider/inc/rfwbsFrontClass.php

    Replace:
    $rfwbs_imgsArr = $options["rfwbs_img"];

    With:

    $rfwbs_randomise = $options["rfwbs_randomise"];
    if ($fwbs_randomise == "1") /* 1 = Enabled */
    $rfwbs_imgsArr = shuffle($options["rfwbs_img"]);
    else
    $rfwbs_imgsArr = $options["rfwbs_img"];

    And to get the random option on the settings page, add this.

    In responsive-full-width-background-slider/inc/rfwbs-settings.php

    Locate:

    <tr>
    								<td><?php _e("Overlay",'rfwbs'); ?> :</td>
    								<td>
    									<select id="rfwbs_overlay" name="rfwbs_settings[rfwbs_overlay]">
    										<option value="1" <?php selected('1', $rfwbs_getOpts['rfwbs_overlay']); ?>><?php _e('Enable','rfwbs'); ?></option>
    										<option value="0" <?php selected('0', $rfwbs_getOpts['rfwbs_overlay']); ?>><?php _e('Disable','rfwbs'); ?></option>
    									</select>
    								</td>
    							</tr>

    Right below that add:

    <tr>
    								<td><?php _e("Randomise",'rfwbs'); ?> :</td>
    								<td>
    									<select id="rfwbs_randomise" name="rfwbs_settings[rfwbs_randomise]">
    										<option value="1" <?php selected('1', $rfwbs_getOpts['rfwbs_randomise']); ?>><?php _e('Enable','rfwbs'); ?></option>
    										<option value="0" <?php selected('0', $rfwbs_getOpts['rfwbs_randomise']); ?>><?php _e('Disable','rfwbs'); ?></option>
    									</select>
    								</td>
    							</tr>

    That will give you an enable/disable option on the settings page, right below the overlay option.

    Glad to see this option made its way into the latest version. No need to hack things anymore ??

    Thread Starter carassiuspro

    (@carassiuspro)

    Thanks for the update, great work developers!

Viewing 14 replies - 1 through 14 (of 14 total)
  • The topic ‘Randomise Slider’ is closed to new replies.