Пример #1
0
function grid($data, $args = array())
{
    $defaults = array('data' => 'query', 'per_row' => 3, 'format' => 'img_grid', 'paged' => false, 'has_img' => true, 'image_field' => false, 'img_default' => null, 'img_width' => '100%', 'title' => '', 'title_link' => '', 'class' => 'pagelines-grid', 'row_class' => 'gridrow', 'content_len' => 10, 'callback' => false, 'margin' => true, 'hovercard' => false);
    $a = wp_parse_args($args, $defaults);
    if ($a['data'] == 'users' || $a['data'] == 'array_callback') {
        $posts = $data;
    } else {
        // The Query
        global $wp_query;
        $wp_query = $data;
        $posts = $data->posts;
        if (!is_array($posts)) {
            return;
        }
    }
    // Standard Variables
    $out = '';
    $total = count($posts);
    $count = 1;
    $default_img = isset($a['img_default']) ? sprintf('<img src="%s" alt="%s"/>', $a['img_default'], __('No Image', 'pagelines')) : '';
    $margin_class = $a['margin'] ? '' : 'ppfull';
    if ($a['hovercard']) {
        $out .= pl_js_wrap(sprintf('jQuery(".vignette").hover(function(){jQuery(this).find(".hovercard").fadeIn();}, function(){jQuery(this).find(".hovercard").fadeOut();});'));
    }
    // Grid loop
    foreach ($posts as $pid => $p) {
        // Grid Stuff
        $start = grid_row_start($count, $total, $a['per_row']) ? sprintf('<div class="pprow grid-row fix %s">', $margin_class) : '';
        $end = grid_row_end($count, $total, $a['per_row']) ? '</div>' : '';
        $last_class = grid_row_end($count, $total, $a['per_row']) ? 'pplast' : '';
        // Content
        $content = '';
        if ($a['callback']) {
            $content = call_user_func($a['callback'], $p, $a);
        } else {
            setup_postdata($p);
            $oset = array('post_id' => $p->ID);
            // The Image
            if ($a['image_field'] && ploption($a['image_field'], $oset)) {
                $thumb = sprintf('<img src="%s" alt="thumb" />', ploption($a['image_field'], $oset));
            } elseif (has_post_thumbnail($p->ID)) {
                $thumb = get_the_post_thumbnail($p->ID);
            } else {
                $thumb = $default_img;
            }
            $hovercard = $a['hovercard'] ? sprintf('<div class="hovercard"><span>%s</span></div>', $p->post_title) : '';
            $image = sprintf('<a href="%s" class="img grid-img" style="width: %s"><div class="grid-img-pad"><div class="grid-img-frame"><div class="vignette">%s%s</div></div></div></a>', get_permalink($p->ID), $a['img_width'], $thumb, $hovercard);
            $content .= $image;
            // Text
            if ($a['format'] == 'media') {
                $content .= sprintf('<div class="bd grid-content"><h4><a href="%s">%s</a></h4> <p>%s %s %s</p></div>', get_permalink($p->ID), $p->post_title, custom_trim_excerpt($p->post_content, $a['content_len']), sprintf('<a href="%s" >More &rarr;</a>', get_permalink($p->ID)), pledit($p->ID));
            }
        }
        // Column Box Wrapper
        $out .= sprintf('%s<div class="grid-element pp%s %s %s"><div class="grid-element-pad">%s</div></div>%s', $start, $a['per_row'], $a['format'], $last_class, $content, $end);
        $count++;
    }
    if ($a['paged']) {
        ob_start();
        pagelines_pagination();
        $pages = ob_get_clean();
    } else {
        $pages = '';
    }
    $title_link = $a['title_link'] != '' ? sprintf('<a href="%s" class="button title-link">See All</a>', $a['title_link']) : '';
    $title = $a['title'] != '' ? sprintf('<div class="grid-title"><div class="grid-title-pad fix"><h4 class="gtitle">%s</h4>%s</div></div>', $a['title'], $title_link) : '';
    $wrap = sprintf('<div class="plgrid %s"><div class="plgrid-pad">%s%s%s</div></div>', $a['class'], $title, $out, $pages);
    return $wrap;
}
Пример #2
0
 /**
  * Post Content
  *
  * Captures the post content wrapped in 'pageslines_loop_*_post_content' hooks and returns it
  *
  * @uses    pageslines_register_hook
  * @uses    pledit
  *
  * @return  string - the content
  */
 function post_content()
 {
     ob_start();
     pagelines_register_hook('pagelines_loop_before_post_content', 'theloop');
     // Hook
     //	global  $post;
     $content = get_the_content($this->continue_reading);
     $content .= pledit(get_the_ID());
     echo apply_filters('the_content', $content);
     if (is_single() || is_page()) {
         $pgn = array('before' => __("<div class='pagination'><span class='desc'>pages:</span><ul>", 'pagelines'), 'after' => '</ul></div>', 'link_before' => '<span class="pg">', 'link_after' => '</span>');
         wp_link_pages($pgn);
     }
     if (is_single() && get_the_tags()) {
         printf('<div class="p tags">%s&nbsp;</div>', get_the_tag_list(__("<span class='note'>Tagged with &rarr;</span> ", 'pagelines'), ' &bull; ', ''));
     }
     pagelines_register_hook('pagelines_loop_after_post_content', 'theloop');
     // Hook
     $the_content = ob_get_clean();
     return $the_content;
 }
