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 |
||
25 | class Give_Forms_Query { |
||
26 | /** |
||
27 | * Preserve args |
||
28 | * |
||
29 | * @since 2.5.0 |
||
30 | * @access public |
||
31 | * |
||
32 | * @var array |
||
33 | */ |
||
34 | public $_args = array(); |
||
35 | |||
36 | /** |
||
37 | * The args to pass to the give_get_forms() query |
||
38 | * |
||
39 | * @since 2.5.0 |
||
40 | * @access public |
||
41 | * |
||
42 | * @var array |
||
43 | */ |
||
44 | public $args = array(); |
||
45 | |||
46 | /** |
||
47 | * The forms found based on the criteria set |
||
48 | * |
||
49 | * @since 2.5.0 |
||
50 | * @access public |
||
51 | * |
||
52 | * @var array |
||
53 | */ |
||
54 | public $forms = array(); |
||
55 | |||
56 | /** |
||
57 | * Default query arguments. |
||
58 | * |
||
59 | * Not all of these are valid arguments that can be passed to WP_Query. The ones that are not, are modified before |
||
60 | * the query is run to convert them to the proper syntax. |
||
61 | * |
||
62 | * @since 2.5.0 |
||
63 | * @access public |
||
64 | * |
||
65 | * @param $args array The array of arguments that can be passed in and used for setting up this form query. |
||
66 | */ |
||
67 | public function __construct( $args = array() ) { |
||
79 | |||
80 | /** |
||
81 | * Retrieve forms. |
||
82 | * |
||
83 | * The query can be modified in two ways; either the action before the |
||
84 | * query is run, or the filter on the arguments (existing mainly for backwards |
||
85 | * compatibility). |
||
86 | * |
||
87 | * @since 2.5.0 |
||
88 | * @access public |
||
89 | * |
||
90 | * @return array |
||
91 | */ |
||
92 | View Code Duplication | public function get_forms() { |
|
147 | |||
148 | /** |
||
149 | * Update forms meta cache |
||
150 | * |
||
151 | * @since 2.5.0 |
||
152 | * @access private |
||
153 | * |
||
154 | * @param $form_ids |
||
155 | */ |
||
156 | public static function update_meta_cache( $form_ids ) { |
||
164 | } |
||
165 |
Duplicated code is one of the most pungent code smells. If you need to duplicate the same code in three or more different places, we strongly encourage you to look into extracting the code into a single class or operation.
You can also find more detailed suggestions in the “Code” section of your repository.