*/ class Andreadb_Coin_Slider_Public { /** * The ID of this plugin. * * @since 1.0.0 * @access private * @var string $plugin_name The ID of this plugin. */ private $plugin_name; /** * The version of this plugin. * * @since 1.0.0 * @access private * @var string $version The current version of this plugin. */ private $version; /** * Initialize the class and set its properties. * * @since 1.0.0 * @param string $plugin_name The name of the plugin. * @param string $version The version of this plugin. */ public function __construct($plugin_name, $version) { $this->plugin_name = $plugin_name; $this->version = $version; } /** * Register the stylesheets for the public-facing side of the site. * * @since 1.0.0 */ public function dba_coin_slider_enqueue_styles() { /** * This function is provided for demonstration purposes only. * * An instance of this class should be passed to the run() function * defined in Andreadb_Coin_Slider_Loader as all of the hooks are defined * in that particular class. * * The Andreadb_Coin_Slider_Loader will then create the relationship * between the defined hooks and the functions defined in this * class. */ wp_enqueue_style($this->plugin_name, plugin_dir_url(__FILE__) . 'css/coin-slider-styles.css', array(), $this->version, 'all'); } /** * Register the JavaScript for the public-facing side of the site. * * @since 1.0.0 */ public function dba_coin_slider_enqueue_scripts() { /** * This function is provided for demonstration purposes only. * * An instance of this class should be passed to the run() function * defined in Andreadb_Coin_Slider_Loader as all of the hooks are defined * in that particular class. * * The Andreadb_Coin_Slider_Loader will then create the relationship * between the defined hooks and the functions defined in this * class. */ wp_enqueue_script($this->plugin_name, plugin_dir_url(__FILE__) . 'js/coin-slider.min.js', array('jquery'), $this->version, false); } /** * Register the andreadb_coin_slider shortcode. * * @since 1.0.0 * @access public * @uses add_shortcode() */ public function register_dba_coin_slider_shortcodes() { add_shortcode('andreadb_coin_slider', array($this, 'dba_coin_slider_shortcode')); } /** * Displays shortcode on pages * * @since 1.0.0 * @param array $atts Array of shortcode parameters * @return string Slider HTML */ public function dba_coin_slider_shortcode($atts) { extract(shortcode_atts( array('id' => 0), $atts, 'andreadb_coin_slider' )); if (!$id) { return false; } $slider_slides = get_post_meta($id, 'dba_coin_slider_slides', true); $slider_settings = get_post_meta($id, 'dba_coin_slider_settings', true); $html = ''; $html .= '
'; if (is_array($slider_slides) and count($slider_slides) > 0) { foreach ($slider_slides as $slide) { $html .= '
'; if ($slide['link']) { $slide_url = $slide['link']; if (false === strpos($slide['link'], '://')) { $slide_url = 'http://' . $slide['link']; } $title = ($slide['title'] ? ' title="' . $slide['title'] . '"' : ''); $new_window = ($slide['new_window'] == 1 ? ' target="_blank"' : ''); $html .= ''; } else { $html .= ''; } $image_url = wp_get_attachment_image_src($slide['id'], 'full', true); $image_alt = ($slide['alt'] ? ' alt="' . $slide['alt'] . '"' : ''); $html .= ''; if ($slide['description']) { $html .= '' . $slide['description'] . ''; } $html .= ''; $html .= '
'; } } $html .= ''; $html .= '
'; $html .= ''; return $html; } }