本文整理汇总了PHP中sanitize_sql_orderby函数的典型用法代码示例。如果您正苦于以下问题:PHP sanitize_sql_orderby函数的具体用法?PHP sanitize_sql_orderby怎么用?PHP sanitize_sql_orderby使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了sanitize_sql_orderby函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: photoline_modified_post_gallery
function photoline_modified_post_gallery($output, $attr)
{
global $post;
static $instance = 0;
$instance++;
//disable all filter
if (empty($attr['type']) || $attr['type'] != 'slider') {
return;
}
if (isset($attr['orderby'])) {
$attr['orderby'] = sanitize_sql_orderby($attr['orderby']);
if (!$attr['orderby']) {
unset($attr['orderby']);
}
}
extract(shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => $post->ID, 'size' => 'photoline-featured', 'include' => '', 'exclude' => ''), $attr));
$id = intval($id);
if ('RAND' == $order) {
$orderby = 'none';
}
if (!empty($include)) {
$include = preg_replace('/[^0-9,]+/', '', $include);
$_attachments = get_posts(array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
$attachments = array();
foreach ($_attachments as $key => $val) {
$attachments[$val->ID] = $_attachments[$key];
}
} elseif (!empty($exclude)) {
$exclude = preg_replace('/[^0-9,]+/', '', $exclude);
$attachments = get_children(array('post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
} else {
$attachments = get_children(array('post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
}
if (empty($attachments)) {
return '';
}
if (is_feed()) {
$output = "\n";
foreach ($attachments as $att_id => $attachment) {
$output .= wp_get_attachment_link($att_id, $size, true) . "\n";
}
return $output;
}
$selector = "gallery-{$instance}";
$size_class = sanitize_html_class($size);
$gallery_div = "<div id='{$selector}' class='gallery galleryid-{$id} gallery-size-{$size_class} flexslider'>";
$output = apply_filters('gallery_style', $gallery_div);
$output .= '<ul class="slides">';
$i = 0;
foreach ($attachments as $id => $attachment) {
$caption = !empty($attachment->post_excerpt) ? '<p class="flex-caption wp-caption-text gallery-caption">' . wptexturize($attachment->post_excerpt) . '</p>' : '';
$image = wp_get_attachment_image($id, $size);
$output .= '<li>';
$output .= $image;
$output .= $caption;
$output .= '</li>';
}
$output .= "\r\n </ul><!-- .slides -->\r\n </div>\n";
return $output;
}
示例2: f5_gallery
function f5_gallery($output, $attr)
{
global $post;
if (isset($attr['orderby'])) {
$attr['orderby'] = sanitize_sql_orderby($attr['orderby']);
if (!$attr['orderby']) {
unset($attr['orderby']);
}
}
extract(shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => $post->ID, 'columns' => 3, 'size' => 'thumbnail', 'include' => '', 'exclude' => ''), $attr));
$id = intval($id);
if ('RAND' === $order) {
$orderby = 'none';
}
if (!empty($include)) {
$include = preg_replace('/[^0-9,]+/', '', $include);
$attachments_arr = get_posts(array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
$attachments = array();
foreach ($attachments_arr as $key => $val) {
$attachments[$val->ID] = $attachments_arr[$key];
}
}
if (empty($attachments)) {
return '';
}
$output = '<ul class="small-block-grid-2 medium-block-grid-' . $columns . '" data-clearing>';
foreach ($attachments as $id => $attachment) {
$img = wp_get_attachment_image_src($id, $size);
$img_big = wp_get_attachment_image_src($id, 'full');
$caption = !$attachment->post_excerpt ? '' : ' data-caption="' . esc_attr($attachment->post_excerpt) . '" ';
$output .= '<li><a href="' . $img_big[0] . '"><img src="' . $img[0] . '" ' . $caption . ' class="th" alt="' . esc_attr($post->title) . '" /></a></li>';
}
$output .= '</ul>';
return $output;
}
示例3: set_atts
public function set_atts($atts)
{
global $post;
$this->atts = shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => isset($post->ID) ? $post->ID : 0, 'include' => '', 'exclude' => '', 'type' => '', 'grayscale' => false, 'link' => '', 'columns' => 3), $atts, 'gallery');
$this->atts['id'] = (int) $this->atts['id'];
$this->float = is_rtl() ? 'right' : 'left';
// Default to rectangular is tiled galleries are checked
if ($this->tiles_enabled() && (!$this->atts['type'] || 'default' == $this->atts['type'])) {
/** This filter is already documented in functions.gallery.php */
$this->atts['type'] = apply_filters('jetpack_default_gallery_type', 'rectangular');
}
if (!$this->atts['orderby']) {
$this->atts['orderby'] = sanitize_sql_orderby($this->atts['orderby']);
if (!$this->atts['orderby']) {
$this->atts['orderby'] = 'menu_order ID';
}
}
if ('rand' == strtolower($this->atts['order'])) {
$this->atts['orderby'] = 'rand';
}
// We shouldn't have more than 20 columns.
if (!is_numeric($this->atts['columns']) || 20 < $this->atts['columns']) {
$this->atts['columns'] = 3;
}
}
示例4: set_atts
public function set_atts( $atts ) {
global $post;
$this->atts = shortcode_atts( array(
'order' => 'ASC',
'orderby' => 'menu_order ID',
'id' => $post->ID,
'include' => '',
'exclude' => '',
'type' => '',
'grayscale' => false,
'link' => '',
), $atts );
$this->atts['id'] = (int) $this->atts['id'];
$this->float = is_rtl() ? 'right' : 'left';
// Default to rectangular is tiled galleries are checked
if ( $this->tiles_enabled() && ( ! $this->atts['type'] || 'default' == $this->atts['type'] ) )
$this->atts['type'] = 'rectangular';
if ( !$this->atts['orderby'] ) {
$this->atts['orderby'] = sanitize_sql_orderby( $this->atts['orderby'] );
if ( !$this->atts['orderby'] )
$this->atts['orderby'] = 'menu_order ID';
}
if ( 'RAND' == $this->atts['order'] )
$this->atts['orderby'] = 'none';
}
示例5: vanilla_gallery
/**
* OVERRIDES: gallery_shortcode()
*
* This implements the functionality of the Gallery Shortcode for displaying
* WordPress images on a post.
*/
function vanilla_gallery($attr)
{
global $post, $tpl;
// BUG: I'm doing something wrong, because $attr is not the array of attributes from gallery_shortcode function. Why not??
// 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']);
}
}
extract(shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => $post->ID, 'itemtag' => 'dl', 'icontag' => 'dt', 'captiontag' => 'dd', 'columns' => 3, 'size' => 'thumbnail'), $attr));
$id = intval($id);
$attachments = get_children(array('post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
if (empty($attachments)) {
return '';
}
if (is_feed()) {
$output = "\n";
foreach ($attachments as $id => $attachment) {
$output .= wp_get_attachment_link($id, $size, true) . "\n";
}
return $output;
}
$images = array();
foreach ($attachments as $id => $attachment) {
$images[] = array("link" => wp_get_attachment_link($id, $size, true), "caption" => $captiontag && trim($attachment->post_excerpt) ? $attachment->post_excerpt : 0);
}
// Prepare the template data
$tpl["gallery"] = array("tpl_file" => "shortcodes/gallery.html", "itemtag" => tag_escape($itemtag), "icontag" => tag_escape($icontag), "captiontag" => tag_escape($captiontag), "columns" => intval($columns), "itemwidth" => $columns > 0 ? floor(100 / $columns) - 1 : 100, "images" => $images);
// Execute the template
return vanilla_shortcode("gallery");
}
示例6: roots_gallery
/**
* Clean up gallery_shortcode()
*
* Re-create the [gallery] shortcode and use thumbnails styling from Bootstrap
*
* @link http://twitter.github.com/bootstrap/components.html#thumbnails
*/
function roots_gallery($attr)
{
$post = get_post();
static $instance = 0;
$instance++;
if (!empty($attr['ids'])) {
if (empty($attr['orderby'])) {
$attr['orderby'] = 'post__in';
}
$attr['include'] = $attr['ids'];
}
$output = apply_filters('post_gallery', '', $attr);
if ($output != '') {
return $output;
}
if (isset($attr['orderby'])) {
$attr['orderby'] = sanitize_sql_orderby($attr['orderby']);
if (!$attr['orderby']) {
unset($attr['orderby']);
}
}
extract(shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => $post->ID, 'itemtag' => '', 'icontag' => '', 'captiontag' => '', 'columns' => 3, 'size' => 'thumbnail', 'include' => '', 'exclude' => '', 'link' => 'file'), $attr));
$id = intval($id);
if ($order === 'RAND') {
$orderby = 'none';
}
if (!empty($include)) {
$_attachments = get_posts(array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
$attachments = array();
foreach ($_attachments as $key => $val) {
$attachments[$val->ID] = $_attachments[$key];
}
} elseif (!empty($exclude)) {
$attachments = get_children(array('post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
} else {
$attachments = get_children(array('post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
}
if (empty($attachments)) {
return '';
}
if (is_feed()) {
$output = "\n";
foreach ($attachments as $att_id => $attachment) {
$output .= wp_get_attachment_link($att_id, $size, true) . "\n";
}
return $output;
}
$output = '<ul class="thumbnails gallery">';
$i = 0;
foreach ($attachments as $id => $attachment) {
$image = 'file' == $link ? wp_get_attachment_link($id, $size, false, false) : wp_get_attachment_link($id, $size, true, false);
$output .= '<li>' . $image;
if (trim($attachment->post_excerpt)) {
$output .= '<div class="caption hidden">' . wptexturize($attachment->post_excerpt) . '</div>';
}
$output .= '</li>';
}
$output .= '</ul>';
return $output;
}
示例7: get_gallery_attachments
/**
* Get the attachments from the gallery
* @param array $attr
* @return array $attachments
*/
function get_gallery_attachments($attr)
{
global $post;
if (empty($attr)) {
return;
}
if (isset($attr['orderby'])) {
$attr['orderby'] = sanitize_sql_orderby($attr['orderby']);
if (!$attr['orderby']) {
unset($attr['orderby']);
}
}
extract(shortcode_atts(array('order' => 'ASC', 'orderby' => !empty($attr['orderby']) ? $attr['orderby'] : 'menu_order', 'id' => $post->ID, 'itemtag' => 'dl', 'icontag' => 'dt', 'captiontag' => 'dd', 'columns' => !empty($attr['columns']) ? $attr['columns'] : '1', 'size' => !empty($attr['size']) ? $attr['size'] : 'thumbnail', 'include' => '', 'exclude' => ''), $attr));
$id = intval($id);
if ('RAND' == $order) {
$orderby = 'none';
}
$include = preg_replace('/[^0-9,]+/', '', $include);
$attachments_query = get_posts(array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
$attachments = array();
foreach ($attachments_query as $key => $val) {
$attachments[$val->ID] = $attachments_query[$key];
}
return $attachments;
}
示例8: get_forms
/**
* A custom function to get the entries and sort them
*
* @since 1.2
* @returns array() $cols SQL results
*/
function get_forms($orderby = 'form_id', $order = 'ASC', $per_page, $offset = 0, $search = '')
{
global $wpdb, $current_user;
get_currentuserinfo();
// Save current user ID
$user_id = $current_user->ID;
// Get the Form Order type settings, if any
$user_form_order_type = get_user_meta($user_id, 'vfb-form-order-type', true);
// Get the Form Order settings, if any
$user_form_order = get_user_meta($user_id, 'vfb-form-order');
foreach ($user_form_order as $form_order) {
$form_order = implode(',', $form_order);
}
$where = '';
// Forms type filter
$where .= $this->get_form_status() && 'all' !== $this->get_form_status() ? $wpdb->prepare(' AND forms.form_status = %s', $this->get_form_status()) : '';
// Always display all forms, unless an Form Type filter is set
if (!$this->get_form_status() || in_array($this->get_form_status(), array('all', 'draft'))) {
$where .= $wpdb->prepare(' AND forms.form_status IN("%s", "%s")', 'publish', 'draft');
}
$sql_order = sanitize_sql_orderby("{$orderby} {$order}");
if (in_array($user_form_order_type, array('order', ''))) {
$sql_order = isset($form_order) ? "FIELD( form_id, {$form_order} )" : sanitize_sql_orderby('form_id DESC');
} else {
$sql_order = sanitize_sql_orderby('form_title ASC');
}
$cols = $wpdb->get_results("SELECT forms.form_id, forms.form_title, forms.form_status FROM {$this->form_table_name} AS forms WHERE 1=1 {$where} {$search} ORDER BY {$sql_order}");
return $cols;
}
示例9: get_gallery_images
/**
* Gets all images associated with the gallery. This method is lifted almost verbatim from the gallery short-code function provided by WP.
* We will take the gallery images and do some fun stuff with styling them in other methods. We cannot use the WP function because
* this code is nested within the gallery_shortcode function and we want to tweak that (there is no hook that executes after
* the gallery has been retrieved.
*
* @param array $attr
* @return array|bool
*/
function get_gallery_images($attr = array())
{
global $post;
// 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']);
}
}
extract(shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => $post->ID, 'itemtag' => 'dl', 'icontag' => 'dt', 'captiontag' => 'dd', 'columns' => 3, 'size' => 'thumbnail', 'include' => '', 'exclude' => ''), $attr));
$id = intval($id);
if ('RAND' == $order) {
$orderby = 'none';
}
if (!empty($include)) {
$include = preg_replace('/[^0-9,]+/', '', $include);
$_attachments = get_posts(array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
$attachments = array();
foreach ($_attachments as $key => $val) {
$attachments[$val->ID] = $_attachments[$key];
}
} elseif (!empty($exclude)) {
$exclude = preg_replace('/[^0-9,]+/', '', $exclude);
$attachments = get_children(array('post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
} else {
$attachments = get_children(array('post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
}
return $attachments;
}
示例10: custom_gallery
function custom_gallery($attr)
{
$post = get_post();
static $instance = 0;
$instance++;
# hard-coding these values so that they can't be broken
$attr['columns'] = 1;
$attr['size'] = 'full';
$attr['link'] = 'none';
$attr['orderby'] = 'post__in';
$attr['include'] = $attr['ids'];
#Allow plugins/themes to override the default gallery template.
$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']);
}
}
extract(shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => $post->ID, 'itemtag' => 'div', 'icontag' => 'div', 'captiontag' => 'p', 'columns' => 4, 'size' => 'gallery-thumbnail', 'include' => '', 'exclude' => ''), $attr));
$id = intval($id);
if ('RAND' == $order) {
$orderby = 'none';
}
if (!empty($include)) {
$_attachments = get_posts(array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
$attachments = array();
foreach ($_attachments as $key => $val) {
$attachments[$val->ID] = $_attachments[$key];
}
} elseif (!empty($exclude)) {
$attachments = get_children(array('post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
} else {
$attachments = get_children(array('post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
}
if (empty($attachments)) {
return '';
}
$gallery_style = $gallery_div = '';
if (apply_filters('use_default_gallery_style', true)) {
$gallery_style = "<!-- see gallery_shortcode() in functions.php -->";
}
$gallery_div = "<ul class='clearing-thumbs small-block-grid-2 large-block-grid-4' data-clearing>";
$output = apply_filters('gallery_style', $gallery_style . "\n\t\t" . $gallery_div);
foreach ($attachments as $id => $attachment) {
$link = wp_get_attachment_link($id, 'full', false, false);
$output .= "<li>";
$output .= "{$link}";
if ($captiontag && trim($attachment->post_excerpt)) {
$output .= "\n\t\t\t\t<p class='wp-caption-text homepage-gallery-caption hide'>\n\t\t\t\t" . wptexturize($attachment->post_excerpt) . "\n\t\t\t\t</p>";
}
$output .= "</li>";
}
$output .= "</ul>\n";
return $output;
}
示例11: gallery_shortcode
function gallery_shortcode($output, $attr)
{
global $post;
if (!isset($attr['royalslider'])) {
if (NewRoyalSliderMain::$override_all_default_galleries) {
$rsid = NewRoyalSliderMain::$override_all_default_galleries;
} else {
return $output;
}
} else {
$rsid = $attr['royalslider'];
}
// $rsdata = NewRoyalSliderMain::query_slider_data( $rsid );
// if(!$rsdata || !$rsdata[0]) {
// return NewRoyalSliderMain::frontend_error(__('Incorrect royalslider ID in gallery shortcode (or in Global, or problem with query.', 'new_royalslider'));
// }
// $rsdata = $rsdata[0];
if (isset($attr['orderby'])) {
$attr['orderby'] = sanitize_sql_orderby($attr['orderby']);
if (!$attr['orderby']) {
unset($attr['orderby']);
}
}
extract(shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => $post->ID, 'itemtag' => 'dl', 'icontag' => 'dt', 'captiontag' => 'dd', 'columns' => 3, 'size' => 'thumbnail', 'ids' => '', 'include' => '', 'exclude' => ''), $attr));
$id = intval($id);
if ('RAND' == $order) {
$orderby = 'none';
}
if (!empty($ids)) {
// 'ids' is explicitly ordered
$orderby = 'post__in';
$include = $ids;
}
if (!empty($include)) {
$_attachments = get_posts(array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
$attachments = array();
foreach ($_attachments as $key => $val) {
$attachments[$val->ID] = $_attachments[$key];
}
} elseif (!empty($exclude)) {
$attachments = get_children(array('post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
} else {
$attachments = get_children(array('post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
}
if (empty($attachments)) {
return NewRoyalSliderMain::frontend_error(__('No post attachments found.', 'new_royalslider'));
}
if (is_feed()) {
$output = "\n";
foreach ($attachments as $att_id => $attachment) {
$output .= wp_get_attachment_link($att_id, $size, true) . "\n";
}
return $output;
}
require_once 'rsgenerator/NewRoyalSliderGenerator.php';
return NewRoyalSliderGenerator::generateSlides(true, true, $rsid, 'gallery', null, $attachments, null, null, null, true);
return $output;
}
示例12: my_post_gallery
function my_post_gallery($output, $attr)
{
global $post, $wp_locale;
static $instance = 0;
$instance++;
// 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']);
}
}
extract(shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => $post->ID, 'itemtag' => 'li', 'icontag' => 'dt', 'captiontag' => 'div', 'columns' => 3, 'size' => 'thumbnail', 'include' => '', 'exclude' => ''), $attr));
$id = intval($id);
if ('RAND' == $order) {
$orderby = 'none';
}
if (!empty($include)) {
$include = preg_replace('/[^0-9,]+/', '', $include);
$_attachments = get_posts(array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
$attachments = array();
foreach ($_attachments as $key => $val) {
$attachments[$val->ID] = $_attachments[$key];
}
} elseif (!empty($exclude)) {
$exclude = preg_replace('/[^0-9,]+/', '', $exclude);
$attachments = get_children(array('post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
} else {
$attachments = get_children(array('post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
}
if (empty($attachments)) {
return '';
}
if (is_feed()) {
$output = "\n";
foreach ($attachments as $att_id => $attachment) {
$output .= wp_get_attachment_link($att_id, $size, true) . "\n";
}
return $output;
}
$itemtag = tag_escape($itemtag);
$captiontag = tag_escape($captiontag);
$columns = intval($columns);
$itemwidth = $columns > 0 ? floor(100 / $columns) : 100;
$float = is_rtl() ? 'right' : 'left';
$output = '<div class="owl-carousel portfolio-slider custom-controls">';
$i = 0;
foreach ($attachments as $id => $attachment) {
$link = isset($attr['link']) && 'file' == $attr['link'] ? wp_get_attachment_link($id, $size, false, false) : wp_get_attachment_link($id, $size, true, false);
$output .= '<div class="item">' . wp_get_attachment_image($id, 'full');
if ($captiontag && trim($attachment->post_excerpt)) {
$output .= "\n <{$captiontag} class='caption sfb white-bg small'>\n " . wpautop($attachment->post_excerpt) . "\n </{$captiontag}>";
}
$output .= '</div>';
}
$output .= "</div>\n";
return $output;
}
示例13: custom_gallery
function custom_gallery($attr)
{
$post = get_post();
static $instance = 0;
$instance++;
$attr['columns'] = 1;
$attr['size'] = 'full';
$attr['link'] = 'none';
$attr['orderby'] = 'post__in';
$attr['include'] = $attr['ids'];
$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']);
}
}
extract(shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => $post->ID, 'itemtag' => 'div', 'icontag' => 'div', 'captiontag' => 'p', 'columns' => 1, 'size' => 'thumbnail', 'include' => '', 'exclude' => ''), $attr));
$id = intval($id);
if ('RAND' == $order) {
$orderby = 'none';
}
if (!empty($include)) {
$_attachments = get_posts(array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
$attachments = array();
foreach ($_attachments as $key => $val) {
$attachments[$val->ID] = $_attachments[$key];
}
} elseif (!empty($exclude)) {
$attachments = get_children(array('post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
} else {
$attachments = get_children(array('post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
}
if (empty($attachments)) {
return '';
}
$gallery_style = $gallery_div = '';
if (apply_filters('use_default_gallery_style', true)) {
$gallery_style = "<!-- see gallery_shortcode() in functions.php -->";
}
$gallery_div = "<div class='gallery gallery-columns-1 gallery-size-full'>";
$output = apply_filters('gallery_style', $gallery_style . "\n\t\t" . $gallery_div);
foreach ($attachments as $id => $attachment) {
$link = wp_get_attachment_link($id, 'thumbnail', false, false);
$output .= "\n\t\t\t\n <div class='imgc'>\n\t\t\t\t{$link} \n\t\t\t</div>";
if ($captiontag && trim($attachment->post_excerpt)) {
$output .= "\n\t\t\t\t<p class='wp-caption-text homepage-gallery-caption'>\n\t\t\t\t" . wptexturize($attachment->post_excerpt) . "\n\t\t\t\t</p>";
}
$output .= "";
}
$output .= "</div>\n";
return $output;
}
示例14: tfuse_minigallery
/**
* Minigallery
*
* To override this shortcode in a child theme, copy this file to your child theme's
* theme_config/extensions/shortcodes/shortcodes/ folder.
*
* Optional arguments:
* id: post/page id
* order: ASC, DESC
* orderby:
* include:
* exclude:
* pretty: true/false use or not prettyPhoto
* icon_plus:
* class: css class e.g. boxed
* carousel: jCarousel Configuration. http://sorgalla.com/projects/jcarousel/
*/
function tfuse_minigallery($attr, $content = null)
{
global $post;
if (isset($attr['orderby'])) {
$attr['orderby'] = sanitize_sql_orderby($attr['orderby']);
if (!$attr['orderby']) {
unset($attr['orderby']);
}
}
extract(shortcode_atts(array('order' => 'ASC', 'orderby' => 'menu_order ID', 'id' => isset($post->ID) ? $post->ID : $attr['id'], 'include' => '', 'exclude' => '', 'pretty' => true, 'icon_plus' => '<span></span>', 'carousel' => 'easing: "easeInOutQuint",animation: 600', 'class' => 'boxed'), $attr));
if (!empty($include)) {
$include = preg_replace('/[^0-9,]+/', '', $include);
$_attachments = get_posts(array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
$attachments = array();
foreach ($_attachments as $key => $val) {
$attachments[$val->ID] = $_attachments[$key];
}
} elseif (!empty($exclude)) {
$exclude = preg_replace('/[^0-9,]+/', '', $exclude);
$attachments = get_children(array('post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
} else {
$attachments = get_children(array('post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
}
if (empty($attachments)) {
return '';
}
$uniq = rand(1, 200);
$out = '
<script type="text/javascript">
jQuery(document).ready(function($) {
$("#mycarousel' . $uniq . '").jcarousel({
' . $carousel . '
});
});
</script>
';
$out .= '
<div class="minigallery-list minigallery ' . $class . '">
<ul id="mycarousel' . $uniq . '" class="jcarousel-skin-tango">';
if ($icon_plus) {
$out .= '<span></span>';
}
foreach ($attachments as $id => $attachment) {
if ($pretty) {
$out .= '<li><a href="' . $attachment->guid . '" rel="prettyPhoto[gallery' . $uniq . ']">' . '<img src="' . TF_GET_IMAGE::get_src_link($attachment->guid, 102, 102) . '" alt=' . $attachment->post_title . '>' . $icon_plus . '</a></li>';
} else {
$out .= '<li>' . '<img src="' . TF_GET_IMAGE::get_src_link($attachment->guid, 102, 102) . '" alt=' . $attachment->post_title . '>' . '</li>';
}
}
$out .= '
</ul>
</div>
<div class="clear"></div>
';
return $out;
}
示例15: get_network_userlabels
static function get_network_userlabels($order_by = 'cap_title', $order = 'ASC')
{
global $wpdb;
$table_name = $wpdb->base_prefix . WPUND_USERLABEL_TABLE;
$query = 'SELECT * FROM ' . $table_name . ' WHERE blog_id=0 ';
if ($sql_orderby = sanitize_sql_orderby("{$order_by} {$order}")) {
$query .= " ORDER BY {$sql_orderby}";
}
return self::_get_cached_result($query);
}