<i class="fa fa-arrow-circle-right"></i>
							</a>
							<a id="photo" class="action"  href="<?php 
        featured_image_url($post);
        ?>
">
								<i class="fa fa-camera"></i>
							</a>
						</div>
					</li>
		<?php 
        $i++;
    }
} else {
    ?>
			<p><?php 
    _e('Sorry, no posts matched your criteria.');
    ?>
</p>
		<?php 
}
?>
		<?php 
wp_reset_query();
?>
	</ul>
</div>

<?php 
enqueue_gallery_scripts();
get_footer();
Example #2
0
function tau_gallery_shortcode($attr)
{
    enqueue_gallery_scripts();
    $post = get_post();
    static $instance = 0;
    $instance++;
    if (!empty($attr['ids'])) {
        // 'ids' is explicitly ordered, unless you specify otherwise.
        if (empty($attr['orderby'])) {
            $attr['orderby'] = 'post__in';
        }
        $attr['include'] = $attr['ids'];
    }
    /**
     * Filter the default gallery shortcode output.
     *
     * If the filtered output isn't empty, it will be used instead of generating
     * the default gallery template.
     *
     * @since 2.5.0
     *
     * @see gallery_shortcode()
     *
     * @param string $output The gallery output. Default empty.
     * @param array  $attr   Attributes of the gallery shortcode.
     */
    $output = apply_filters('post_gallery', '', $attr);
    if ($output != '') {
        return $output;
    }
    // We're trusting author input, so let's at least make sure it looks like a valid orderby statement
    if (isset($attr['orderby'])) {
        $attr['orderby'] = sanitize_sql_orderby($attr['orderby']);
        if (!$attr['orderby']) {
            unset($attr['orderby']);
        }
    }
    $html5 = current_theme_supports('html5', 'gallery');
    $atts = shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => $post ? $post->ID : 0, 'itemtag' => $html5 ? 'figure' : 'li', 'icontag' => $html5 ? 'div' : 'div', 'captiontag' => $html5 ? 'figcaption' : 'p', 'columns' => 3, 'size' => 'thumbnail', 'include' => '', 'exclude' => '', 'link' => ''), $attr, 'gallery');
    $id = intval($atts['id']);
    if ('RAND' == $atts['order']) {
        $atts['orderby'] = 'none';
    }
    if (!empty($atts['include'])) {
        $_attachments = get_posts(array('include' => $atts['include'], 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $atts['order'], 'orderby' => $atts['orderby']));
        $attachments = array();
        foreach ($_attachments as $key => $val) {
            $attachments[$val->ID] = $_attachments[$key];
        }
    } elseif (!empty($atts['exclude'])) {
        $attachments = get_children(array('post_parent' => $id, 'exclude' => $atts['exclude'], 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $atts['order'], 'orderby' => $atts['orderby']));
    } else {
        $attachments = get_children(array('post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $atts['order'], 'orderby' => $atts['orderby']));
    }
    if (empty($attachments)) {
        return '';
    }
    if (is_feed()) {
        $output = "\n";
        foreach ($attachments as $att_id => $attachment) {
            $output .= wp_get_attachment_link($att_id, $atts['size'], true) . "\n";
        }
        return $output;
    }
    $itemtag = tag_escape($atts['itemtag']);
    $captiontag = tag_escape($atts['captiontag']);
    $icontag = tag_escape($atts['icontag']);
    $valid_tags = wp_kses_allowed_html('post');
    if (!isset($valid_tags[$itemtag])) {
        $itemtag = 'li';
    }
    if (!isset($valid_tags[$captiontag])) {
        $captiontag = 'div';
    }
    if (!isset($valid_tags[$icontag])) {
        $icontag = 'div';
    }
    $columns = intval($atts['columns']);
    $itemwidth = $columns > 0 ? floor(100 / $columns) : 100;
    $float = is_rtl() ? 'right' : 'left';
    $selector = "gallery-{$instance}";
    $gallery_style = '';
    $size_class = sanitize_html_class($atts['size']);
    $gallery_list = "<ul id='{$selector}' class='gallery galleryid-{$id} gallery-columns-{$columns} gallery-size-{$size_class}'>";
    $output = apply_filters('gallery_style', $gallery_style . $gallery_list);
    $i = 0;
    foreach ($attachments as $id => $attachment) {
        if (!empty($atts['link']) && 'file' === $atts['link']) {
            $image_output = wp_get_attachment_link($id, $atts['size'], false, false);
        } elseif (!empty($atts['link']) && 'none' === $atts['link']) {
            $image_output = wp_get_attachment_image($id, $atts['size'], false);
        } else {
            $image_output = wp_get_attachment_link($id, $atts['size'], true, false);
        }
        $image_meta = wp_get_attachment_metadata($id);
        // echo "<pre>";
        // var_dump($attachment);
        // echo "</pre>";
        // die('');
        $filter_class = $i % 2 == 0 ? 'red' : 'blue';
        $orientation = '';
        if (isset($image_meta['height'], $image_meta['width'])) {
            $orientation = $image_meta['height'] > $image_meta['width'] ? 'portrait' : 'landscape';
        }
        $output .= "<{$itemtag} id='card-" . $i . "' class='gallery-item " . $filter_class . " card'>";
        $output .= "\n\t\t\t<{$icontag} class='gallery-icon {$orientation} front'>\n\t\t\t\t<div class='filter'></div>\n\t\t\t\t{$image_output}\n\t\t\t</{$icontag}>\n\t\t\t<div class='back'>\n\t\t\t\t<p>{$attachment->post_title}</p>\n\t\t\t\t<a class='action' href='" . $attachment->guid . "'>\n\t\t\t\t\t<i class='fa fa-camera'></i>\n\t\t\t\t</a>\n\t\t\t</div>";
        if ($captiontag && trim($attachment->post_excerpt)) {
            $output .= "\n\t\t\t\t<{$captiontag} class='wp-caption-text gallery-caption'>\n\t\t\t\t" . wptexturize($attachment->post_excerpt) . "\n\t\t\t\t</{$captiontag}>";
        }
        $output .= "</{$itemtag}>";
        ++$i;
    }
    if (!$html5 && $columns > 0 && $i % $columns !== 0) {
        $output .= "\n\t\t\t<br style='clear: both' />";
    }
    $output .= "</ul>\n";
    return $output;
}