Пример #3
0
 /**
  *
  * @TODO document
  *
  */
 function draw_boxes($p, $args)
 {
     setup_postdata($p);
     $oset = array('post_id' => $p->ID);
     $box_link = plmeta('the_box_icon_link', $oset);
     $box_icon = plmeta('the_box_icon', $oset);
     $box_target = plmeta('the_box_icon_target', $oset) ? 'target="_blank"' : '';
     $class = plmeta('box_class', $oset) ? plmeta('box_class', $oset) : null;
     $image = $box_icon ? self::_get_box_image($p, $box_icon, $box_link, $this->thumb_size, $box_target) : '';
     $title_text = $box_link ? sprintf('<a %s href="%s">%s</a>', $box_target, $box_link, $p->post_title) : $p->post_title;
     $title = do_shortcode(sprintf('<div class="fboxtitle"><h3>%s</h3></div>', $title_text));
     if (plmeta('box_more_text', $oset)) {
         $more_text = plmeta('box_more_text', $oset);
     } elseif (ploption('box_more_text', $this->oset)) {
         $more_text = ploption('box_more_text', $this->oset);
     } else {
         $more_text = false;
     }
     $more_link = $box_link && $more_text ? sprintf('<span class="fboxmore-wrap"><a class="fboxmore" href="%s" %s>%s</a></span>', $box_link, $box_target, $more_text) : '';
     $more_link = apply_filters('box_more_link', $more_link);
     $content = sprintf('<div class="fboxtext">%s %s %s</div>', do_shortcode($p->post_content), pledit($p->ID), $more_link);
     $info = $this->thumb_type != 'only_thumbs' ? sprintf('<div class="fboxinfo fix bd">%s%s</div>', $title, $content) : '';
     return sprintf('<div id="%s" class="fbox %s"><div class="media box-media %s"><div class="blocks box-media-pad">%s%s</div></div></div>', 'fbox_' . $p->ID, $class, $this->thumb_type, $image, $info);
 }
