function widget($args, $instance) { global $post, $extrp_settings, $extrp_sanitize; if (is_404() || is_home() || is_front_page()) { return; } $post_id = null === $post->ID ? get_the_ID() : (int) $post->ID; extract($args); $default_setting = extrp_default_setting('shortcode'); $set = wp_parse_args($instance, $default_setting); $a = $extrp_sanitize->sanitize($set); $result = extrp_create_html($a['relatedby'], $post_id, $a['single'], $a['posts'], $a['post_date'], $a['subtitle'], $a['randomposts'], $a['titlerandom'], $a['post_title'], $a['desc'], $a['image_size'], $a['display'], $a['shape'], $a['crop'], $a['heading'], $a['postheading'], $a['post_excerpt'], $a['maxchars'], $a['highlight'], $a['relevanssi'], $a['post__in'], $a['post__not_in'], 'shortcode', 'widget'); if ('' == $result) { return; } if ($extrp_settings['active']) { add_filter('the_content', 'extrp_filter_the_content', 10); } $title = apply_filters('widget_title', $result['subtitle']); $title_section = '' != $title ? $before_title . $title . $after_title : ''; printf('%1$s<div class="widget_form_extrp">%2$s%3$s</div>%4$s', $before_widget, $title_section, $result['result'], $after_widget); }
function extrp_related_posts_shortcode($atts = null, $result = '') { global $post, $extrp_settings, $extrp_sanitize; if (is_home() || is_front_page()) { return; } $post_id = null === $post->ID ? get_the_ID() : (int) $post->ID; $option = 'shortcode'; $default_setting = shortcode_atts(extrp_default_setting('shortcode'), $atts, 'jv-related-posts'); $a = $extrp_sanitize->sanitize($default_setting); $result = extrp_create_html($a['relatedby'], $post_id, $a['single'], $a['posts'], $a['post_date'], $a['subtitle'], $a['randomposts'], $a['titlerandom'], $a['post_title'], $a['desc'], $a['image_size'], $a['display'], $a['shape'], $a['crop'], $a['heading'], $a['postheading'], $a['post_excerpt'], $a['maxchars'], $a['highlight'], $a['relevanssi'], $a['post__in'], $a['post__not_in'], $option); if ($extrp_settings['active']) { add_filter('the_content', 'extrp_filter_the_content', 10); } $author_id = $post->post_author; $option = 'publish_posts'; $can_publish_posts = user_can($author_id, extrp_capability_filter($option)); if (!$can_publish_posts) { return; } //well, users that can't publish posts, no cake for you. (default) return $result; }
function extrp_set_related_posts($post, $arg = '') { $a = extrp_do_your_settings($post, $arg); $post_id = null === $post->ID ? get_the_ID() : (int) $post->ID; remove_filter('the_content', 'extrp_filter_the_content'); $result = extrp_create_html($a['relatedby'], $post_id, $a['single'], $a['posts'], $a['post_date'], $a['subtitle'], $a['randomposts'], $a['titlerandom'], $a['post_title'], $a['desc'], $a['image_size'], $a['display'], $a['shape'], $a['crop'], $a['heading'], $a['postheading'], $a['post_excerpt'], $a['maxchars'], $a['highlight'], $a['relevanssi'], $a['post__in'], $a['post__not_in']); add_filter('the_content', 'extrp_filter_the_content', 10); if (!$result) { return; } return $result; }