ALNP_Twenty_Nineteen   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 46
Duplicated Lines 100 %

Coupling/Cohesion

Components 0
Dependencies 0

Importance

Changes 0
Metric Value
dl 46
loc 46
rs 10
c 0
b 0
f 0
wmc 3
lcom 0
cbo 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A init() 7 7 1
A add_theme_support() 10 10 1
A alnp_make_template_redirect() 3 3 1

How to fix   Duplicated Code   

Duplicated Code

Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.

Common duplication problems, and corresponding solutions are:

1
<?php
2
/**
3
 * Auto Load Next Post Theme Support: Twenty Nineteen
4
 *
5
 * Applies support for WordPress Twenty Nineteen Theme.
6
 *
7
 * @since    1.5.5
8
 * @author   Sébastien Dumont
9
 * @category Theme Support
10
 * @package  Auto Load Next Post/Theme Support
11
 * @license  GPL-2.0+
12
 */
13
14
// Exit if accessed directly.
15
if ( ! defined( 'ABSPATH' ) ) {
16
	exit;
17
}
18
19
/**
20
 * ALNP_Twenty_Nineteen class.
21
 */
22 View Code Duplication
class ALNP_Twenty_Nineteen {
23
24
	/**
25
	 * Initlize Theme.
26
	 *
27
	 * @access public
28
	 * @static
29
	 */
30
	public static function init() {
31
		// Add theme support and preset the theme selectors.
32
		add_action( 'after_setup_theme', array( __CLASS__, 'add_theme_support' ) );
33
34
		// Filters the repeater template location.
35
		add_filter( 'alnp_template_redirect', array( __CLASS__, 'alnp_make_template_redirect' ) );
36
	} // END init()
37
38
	/**
39
	 * Add theme support by providing the theme selectors
40
	 * to be applied once the theme is activated.
41
	 *
42
	 * @access public
43
	 * @static
44
	 */
45
	public static function add_theme_support() {
46
		add_theme_support( 'auto-load-next-post', array(
47
			'content_container'    => 'main.site-main',
48
			'title_selector'       => 'h1.entry-title',
49
			'navigation_container' => 'nav.post-navigation',
50
			'comments_container'   => 'section#comments',
51
			'load_js_in_footer'    => 'no',
52
			'lock_js_in_footer'    => 'no',
53
		) );
54
	} // END add_theme_support()
55
56
	/**
57
	 * Filters the location of the repeater template.
58
	 *
59
	 * @access public
60
	 * @static
61
	 * @return string
62
	 */
63
	public static function alnp_make_template_redirect() {
64
		return AUTO_LOAD_NEXT_POST_FILE_PATH . '/template/theme-support/twentynineteen/content-alnp.php';
65
	} // END alnp_make_template_redirect()
66
67
} // END class
68
69
ALNP_Twenty_Nineteen::init();
70