StarterBlog()->get_setting( $customizer_args['prefix'] . '_layout' ), 'excerpt_type' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_excerpt_type' ), 'excerpt_length' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_excerpt_length' ), 'excerpt_more' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_excerpt_more' ), 'more_text' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_more_text' ), 'more_display' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_more_display' ), 'thumbnail_size' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_thumbnail_size' ), 'hide_thumb_if_empty' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_hide_thumb_if_empty' ), 'meta_config' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_meta_config' ), 'meta_sep' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_meta_sep' ), 'author_avatar' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_author_avatar' ), 'media_hide' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_media_hide' ), ); $size = StarterBlog()->get_setting( $customizer_args['prefix'] . '_avatar_size' ); if ( is_array( $size ) && isset( $size['value'] ) ) { $args['avatar_size'] = absint( $size['value'] ); } $pagination = array( 'show_paging' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_pg_show_paging' ), 'show_nav' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_pg_show_nav' ), 'mid_size' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_pg_mid_size' ), 'prev_text' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_pg_prev_text' ), 'next_text' => StarterBlog()->get_setting( $customizer_args['prefix'] . '_pg_next_text' ), ); $args['pagination'] = is_array( $pagination ) ? $pagination : array(); $this->customizer_args = $customizer_args; $_args = wp_parse_args( $args, array( 'layout' => '', 'columns' => '', 'excerpt_length' => '', 'excerpt_more' => '', 'more_text' => '', 'more_display' => 1, 'thumbnail_size' => '', 'hide_thumb_if_empty' => 1, 'pagination' => array(), 'meta_config' => array(), 'meta_sep' => null, ) ); if ( ! $_args['layout'] || is_array( $_args['layout'] ) ) { $_args['layout'] = 'blog_classic'; } $_args['pagination'] = wp_parse_args( $_args['pagination'], array( 'show_paging' => 1, 'show_number' => 1, 'show_nav' => 1, 'prev_text' => '', 'next_text' => '', 'mid_size' => 3, ) ); if ( ! $_args['columns'] ) { $c = $this->get_predefined( $_args['layout'] ); if ( $c ) { $_args['columns'] = $c['columns']; } } $_args['columns'] = absint( $_args['columns'] ); if ( $_args['columns'] < 1 ) { $_args['columns'] = 1; } if ( ( ! isset( $args['columns'] ) || ! $args['columns'] ) && 'blog_masonry' == $_args['layout'] ) { $_args['columns'] = 3; } if ( in_array( $_args['layout'], array( 'blog_lateral', 'blog_classic' ) ) ) { // phpcs:ignore $_args['columns'] = 1; } $_args['pagination']['mid_size'] = absint( $_args['pagination']['mid_size'] ); if ( empty( $_args['meta_config'] ) ) { $_args['meta_config'] = array( array( '_key' => 'author', ), array( '_key' => 'date', ), array( '_key' => 'categories', ), array( '_key' => 'comment', ), ); } $this->args = $_args; $this->args['header_fields'] = array( array( '_visibility' => '', '_key' => 'title', ), array( '_key' => 'meta', '_visibility' => '', ), ); $this->args['body_fields'] = array( array( '_key' => 'excerpt', '_visibility' => '', ), ); $this->args['footer_fields'] = array( array( '_key' => 'readmore', '_visibility' => '', ), ); $this->args['media_fields'] = array(); if ( isset( $this->customizer_args['_overwrite'] ) ) { $this->args = array_merge( $this->args, $this->customizer_args['_overwrite'] ); } StarterBlog_Post_Entry()->set_config( $this->args ); } function has_only_field( $fields, $field = 'category' ) { $check = false; $n = 0; $c = false; foreach ( (array) $fields as $item ) { $item = wp_parse_args( $item, array( '_key' => '', '_visibility' => '', ) ); if ( 'hidden' !== $item['_visibility'] ) { $n ++; if ( $item['_key'] == $field ) { $c = true; } } } if ( $c && $n < 2 ) { $check = true; } else { $check = false; } return $check; } function count_item_visibility( $fields ) { $n = 0; foreach ( (array) $fields as $item ) { $item = wp_parse_args( $item, array( '_key' => '', '_visibility' => '', ) ); if ( 'hidden' !== $item['_visibility'] ) { $n ++; } } return $n; } function item_part( $part = '', $post = null, $inner_class = '' ) { $n = $this->count_item_visibility( $this->args[ $part . '_fields' ] ); if ( isset( $this->args[ $part . '_fields' ] ) && $n > 0 ) { if ( 'media' == $part && $this->has_only_field( $this->args[ $part . '_fields' ] ) ) { StarterBlog_Post_Entry()->build_fields( $this->args[ $part . '_fields' ], $post ); } else { $only_more = $this->has_only_field( $this->args[ $part . '_fields' ], 'readmore' ); $classes = array(); $classes[] = 'entry-article-part entry-article-' . $part; if ( $only_more ) { $classes[] = 'only-more'; } echo '