public function widget($args, $instance) { $this->_options = $this->getOptions($instance); $html = HTML::make(); $this->onWidget((array) $args, $html); if (!$html->tag && $html->count() == 0) { return; } $html = \Drone\apply_filters('widget_' . str_replace('-', '_', $this->_id) . '_widget', $html, $this, $args); if (isset(self::$_on_html[$this->_id]) && is_callable(self::$_on_html[$this->_id])) { _deprecated_function(__METHOD__ . '::$_on_html', '5.0', 'drone_widget_' . str_replace('-', '_', $this->_id) . '_widget filter'); call_user_func_array(self::$_on_html[$this->_id], array($this, &$html)); } $output = HTML::make()->add($args['before_widget']); if ($title = $this->wo('title')) { $output->add($args['before_title'], \apply_filters('widget_title', $title, $instance, $this->id_base), $args['after_title']); } $output->add($html, $args['after_widget']); $output = \Drone\apply_filters('widget_' . str_replace('-', '_', $this->_id) . '_output', $output, $this, $args); if (isset(self::$_on_output_html[$this->_id]) && is_callable(self::$_on_output_html[$this->_id])) { _deprecated_function(__METHOD__ . '::$_on_html', '5.0', 'drone_widget_' . str_replace('-', '_', $this->_id) . '_output filter'); call_user_func_array(self::$_on_output_html[$this->_id], array($this, &$output)); } echo $output->html(); }
/** * Meta * * @since 1.6 * * @param string $position */ public static function meta($position = 'after') { if (is_search()) { return; } if ($position == 'before' && (is_single() || get_post_type() != 'post')) { return; } if ($position == 'before') { $items = Everything::to_('post/meta/before/items'); } else { $items = Everything::to_(array(sprintf('%s/meta/%s/items', get_post_type(), is_singular() ? 'single' : 'list'), sprintf('%s/meta/items', get_post_type()), 'page/meta/items')); } if (!$items->value || !apply_filters('everything_meta_display', (bool) Everything::po('layout/page/meta/meta', '__hidden', $items->isVisible()), $position)) { return; } $html = is_singular() ? \Drone\HTML::section()->class('section') : \Drone\HTML::make(); $ul = $html->addNew('ul')->class('meta alt'); foreach ((array) $items->value as $item) { switch ($item) { case 'date_time': $ul->add(Everything::getPostMetaFormat('<li><a href="%date_month_link%" title="%s"><i class="icon-clock"></i>%s</a></li>', sprintf(__('View all posts from %s', 'everything'), get_the_date('F')), sprintf(__('%1$s at %2$s', 'everything'), Everything::getPostMeta('date'), Everything::getPostMeta('everything')))); break; case 'date': $ul->add(Everything::getPostMetaFormat('<li><a href="%date_month_link%" title="%s"><i class="icon-clock"></i>%date%</a></li>', sprintf(__('View all posts from %s', 'everything'), get_the_date('F')))); break; case 'mod_date': $ul->add(Everything::getPostMetaFormat('<li><a href="%link%" title="%title_esc%"><i class="icon-clock"></i>%date_modified%</a></li>')); break; case 'time_diff': $ul->add(Everything::getPostMetaFormat('<li><a href="%link%" title="%title_esc%"><i class="icon-clock"></i>%time_diff%</a></li>')); break; case 'comments': if (Everything::isPluginActive('disqus')) { $ul->add(Everything::getPostMetaFormat('<li><i class="icon-comment"></i><a href="%comments_link%">%comments_number%</a></li>')); } else { $ul->add(Everything::getPostMetaFormat('<li><a href="%comments_link%" title="%comments_number_esc%"><i class="icon-comment"></i>%comments_number%</a></li>')); } break; case 'author': $ul->add(Everything::getPostMetaFormat('<li><a href="%author_link%" title="%author_name_esc%"><i class="icon-user"></i>%author_name%</a></li>')); break; case 'categories': if (get_post_type() == 'portfolio') { $ul->add(get_the_term_list(get_the_ID(), 'portfolio-category', '<li><i class="icon-list"></i>', ', ', '</li>')); } else { $ul->add(Everything::getPostMetaFormat('[%category_list%]<li><i class="icon-list"></i>%category_list%</li>[/%category_list%]')); } break; case 'tags': if (get_post_type() == 'portfolio') { $ul->add(get_the_term_list(get_the_ID(), 'portfolio-tag', '<li><i class="icon-tag"></i>', ', ', '</li>')); } else { $ul->add(Everything::getPostMetaFormat('[%tags_list%]<li><i class="icon-tag"></i>%tags_list%</li>[/%tags_list%]')); } break; case 'permalink': $ul->add(Everything::getPostMetaFormat('<li><a href="%link%" title="%title_esc%"><i class="icon-link"></i>%s</a></li>', __('Permalink', 'everything'))); break; } } echo $html->html(); }
protected function getBricks($query) { // HTML $html = HTML::div()->class('bricks')->data('bricks-columns', $this->so('columns'))->data('bricks-filter', Func::boolToString($this->so('filter'))); while (have_posts()) { the_post(); $GLOBALS['more'] = 0; $brick = $html->addNew('div')->add(\Drone\Func::functionGetOutputBuffer('get_template_part', 'parts/post')); if ($this->so('filter')) { $terms = \Drone\Func::wpPostTermsList(get_the_ID(), $this->so('filter')); if (is_category() && ($term_id = array_search(single_cat_title('', false), $terms)) !== false) { unset($terms[$term_id]); } $brick->data('bricks-terms', json_encode(array_values($terms))); } } wp_reset_query(); // Paginate links if ($this->so('pagination') && ($pagination = \Everything::getPaginateLinks('blog', $query))) { $html = HTML::make()->add($html, $pagination); } return $html; }
protected function _html() { $input = HTML::makeInput('number', $this->input_name, $this->value)->addClass($this->getCSSClass(__CLASS__), 'code')->title($this->default ? __('Default', $this->domain) . ': ' . $this->default . $this->unit : null); if (!$this->float) { $input->step = $this->step; if (is_numeric($this->min)) { $input->min = $this->min; } if (is_numeric($this->max)) { $input->max = $this->max; } if (is_numeric($this->min) && is_numeric($this->max)) { $input->maxlength = max(strlen($this->min), strlen($this->max)); } } if ($this->unit) { $input = HTML::make()->add($input, ' ', HTML::span()->add($this->unit)); } return $input; }
public function shortcode($atts, $content = null, $code = '') { $atts = $atts ? (array) $atts : array(); $this->options = $this->getOptions($atts); self::$call_stack[] = $this->tag; $html = HTML::make(); $this->onShortcode($content, $code, $html); $html = \Drone\apply_filters('shortcode_' . $this->tag . '_shortcode', $html, $this, $atts, $content, $code); array_pop(self::$call_stack); return $html->html(); }