Elementor: How To Sort Posts Based On A Custom Date Field

When you use the Posts widget from Elementor, it allows you to order your posts by title, date, menu order, or random. However, what if you wanted to sort them based on a custom field date, used by Advanced Custom Fields or ACF?

You now can by doing the following:

  1. Be sure to have a custom date field created. In our example, we use, “event_departure_date”.
  2. Go to the page/template in Elementor that you want your posts widget on. Give a name in the “Query ID” field. In our example, we use, “event_sort_date”.
  3. Lastly, go to your theme’s functions.php file and add the following code:
    /* Sort Posts by Custom Date Field */
    add_action( 'elementor/query/event_sort_date', function( $query ) {
    $query->set( 'meta_key', 'event_departure_date' );
    $query->set( 'orderby', 'meta_value_num' );
    $query->set( 'order', 'ASC' );
    });
    

Be sure to change “event_departure_date” and “event_sort_date” to your own.

Other Helpful Articles

How To Close A Mobile Popup Menu in Elementor for a One-Page Site

If you’re making a one-page / landing page site and want to have the mobile popup menu close after clicking on a link, copy the following code: <!– Close Popup once anything within popup is clicked. –> <script> jQuery(function($){ $(document).on(‘click’,’.elementor-location-popup a’, function(event){ elementorProFrontend.modules.popup.closePopup( {}, event); }); }); </script> Now, paste

Read More »

Setting Up WooCommerce Products

Having a WooCommerce store is a great way to sell things online. However, when setting up WooCommerce products, it’s important to note what you will need for adding products to your store. The following are items that are needed for each product: Product Title Product Description and/or Product Short Description

Read More »

What Do You Need Done?:

(Please check all that apply)

Tell Us About You

Almost Done!

Let's Get Some Info

Let's Get Some Info

Let's Get Some Info

Let's Get Some Info

Let's Get Some Info

Let's Get Some Info