Пример #4
0
    /**
     *
     * @TODO document
     *
     */
    function draw_banners($b, $class = "")
    {
        ?>
		<div class="banner_container fix <?php 
        echo $class;
        ?>
">
	<?php 
        foreach ($b as $bpost) {
            $oset = array('post_id' => $bpost->ID);
            $banner_text_width = ploption('banner_text_width', $oset) ? ploption('banner_text_width', $oset) : 50;
            $banner_media_width = 100 - $banner_text_width;
            // Math
            $banner_align = ploption('banner_align', $oset) ? ploption('banner_align', $oset) : 'banner_left';
            $pad = ploption('banner_text_padding', $oset);
            $banner_text_padding = $pad ? sprintf('padding:%s;', $pad) : "padding: 20px 40px";
            $pad_flag = $pad ? 'with-pad' : 'no-pad';
            ?>
		<div class="banner-area pprand-pad <?php 
            echo $banner_align . ' ' . $pad_flag;
            ?>
">
				<div class="banner-text pprand" style="width:<?php 
            echo $banner_text_width;
            ?>
%;">
					<div class="banner-text-pad pprand-pad" style="<?php 
            echo $banner_text_padding;
            ?>
">
						<div class="banner-text-wrap">
							<div class="banner-title">
								<h2><?php 
            echo do_shortcode($bpost->post_title);
            ?>
</h2>
							</div>
							<div class="banner-content">
								<?php 
            echo apply_filters('the_content', do_shortcode($bpost->post_content) . pledit($bpost->ID));
            ?>
							</div>
						</div>
					</div>
				</div>
				<div class="banner-media pprand" style="width:<?php 
            echo $banner_media_width;
            ?>
%;" >
					<div class="banner-media-pad pprand-pad">
						<?php 
            echo do_shortcode(self::_get_banner_media($oset));
            ?>
					</div>
				</div>
				<div class="clear"></div>
			</div>
		<?php 
        }
        ?>
		</div><div class="clear"></div>
<?php 
    }
Пример #5
0
 function post_content()
 {
     $col = pl_setting('ba_fotos_post_content_cols') ? 'fotos-mag-col' : false;
     printf('<section class="fotos-post-content %s" itemprop="text">%s%s</section>', $col, apply_filters('the_content', get_the_content()), pledit(get_the_ID()));
 }
