multilanguage
1 year ago
colibri.php
2 years ago
contact-form.php
2 years ago
entity.php
4 years ago
get-body-class.php
4 years ago
get-classic-page-template.php
4 years ago
get-page-query.php
4 years ago
get-page-title.php
4 years ago
get-post-content.php
4 years ago
get-post-styles.php
4 years ago
index.php
1 year ago
kubio-cloud.php
2 years ago
page-templates.php
4 years ago
save-template-parts-filter.php
2 years ago
subscribe-form.php
4 years ago
typekit.php
4 years ago
update-settings-flags.php
1 year ago
get-page-query.php
65 lines
| 1 | <?php |
| 2 | |
| 3 | use IlluminateAgnostic\Arr\Support\Arr; |
| 4 | use Kubio\Core\Utils; |
| 5 | |
| 6 | add_action( |
| 7 | 'template_redirect', |
| 8 | function () { |
| 9 | |
| 10 | if ( Arr::has( $_REQUEST, '__kubio-page-query' ) && Utils::canEdit() ) { |
| 11 | |
| 12 | $cats = array_unique( |
| 13 | array_merge( |
| 14 | array( get_query_var( 'cat', null ) ), |
| 15 | get_query_var( 'category__in', array() ) |
| 16 | ) |
| 17 | ); |
| 18 | |
| 19 | foreach ( $cats as $index => $cat ) { |
| 20 | if ( ! $cat ) { |
| 21 | unset( $cats[ $index ] ); |
| 22 | } |
| 23 | } |
| 24 | |
| 25 | $tags = array_unique( |
| 26 | array_merge( |
| 27 | array( get_query_var( 'tag_id', null ) ), |
| 28 | get_query_var( 'tag__in', array() ) |
| 29 | ) |
| 30 | ); |
| 31 | |
| 32 | foreach ( $tags as $index => $tag ) { |
| 33 | if ( ! $tag ) { |
| 34 | unset( $tags[ $index ] ); |
| 35 | } |
| 36 | } |
| 37 | |
| 38 | $post_type = get_query_var( 'post_type', '' ); |
| 39 | |
| 40 | if ( ! $post_type ) { |
| 41 | $post_type = 'post'; |
| 42 | } |
| 43 | |
| 44 | $vars = array( |
| 45 | 'offset' => 0, |
| 46 | 'categoryIds' => $cats, |
| 47 | 'postType' => $post_type, |
| 48 | 'tagIds' => $tags, |
| 49 | 'order' => strtolower( get_query_var( 'order', 'desc' ) ), |
| 50 | 'orderBy' => strtolower( get_query_var( 'orderBy', 'date' ) ), |
| 51 | 'author' => get_query_var( 'author', 0 ), |
| 52 | 'search' => get_query_var( 's', '' ), |
| 53 | 'exclude' => get_query_var( 'post__not_in', array() ), |
| 54 | 'sticky' => '', |
| 55 | 'perPage' => intval( get_option( 'posts_per_page', 10 ) ), |
| 56 | ); |
| 57 | |
| 58 | return wp_send_json_success( |
| 59 | $vars |
| 60 | ); |
| 61 | } |
| 62 | }, |
| 63 | PHP_INT_MAX |
| 64 | ); |
| 65 |