PluginProbe ʕ •ᴥ•ʔ
The Post Grid – Shortcode, Gutenberg Blocks and Elementor Addon for Post Grid / 4.2.0
The Post Grid – Shortcode, Gutenberg Blocks and Elementor Addon for Post Grid v4.2.0
7.9.3 7.9.2 trunk 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.0.5 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.1.5 4.2.0 4.2.1 4.2.2 4.2.3 5.0.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 6.0.0 7.0.0 7.0.1 7.0.2 7.1.0 7.2.0 7.2.1 7.2.10 7.2.11 7.2.2 7.2.3 7.2.4 7.2.5 7.2.6 7.2.7 7.2.8 7.2.9 7.3.0 7.3.1 7.4.0 7.4.1 7.4.2 7.4.3 7.5.0 7.6.0 7.6.1 7.7.0 7.7.1 7.7.10 7.7.11 7.7.12 7.7.13 7.7.14 7.7.15 7.7.16 7.7.17 7.7.18 7.7.19 7.7.2 7.7.20 7.7.21 7.7.22 7.7.3 7.7.4 7.7.5 7.7.6 7.7.7 7.7.8 7.7.9 7.8.0 7.8.1 7.8.2 7.8.3 7.8.4 7.8.5 7.8.6 7.8.7 7.8.8 7.8.9 7.9.0 7.9.1
the-post-grid / app / Controllers / Hooks / ActionHooks.php
the-post-grid / app / Controllers / Hooks Last commit date
ActionHooks.php 3 years ago FilterHooks.php 3 years ago
ActionHooks.php
51 lines
1 <?php
2 /**
3 * Action Hooks class.
4 *
5 * @package RT_TPG
6 */
7
8 namespace RT\ThePostGrid\Controllers\Hooks;
9
10 // Do not allow directly accessing this file.
11 if ( ! defined( 'ABSPATH' ) ) {
12 exit( 'This script cannot be accessed directly.' );
13 }
14
15 /**
16 * Action Hooks class.
17 */
18 class ActionHooks {
19 /**
20 * Class init.
21 *
22 * @return void
23 */
24 public static function init() {
25 add_action( 'pre_get_posts', [ __CLASS__, 'category_query' ], 10 );
26 }
27
28 /**
29 * Category query
30 *
31 * @param object $query Query.
32 * @return void
33 */
34 public static function category_query( $query ) {
35 if ( ! is_admin() && is_category() && $query->is_main_query() ) {
36 $settings = get_option( rtTPG()->options['settings'] );
37 $sc_id = isset( $settings['template_category'] ) ? absint( $settings['template_category'] ) : 0;
38
39 if ( $sc_id ) {
40 $posts_per_page = $sc_id ? absint( get_post_meta( $sc_id, 'posts_per_page', true ) ) : 0;
41 $pagination = $sc_id ? get_post_meta( $sc_id, 'pagination', true ) : false;
42 $posts_loading_type = $sc_id ? get_post_meta( $sc_id, 'posts_loading_type', true ) : '';
43
44 if ( $pagination && 'pagination' === $posts_loading_type && $posts_per_page ) {
45 $query->set( 'posts_per_page', $posts_per_page );
46 }
47 }
48 }
49 }
50 }
51