options = $options; $this->init(); } public function init() { add_shortcode('adhub_ad', array($this, 'ad_shortcode')); $this->register_specific_shortcodes(); } private function register_specific_shortcodes() { // Desktop add_shortcode('adhub_970x250', array($this, 'shortcode_970x250')); add_shortcode('adhub_300x600', array($this, 'shortcode_300x600')); add_shortcode('adhub_300x250', array($this, 'shortcode_300x250')); add_shortcode('adhub_300x250_2', array($this, 'shortcode_300x250_2')); add_shortcode('adhub_728x90', array($this, 'shortcode_728x90')); add_shortcode('adhub_sticky_video', array($this, 'shortcode_sticky_video')); add_shortcode('adhub_skin', array($this, 'shortcode_skin')); add_shortcode('adhub_native_single', array($this, 'shortcode_native_single')); add_shortcode('adhub_native_extended', array($this, 'shortcode_native_extended')); // Mobile add_shortcode('adhub_320x100', array($this, 'shortcode_320x100')); add_shortcode('adhub_320x50', array($this, 'shortcode_320x50')); } public function ad_shortcode($atts) { $atts = shortcode_atts(array( 'position' => '', 'class' => '', ), $atts, 'adhub_ad'); if (empty($atts['position']) || !$this->options->should_display_ad($atts['position'])) { return ''; } return $this->get_ad_html($atts['position'], $atts['class']); } private function get_ad_html($position, $additional_class = '') { if (!$this->options->should_display_ads()) { return ''; } $tag = $this->options->get_ad_tag($position); if (empty($tag)) { return ''; } $classes = array('adhub-ad', 'adhub-' . $position); if (!empty($additional_class)) { $classes[] = sanitize_html_class($additional_class); } // Consenti i tag