Пример #6
0
    /**
     *
     * @TODO document
     *
     */
    function draw_features($f, $class, $clone_id = null)
    {
        // Setup
        global $post;
        global $pagelines_ID;
        global $pagelines_layout;
        $current_page_post = $post;
        if (empty($f)) {
            echo setup_section_notify($this, __("No Feature posts matched this page's criteria", 'pagelines'));
            return;
        }
        // Options
        $feature_source = ploption('feature_source', $this->oset);
        $timeout = ploption('timeout', $this->oset);
        $playpause = ploption('feature_playpause', $this->oset);
        $feature_nav_type = ploption('feature_nav_type', $this->oset);
        // Refine
        $no_nav = isset($f) && count($f) == 1 ? ' nonav' : '';
        $footer_nav_class = $class . ' ' . $feature_nav_type . $no_nav;
        $cycle_selector = "fclone" . $clone_id;
        ?>
	<div id="feature_slider" class="<?php 
        echo $cycle_selector . '_wrap ' . $class;
        ?>
 fix">
		<div id="feature-area" class="fset_height">
			<div id="cycle" class="<?php 
        echo $cycle_selector;
        ?>
">
			<?php 
        foreach ($f as $post) {
            // Setup For Std WP functions
            setup_postdata($post);
            $oset = array('post_id' => $post->ID);
            $target = apply_filters('pagelines_features_target', '', $post);
            $feature_style = ploption('feature-style', $oset) ? ploption('feature-style', $oset) : 'text-left';
            $feature_style = apply_filters('pagelines-feature-style', $feature_style);
            $flink_text = ploption('feature-link-text', $oset) ? __(ploption('feature-link-text', $oset)) : __('More', 'pagelines');
            if ($feature_source == 'posts' || $feature_source == 'posts_all') {
                $feature_background_image = '';
                if (plmeta('feature-background-image', $oset)) {
                    $feature_background_image = plmeta('feature-background-image', $oset);
                } elseif (has_post_thumbnail($post->ID)) {
                    $feature_background_image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'single-post-thumbnail');
                    $feature_background_image = $feature_background_image[0];
                } else {
                    $feature_background_image = apply_filters('pagelines-feature-cat-default-image', $this->base_url . '/images/feature1.jpg', $post);
                }
                $background_class = 'bg_cover';
            } else {
                $feature_background_image = ploption('feature-background-image', $oset);
                $background_class = 'bg_cover';
            }
            $feature_design = ploption('feature-design', $oset) ? ploption('feature-design', $oset) : '';
            if ($feature_source == 'posts' || $feature_source == 'posts_all') {
                setup_postdata($post);
            }
            if (plmeta('feature-link-url', $oset)) {
                $action = plmeta('feature-link-url', $oset);
            } elseif (ploption('feature-link-url', $oset)) {
                $action = ploption('feature-link-url', $oset);
            } elseif ($feature_source == 'posts' || $feature_source == 'posts_all') {
                $action = get_permalink();
            } else {
                $action = '';
            }
            $fcontent_class = ploption('fcontent-bg', $oset) ? ploption('feature-bg', $oset) : '';
            $media_image = ploption('feature-media-image', $oset);
            $feature_media = ploption('feature-media', $oset);
            $feature_media_full = ploption('feature-media-full', $oset);
            $feature_wrap_markup = $feature_style == 'text-none' && $action ? 'a' : 'div';
            $feature_wrap_link = $feature_style == 'text-none' && $action ? sprintf('href="%s"', $action) : '';
            $more_link = $feature_style != 'text-none' && $action ? sprintf(' <a %s class="plmore" href="%s" >%s</a>', $target, $action, $flink_text) : '';
            $background_css = $feature_background_image ? sprintf('style="background-image: url(\'%s\');"', $feature_background_image) : '';
            printf('<div id="%s" class="fcontainer %s %s fix" >', 'feature_' . $post->ID, $feature_style, $feature_design);
            printf('<%s class="feature-wrap fset_height %s" %s %s >', $feature_wrap_markup, $background_class, $feature_wrap_link, $background_css);
            if ($feature_wrap_markup != 'a') {
                if ($feature_media && $feature_media_full) {
                    echo $feature_media;
                } else {
                    ?>

								<div class="feature-pad fset_height fix">
									<div class="fcontent scale_text fset_height <?php 
                    echo $fcontent_class;
                    ?>
">
										<div class="fcontent-pad fix">
												<?php 
                    pagelines_register_hook('pagelines_feature_text_top', $this->id);
                    // Hook
                    $link = $feature_source == 'posts' || $feature_source == 'posts_all' ? sprintf('<a %s href="%s">%s</a>', $target, $action, $post->post_title) : $post->post_title;
                    $title = sprintf('<div class="fheading"> <h2 class="ftitle">%s</h2> </div>', $link);
                    $content = $feature_source == 'posts' || $feature_source == 'posts_all' ? apply_filters('pagelines_feature_output', custom_trim_excerpt(get_the_excerpt(), '30')) : do_shortcode(get_the_content());
                    printf('%s<div class="ftext"><div class="fexcerpt">%s%s%s</div></div>', $title, $content, $more_link, pledit($post->ID));
                    pagelines_register_hook('pagelines_fcontent_after', $this->id);
                    // Hook
                    ?>
										</div>
									</div>

									<div class="fmedia fset_height" style="">
										<div class="fmedia-pad">
											<?php 
                    pagelines_register_hook('pagelines_feature_media_top', $this->id);
                    // Hook
                    if ($media_image) {
                        printf('<div class="media-frame"><img src="%s" /></div>', $media_image);
                    } elseif ($feature_media) {
                        echo do_shortcode($feature_media);
                    }
                    ?>
										</div>
									</div>
									<?php 
                    pagelines_register_hook('pagelines_feature_after', $this->id);
                    // Hook
                    ?>
									<div class="clear"></div>
								</div>

							<?php 
                }
            }
            printf('</%s>', $feature_wrap_markup);
            echo '</div>';
        }
        $post = $current_page_post;
        ?>
			</div>
		</div>
			<?php 
        pagelines_register_hook('pagelines_feature_nav_before', $this->id);
        // Hook
        $playpause = $timeout != 0 && $playpause ? sprintf('<span class="playpause pause %s"><span>&nbsp;</span></span>', $cycle_selector) : '';
        $nav = sprintf('<div id="featurenav" class="%s subtext fix"></div>', $cycle_selector);
        printf('<div id="feature-footer" class="%s fix"><div class="feature-footer-pad">%s%s<div class="clear"></div></div></div>', $footer_nav_class, $playpause, $nav);
        ?>
	</div>
	<div class="clear"></div>
<?php 
    }
Пример #7
0
 function section_template()
 {
     $content = apply_filters('the_content', get_the_content());
     printf('<div class="fotos-page-content">%s%s</div>', $content, pledit(get_the_ID()));
 }