@@ -97,30 +97,30 @@ public static function init() {
9797 /**
9898 * Track the page view.
9999 *
100- * @param string|null $referrer Referrer URL .
101- * @param string|null $target Target URL .
100+ * @param array $tracking_data Tracking data .
101+ * @param array $tracking_meta Tracking meta .
102102 *
103103 * @return void
104104 *
105105 * @since 0.1.0
106106 * @since 1.7.0 $is_snippet parameter added.
107107 * @since 2.0.0 Migration from Statify_Frontend::track_visit to Statify::track with multiple parameters.
108108 */
109- protected static function track ( $ referrer , $ target ) {
109+ protected static function track ( $ tracking_data , $ tracking_meta ) {
110110 if ( empty ( Statify_Frontend::get_tracking_data () ) ) {
111111 Statify_Frontend::init_tracking_data ();
112112 }
113113
114114 // Fallbacks for uninitialized or omitted target and referrer values.
115- if ( is_null ( $ target ) ) {
116- $ target = '/ ' ;
115+ if ( is_null ( $ tracking_data [ ' target ' ] ) ) {
116+ $ tracking_data [ ' target ' ] = '/ ' ;
117117 }
118- if ( is_null ( $ referrer ) ) {
119- $ referrer = '' ;
118+ if ( is_null ( $ tracking_data [ ' referrer ' ] ) ) {
119+ $ tracking_data [ ' referrer ' ] = '' ;
120120 }
121121
122122 // Invalid target?
123- if ( empty ( $ target ) || ! wp_validate_redirect ( $ target , false ) ) {
123+ if ( empty ( $ tracking_data [ ' target ' ] ) || ! wp_validate_redirect ( $ tracking_data [ ' target ' ] , false ) ) {
124124 return ;
125125 }
126126
@@ -130,28 +130,28 @@ protected static function track( $referrer, $target ) {
130130 }
131131
132132 // Sanitize referrer url.
133- if ( ! empty ( $ referrer ) && false === self ::strposa ( $ referrer , array ( home_url (), network_admin_url () ) ) ) {
134- $ referrer = esc_url_raw ( $ referrer , array ( 'http ' , 'https ' ) );
133+ if ( ! empty ( $ tracking_data [ ' referrer ' ] ) && false === self ::strposa ( $ tracking_data [ ' referrer ' ] , array ( home_url (), network_admin_url () ) ) ) {
134+ $ tracking_data [ ' referrer ' ] = esc_url_raw ( $ tracking_data [ ' referrer ' ] , array ( 'http ' , 'https ' ) );
135135 } else {
136- $ referrer = '' ;
136+ $ tracking_data [ ' referrer ' ] = '' ;
137137 }
138138
139139 // Relative target URL.
140- $ target = user_trailingslashit ( str_replace ( home_url ( '/ ' , 'relative ' ), '/ ' , $ target ) );
140+ $ tracking_data [ ' target ' ] = user_trailingslashit ( str_replace ( home_url ( '/ ' , 'relative ' ), '/ ' , $ tracking_data [ ' target ' ] ) );
141141
142142 /* Global vars */
143143 global $ wp_rewrite ;
144144
145145 // Trim target URL.
146146 if ( $ wp_rewrite ->permalink_structure ) {
147- $ target = wp_parse_url ( $ target , PHP_URL_PATH );
147+ $ tracking_data [ ' target ' ] = wp_parse_url ( $ tracking_data [ ' target ' ] , PHP_URL_PATH );
148148 }
149149
150150 // Init rows.
151151 $ data = array (
152152 'created ' => current_time ( 'Y-m-d ' ),
153- 'referrer ' => $ referrer ,
154- 'target ' => $ target ,
153+ 'referrer ' => $ tracking_data [ ' referrer ' ] ,
154+ 'target ' => $ tracking_data [ ' target ' ] ,
155155 'hits ' => 1 ,
156156 );
157157
@@ -161,9 +161,7 @@ protected static function track( $referrer, $target ) {
161161
162162 $ statify_id = $ wpdb ->insert_id ;
163163
164- $ tracking_meta = Statify_Frontend::get_tracking_data ();
165-
166- foreach ( self ::$ tracking_meta as $ meta_field ) {
164+ foreach ( Statify_Frontend::get_tracking_data () as $ meta_field ) {
167165 if ( array_key_exists ( $ meta_field ['meta_key ' ], $ tracking_meta ) ) {
168166 $ meta_value = $ tracking_meta [ $ meta_field ['meta_key ' ] ];
169167
0 commit comments