" . __('Ultra (Flex)', 'ultra') . "";
return $themes;
}
add_filter( 'metaslider_get_available_themes', 'ultra_metaslider_themes', 5, 2 );
// Change the Flex name space if the Ultra theme is selected.
function ultra_metaslider_flex_params( $options, $slider_id, $settings ) {
if ( ! empty( $settings['theme'] ) && $settings['theme'] == 'ultra' ) {
$options['namespace'] = '"flex-ultra-"';
}
return $options;
}
add_filter( 'metaslider_flex_slider_parameters', 'ultra_metaslider_flex_params', 10, 3 );
/**
* Change the HTML for the home page slider.
*
* @param $html
* @param $slide
* @param $settings
*
* @return string The new HTML
*/
function ultra_metaslider_filter_flex_slide( $html, $slide, $settings ) {
if ( is_admin() && ! empty( $GLOBALS['ultra_is_main_slider'] ) ) return $html;
if ( ! empty( $slide['caption'] ) && function_exists( 'filter_var' ) && filter_var( $slide['caption'], FILTER_VALIDATE_URL) !== false ) {
$settings['height'] = round( $settings['height'] / 1200 * $settings['width'] );
$settings['width'] = 1200;
$html = sprintf( "", $slide['thumb'], intval( $settings['width'] ), intval( $settings['height'] ) );
if ( strlen( $slide['url'] ) ) {
$html = '' . $html . '';
}
$caption = '
';
$html = $caption . $html;
$thumb = isset( $slide['data-thumb'] ) && strlen( $slide['data-thumb'] ) ? " data-thumb=\"{$slide['data-thumb']}\"" : "";
$html = '' . $html . '';
}
return $html;
}
add_filter( 'metaslider_image_flex_slider_markup', 'ultra_metaslider_filter_flex_slide', 10, 3 );
/**
* Filter Meta Slider settings when the Ultra (Flex) theme is selected.
*
* @param $settings
*/
function ultra_metaslider_ensure_height( $settings ) {
if ( ! empty( $settings['theme'] ) && $settings['theme'] == 'ultra' ) {
$settings['width'] = ultra_get_site_width();
}
return $settings;
}
add_filter( 'sanitize_post_meta_ml-slider_settings', 'ultra_metaslider_ensure_height' );
endif; // endif MetaSlider active.
function ultra_slider_page_setting_metabox() {
add_meta_box( 'ultra-slider-page-slider', __( 'Page Slider', 'ultra' ), 'ultra_slider_page_setting_metabox_render', 'page', 'side' );
}
add_action( 'add_meta_boxes', 'ultra_slider_page_setting_metabox' );
function ultra_slider_page_setting_metabox_render( $post ) {
// Key refers to MetaSlider, but this could be Smart Slider 3 too.
$slider = get_post_meta( $post->ID, 'ultra_metaslider_slider', true );
$is_home = $post->ID == get_option( 'page_on_front' );
// If we're on the home page and the user hasn't explicitly set something here use the 'home_slider' theme setting.
if ( $is_home && empty( $slider ) ) {
$slider = siteorigin_setting( 'home_slider' );
}
// Default stretch setting to theme setting.
$slider_stretch = siteorigin_setting( 'home_slider_stretch' );
// $slider_overlap = siteorigin_setting( 'home_header_overlaps' );
if ( metadata_exists( 'post', $post->ID, 'ultra_metaslider_slider_stretch' ) ) {
$slider_stretch = get_post_meta( $post->ID, 'ultra_metaslider_slider_stretch', true );
}
if ( metadata_exists( 'post', $post->ID, 'ultra_metaslider_slider_overlap' ) ) {
$slider_overlap = get_post_meta( $post->ID, 'ultra_metaslider_slider_overlap', true );
}
$slider_can_stretch = preg_match( '/^(meta:)/', $slider );
$slider_can_overlap = preg_match( '/^(meta|smart:)/', $slider );
wp_enqueue_script(
'siteorigin-ultra-sliders',
get_template_directory_uri() . '/inc/sliders/js/sliders' . SITEORIGIN_THEME_JS_PREFIX . '.js',
array( 'jquery' ),
SITEORIGIN_THEME_VERSION
);
// Include the demo slider in the options if it's the home page.
$options = ultra_sliders_get_options( $is_home );
?>
/>
/>