Plugin Directory

Changeset 2028461


Ignore:
Timestamp:
02/11/2019 12:34:09 PM (7 years ago)
Author:
nikolam
Message:

Update setting comment

Location:
sermon-manager-for-wordpress/trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • sermon-manager-for-wordpress/trunk/includes/admin/settings/class-sm-settings-debug.php

    r2020412 r2028461  
    5050                'id'       => 'sort_bible_books',
    5151                'default'  => 'yes',
    52             ),
    53             array(
    54                 'title'    => __( 'Date Used', 'sermon-manager-for-wordpress' ),
    55                 'type'     => 'checkbox',
    56                 'desc'     => __( 'Show "Published" date instead of "Preached" date', 'sermon-manager-for-wordpress' ),
    57                 'desc_tip' => __( 'This will just change what date will be shown on frontend and in the podcast feed. Ordering will be the same. Default unchecked.', 'sermon-manager-for-wordpress' ),
    58                 'id'       => 'use_published_date',
    59                 'default'  => 'no',
    6052            ),
    6153            array(
  • sermon-manager-for-wordpress/trunk/includes/admin/settings/class-sm-settings-display.php

    r1978969 r2028461  
    5757            ),
    5858            array(
     59                'title'   => __( 'Order sermons by', 'sermon-manager-for-wordpress' ),
     60                'type'    => 'select',
     61                'options' => array(
     62                    'date_preached' => 'Date Preached',
     63                    'date'          => 'Date Published',
     64                    'title'         => 'Title',
     65                    'ID'            => 'ID',
     66                    'random'        => 'Random',
     67                ),
     68                'desc'    => __( 'Changes the way sermons are ordered by default. Affects the RSS feed and shown date as well. Default "Date Preached".', 'sermon-manager-for-wordpress' ),
     69                'default' => 'date_preached',
     70                'id'      => 'archive_orderby',
     71            ),
     72            array(
     73                'title'   => __( 'Order sermons', 'sermon-manager-for-wordpress' ),
     74                'type'    => 'select',
     75                'options' => array(
     76                    'desc' => 'Descending',
     77                    'asc'  => 'Ascending',
     78                ),
     79                'desc'    => __( 'Related to the setting above. Default descending.', 'sermon-manager-for-wordpress' ),
     80                'default' => 'desc',
     81                'id'      => 'archive_order',
     82            ),
     83            array(
    5984                'title'    => __( 'Display Audio Player', 'sermon-manager-for-wordpress' ),
    6085                'type'     => 'checkbox',
     
    99124                'id'       => 'service_type_filtering',
    100125                'default'  => 'no',
    101                 'disabled' => method_exists('\SermonManagerPro\Templating\Templating_Manager', 'is_active') ? \SermonManagerPro\Templating\Templating_Manager::is_active() : false,
     126                'disabled' => method_exists( '\SermonManagerPro\Templating\Templating_Manager', 'is_active' ) ? \SermonManagerPro\Templating\Templating_Manager::is_active() : false,
    102127            ),
    103128            array(
  • sermon-manager-for-wordpress/trunk/includes/class-sm-dates-wp.php

    r1993389 r2028461  
    5050         * Exit if disabled.
    5151         */
    52         if ( apply_filters( 'sm_dates_wp', true ) === false || SermonManager::getOption( 'use_published_date' ) ) {
     52        if ( apply_filters( 'sm_dates_wp', true ) === false || 'date' === SermonManager::getOption( 'archive_orderby' ) ) {
    5353            return;
    5454        }
  • sermon-manager-for-wordpress/trunk/includes/class-sm-shortcodes.php

    r2024626 r2028461  
    620620     */
    621621    public function get_latest_series_with_image() {
    622         $series = get_terms(
    623             array(
    624                 'taxonomy'     => 'wpfc_sermon_series',
    625                 'hide_empty'   => false,
    626                 'orderby'      => 'meta_value_num',
    627                 'order'        => 'DESC',
    628                 'meta_key'     => 'sermon_date',
    629                 'meta_value'   => time(),
    630                 'meta_compare' => '<=',
    631             )
    632         );
     622        $default_orderby = SermonManager::getOption( 'archive_orderby' );
     623        $default_order   = SermonManager::getOption( 'archive_order' );
     624
     625        $query_args = array(
     626            'taxonomy'   => 'wpfc_sermon_series',
     627            'hide_empty' => false,
     628            'order'      => strtoupper( $default_order ),
     629        );
     630
     631        switch ( $default_orderby ) {
     632            case 'date_preached':
     633                $query_args += array(
     634                    'orderby'      => 'meta_value_num',
     635                    'meta_key'     => 'sermon_date',
     636                    'meta_value'   => time(),
     637                    'meta_compare' => '<=',
     638                );
     639                break;
     640            default:
     641                $query_args += array(
     642                    'orderby' => $default_orderby,
     643                );
     644        }
     645
     646        $series = get_terms( $query_args );
    633647
    634648        // Fallback to next one until we find the one that has an image.
     
    776790            'per_page'           => get_option( 'posts_per_page' ) ?: 10,
    777791            'sermons'            => false, // Show only sermon IDs that are set here.
    778             'order'              => 'DESC',
    779             'orderby'            => 'date',
     792            'order'              => strtoupper( SermonManager::getOption( 'archive_order' ) ),
     793            'orderby'            => SermonManager::getOption( 'archive_orderby' ),
    780794            'disable_pagination' => 0,
    781795            'image_size'         => 'post-thumbnail',
     
    848862        if ( ! in_array( strtolower( $args['orderby'] ), array(
    849863            'date',
     864            'preached',
     865            'date_preached',
     866            'published',
     867            'date_published',
    850868            'id',
    851869            'none',
     
    855873            'comment_count',
    856874        ) ) ) {
    857             $args['orderby'] = 'date';
     875            $args['orderby'] = 'date_preached';
    858876        }
    859877
    860878        if ( 'date' === $args['orderby'] ) {
    861             $args['orderby'] = 'meta_value_num';
    862 
    863             $query_args['meta_key']       = 'sermon_date';
    864             $query_args['meta_value_num'] = time();
    865             $query_args['meta_compare']   = '<=';
     879            $args['orderby'] = 'date' === SermonManager::getOption( 'archive_orderby' ) ? 'date_published' : 'date_preached';
     880        }
     881
     882        switch ( $args['orderby'] ) {
     883            case 'preached':
     884            case 'date_preached':
     885                $args['orderby'] = 'meta_value_num';
     886
     887                $query_args['meta_key']       = 'sermon_date';
     888                $query_args['meta_value_num'] = time();
     889                $query_args['meta_compare']   = '<=';
     890                break;
     891            case 'published':
     892            case 'date_published':
     893                $args['orderby'] = 'date';
     894                break;
     895            case 'id':
     896                $args['orderby'] = 'ID';
     897                break;
    866898        }
    867899
  • sermon-manager-for-wordpress/trunk/readme.txt

    r2024654 r2028461  
    125125### 2.15.14 ###
    126126* New: Add compatibility for Pro theme
     127* New: Add a setting to change default sermon ordering (in "Display" tab)
    127128* Fix: Improve [latest_series] shortcode
    128129* Fix: Service Type filter in backend not working when slug is different from default
  • sermon-manager-for-wordpress/trunk/sermons.php

    r2020412 r2028461  
    251251        if ( ! is_admin() && ( $query->is_main_query() ) ) {
    252252            if ( is_post_type_archive( 'wpfc_sermon' ) || is_tax( sm_get_taxonomies() ) ) {
    253                 $query->set( 'meta_key', 'sermon_date' );
    254                 $query->set( 'meta_value_num', time() );
    255                 $query->set( 'meta_compare', '<=' );
    256                 $query->set( 'orderby', 'meta_value_num' );
    257                 $query->set( 'order', 'DESC' );
     253                $orderby = SermonManager::getOption( 'archive_orderby' );
     254                $order   = SermonManager::getOption( 'archive_order' );
     255
     256                switch ( $orderby ) {
     257                    case 'date_preached':
     258                        $query->set( 'meta_key', 'sermon_date' );
     259                        $query->set( 'meta_value_num', time() );
     260                        $query->set( 'meta_compare', '<=' );
     261                        $query->set( 'orderby', 'meta_value_num' );
     262                        break;
     263                    case 'date_published':
     264                        $query->set( 'orderby', 'date' );
     265                        break;
     266                    case 'title':
     267                    case 'random':
     268                    case 'id':
     269                        $query->set( 'orderby', $orderby );
     270                        break;
     271                }
     272
     273                $query->set( 'order', strtoupper( $order ) );
    258274
    259275                /**
  • sermon-manager-for-wordpress/trunk/views/partials/content-sermon-archive.php

    r2019039 r2028461  
    6565                    <?php endif; ?>
    6666                    <div class="wpfc-sermon-meta-item wpfc-sermon-meta-date">
    67                         <?php if ( SermonManager::getOption( 'use_published_date' ) ) : ?>
     67                        <?php if ( 'date' === SermonManager::getOption( 'archive_orderby' ) ) : ?>
    6868                            <?php the_date(); ?>
    6969                        <?php else : ?>
  • sermon-manager-for-wordpress/trunk/views/partials/content-sermon-single.php

    r1958049 r2028461  
    3232            <div class="wpfc-sermon-single-header">
    3333                <div class="wpfc-sermon-single-meta-item wpfc-sermon-single-meta-date">
    34                     <?php if ( SermonManager::getOption( 'use_published_date' ) ) : ?>
     34                    <?php if ( 'date' === SermonManager::getOption( 'archive_orderby' ) ) : ?>
    3535                        <?php the_date(); ?>
    3636                    <?php else : ?>
  • sermon-manager-for-wordpress/trunk/views/wpfc-podcast-feed.php

    r1997014 r2028461  
    3434    'podcast_sermon_image_series'     => '',
    3535    'podtrac'                         => '',
    36     'use_published_date'              => '',
    3736);
    3837
     
    7069}
    7170
     71// Show published date if we are ordering by published.
     72$settings['use_published_date'] = 'date' === SermonManager::getOption( 'archive_orderby' );
     73
    7274/**
    7375 * Create the query for sermons.
     
    7678    'post_type'      => 'wpfc_sermon',
    7779    'posts_per_page' => $settings['podcasts_per_page'],
    78     'meta_key'       => 'sermon_date',
    79     'meta_value_num' => time(),
    80     'meta_compare'   => '<=',
    81     'orderby'        => 'meta_value_num',
    82     'order'          => 'DESC',
     80    'order'          => strtoupper( SermonManager::getOption( 'archive_order' ) ),
    8381    'paged'          => isset( $_GET['paged'] ) ? intval( $_GET['paged'] ) : 1,
    8482    'meta_query'     => array(
     
    9593    ),
    9694);
     95
     96switch ( SermonManager::getOption( 'archive_orderby' ) ) {
     97    case 'date_preached':
     98        $args += array(
     99            'meta_key'       => 'sermon_date',
     100            'meta_value_num' => time(),
     101            'meta_compare'   => '<=',
     102            'orderby'        => 'meta_value_num',
     103        );
     104        break;
     105    default:
     106        $args += array(
     107            'orderby' => SermonManager::getOption( 'archive_orderby' ),
     108        );
     109        break;
     110}
     111
    97112
    98113/**
     
    309324                    <?php do_action( 'wpfc-podcast/feed-item-end' ); ?>
    310325                </item>
    311                 <?php
     326            <?php
    312327            endwhile;
    313328        endif;
Note: See TracChangeset for help on using the changeset viewer.