Home / Attachments / auto sort all media grids
Duplicate Snippet

Embed Snippet on Your Site

auto sort all media grids

Code Preview
php
<?php
add_filter('vc_media_grid_build_query', 'auto_sort_all_vc_media_grids', 999, 2);
function auto_sort_all_vc_media_grids_v2($query_args, $grid_data) {
    
    // Работи само за Images режим с include
    if (!empty($query_args['include']) && $query_args['post_type'] == 'attachment') {
        
        $ids = explode(',', $query_args['include']);
        
        // Взимаме ID-тата и ги сортираме по Title
        $sorted_ids = get_posts(array(
            'post__in'       => $ids,
            'post_type'      => 'attachment',
            'orderby'        => 'title',
            'order'          => 'ASC',
            'posts_per_page' => -1,
            'fields'         => 'ids',
            'suppress_filters' => false
        ));
        
        // Подменяме include с подредените ID-та
        $query_args['include'] = implode(',', $sorted_ids);
        $query_args['orderby'] = 'post__in';
        unset($query_args['order']);
    }
    
    return $query_args;
}

Comments

Add a Comment