Exemplo n.º 1
0
<?php

/**
 * Loop Actions Template
 *
 * The template displays the loop actions on archive pages.
 *
 * @package deTube
 * @subpackage Template
 * @since deTube 1.0
 */
?>
	<?php 
global $wp_query;
$selected_sort_types = dp_selected_sort_types();
// Get selected sort types
$selected_view_types = dp_selected_view_types();
// Get selected view types
/* Get the loop view of current page based on
 * user's cookie and the selected sort types
 */
global $loop_view;
if (!empty($_COOKIE['loop_view']) && in_array($_COOKIE['loop_view'], array_keys($selected_view_types))) {
    $loop_view = $_COOKIE['loop_view'];
} elseif (!empty($selected_view_types)) {
    $_view_types = array_keys($selected_view_types);
    $loop_view = $_view_types[0];
} else {
    $loop_view = 'grid-small';
}
global $section_view;
Exemplo n.º 2
0
function dp_custom_get_posts($query)
{
    if (is_admin()) {
        return;
    }
    $orderby = $query->get('orderby');
    $order = $query->get('order');
    // If no 'orderby' specified, get first sort type from selected sort types
    $selected_sort_types = dp_selected_sort_types();
    if (is_main_query() && !empty($selected_sort_types) && empty($orderby)) {
        $_sort_types = array_keys($selected_sort_types);
        $orderby = $_sort_types[0];
    }
    // Reset query vars based orderby parameter
    if ($orderby == 'comments') {
        $query->set('orderby', 'comment_count');
    } elseif ($orderby == 'views') {
        $query->set('orderby', 'meta_value_num');
        $query->set('meta_key', 'views');
        // The arguments for BAW Post Views Count plugin
        if (function_exists('baw_pvc_main')) {
            global $timings;
            $views_timing = $query->get('views_timing') ? $query->get('views_timing') : 'all';
            $date = $views_timing == 'all' ? '' : '-' . date($timings[$views_timing]);
            $meta_key = apply_filters('baw_count_views_meta_key', '_count-views_' . $views_timing . $date, $views_timing, $date);
            $query->set('meta_key', $meta_key);
        }
    } elseif ($orderby == 'likes') {
        $query->set('orderby', 'meta_value_num');
        $query->set('meta_key', 'likes');
    } elseif ($orderby == 'title' && !$order) {
        // If order by title, and no order specified, set "ASC" as default order.
        $query->set('order', 'ASC');
    }
    // Only display posts on search results page
    if (is_search() && $query->is_main_query()) {
        $query->set('post_type', 'post');
    }
}