PluginProbe ʕ •ᴥ•ʔ
Advanced Ads – Ad Manager & AdSense / 2.0.26
Advanced Ads – Ad Manager & AdSense v2.0.26
2.0.26 2.0.25 2.0.24 2.0.23 2.0.22 2.0.21 1.38.0 1.39.0 1.39.1 1.39.2 1.39.3 1.39.4 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.40.0 1.40.1 1.40.2 1.41.0 1.42.0 1.42.1 1.42.2 1.43.0 1.44.0 1.44.1 1.45.0 1.45.1 1.46.0 1.47.0 1.47.1 1.47.2 1.47.3 1.47.4 1.47.5 1.48.0 1.48.1 1.49.0 1.5.0 1.5.0.1 1.5.1 1.5.2 1.5.2.1 1.5.4 1.5.4.1 1.5.5 1.50.0 1.51.0 1.51.1 1.51.2 1.51.3 1.52.0 1.52.1 1.52.2 1.52.3 1.52.4 1.53.0 1.53.1 1.53.2 1.54.0 1.54.1 1.55.0 1.56.0 1.56.1 1.56.2 1.56.3 1.56.4 1.6 1.6.1 1.6.10 1.6.10.1 1.6.10.2 1.6.11 1.6.11.1 1.6.12 1.6.13 1.6.14 1.6.15 1.6.16 1.6.17 1.6.17.1 1.6.17.2 1.6.2 1.6.2.1 1.6.3 1.6.4 1.6.4.1 1.6.5 1.6.6 1.6.6.1 1.6.7 1.6.7.1 1.6.8 1.6.8.1 1.6.8.2 1.6.8.3 1.6.9 1.6.9.1 1.6.9.2 1.6.9.3 1.6.9.4 1.7 1.7.0.1 1.7.0.2 1.7.0.3 1.7.1 1.7.1.1 1.7.1.2 1.7.1.3 1.7.1.4 1.7.1.5 1.7.10 trunk 1.7.11 1.0.1 1.7.12 1.0.2 1.7.13 1.0.3 1.7.14 1.1.0 1.7.15 1.1.1 1.7.16 1.1.2 1.7.17 1.1.3 1.7.18 1.10 1.7.19 1.10.1 1.7.2 1.10.10 1.7.2.1 1.10.11 1.7.20 1.10.12 1.7.21 1.10.2 1.7.22 1.10.3 1.7.23 1.10.4 1.7.24 1.10.5 1.7.25 1.10.6 1.7.3 1.10.7 1.7.4 1.10.8 1.7.4.1 1.10.9 1.7.4.2 1.11 1.7.4.3 1.11.1 1.7.4.4 1.11.2 1.7.4.5 1.12 1.7.5 1.13 1.7.5.1 1.13.1 1.7.6 1.13.2 1.7.7 1.13.3 1.7.8 1.13.4 1.7.9 1.13.5 1.7.9.1 1.13.6 1.7.9.2 1.13.7 1.7.9.3 1.13.8 1.8 1.14 1.8.1 1.14.1 1.8.10 1.14.10 1.8.11 1.14.11 1.8.12 1.14.2 1.8.13 1.14.3 1.8.14 1.14.4 1.8.15 1.14.5 1.8.16 1.14.6 1.8.17 1.14.7 1.8.18 1.14.8 1.8.19 1.14.9 1.8.2 1.15 1.8.20 1.16 1.8.21 1.16.1 1.8.22 1.17 1.8.23 1.17.1 1.8.24 1.17.10 1.8.25 1.17.10-rc.1 1.8.26 1.17.11 1.8.27 1.17.12 1.8.28 1.17.12-rc.1 1.8.29 1.17.2 1.8.3 1.17.3 1.8.30 1.17.4 1.8.4 1.17.5 1.8.5 1.17.6 1.8.6 1.17.7 1.8.7 1.17.8 1.8.8 1.17.9 1.8.9 1.17.9-beta.1 1.9 1.18.0 2.0.0 1.19.0 2.0.1 1.19.1 2.0.10 1.2 2.0.11 1.2.1 2.0.12 1.2.2 2.0.13 1.2.3 2.0.14 1.2.4 2.0.15 1.2.5 2.0.16 1.2.6 2.0.17 1.2.7 2.0.18 1.20.0 2.0.19 1.20.0-rc.1 2.0.2 1.20.0-rc.2 2.0.20 1.20.1 2.0.3 1.20.2 2.0.4 1.20.3 2.0.5 1.21.0 2.0.6 1.21.1 2.0.7 1.22.0 2.0.8 1.22.1 2.0.9 1.22.2 1.23.0 1.23.1 1.23.2 1.24.0 1.24.1 1.24.2 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.29.0 1.29.1 1.3 1.3.1 1.3.10 1.3.11 1.3.12 1.3.13 1.3.14 1.3.15 1.3.16 1.3.17 1.3.18 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.30.0 1.30.1 1.30.2 1.30.2-rc.1 1.30.3 1.30.4 1.30.4-rc.1 1.30.5 1.31.0 1.31.1 1.32.0 1.32.0-rc.1 1.33.0 1.33.1 1.33.2 1.34.0 1.35.0 1.35.1 1.36.0 1.36.1 1.36.2 1.36.3 1.37.0 1.37.1 1.37.2
advanced-ads / includes / class-autoloader.php
advanced-ads / includes Last commit date
abstracts 4 weeks ago admin 4 weeks ago ads 4 weeks ago compatibility 4 weeks ago crons 4 weeks ago frontend 4 weeks ago groups 4 weeks ago importers 4 weeks ago installation 4 weeks ago interfaces 4 weeks ago license 4 weeks ago placements 4 weeks ago rest 4 weeks ago traits 4 weeks ago utilities 4 weeks ago class-assets-registry.php 1 month ago class-autoloader.php 2 months ago class-cache-invalidator.php 4 weeks ago class-constants.php 4 weeks ago class-content-injector.php 4 weeks ago class-entities.php 5 months ago class-modal.php 4 weeks ago class-modules.php 4 weeks ago class-options.php 4 weeks ago class-plugin.php 4 weeks ago class-post-data.php 1 year ago class-shortcodes.php 4 weeks ago class-upgrades.php 4 weeks ago class-widget.php 4 weeks ago default-hooks.php 6 months ago functions-ad.php 4 weeks ago functions-components.php 4 weeks ago functions-conditional.php 1 year ago functions-core.php 1 year ago functions-group.php 4 weeks ago functions-placement.php 4 weeks ago functions.php 4 weeks ago index.php 2 years ago load_modules.php 4 weeks ago
class-autoloader.php
129 lines
1 <?php
2 /**
3 * The class is responsible for locating and loading the autoloader file used in the plugin.
4 *
5 * @package AdvancedAds
6 * @author Advanced Ads <info@wpadvancedads.com>
7 * @since 1.47.0
8 */
9
10 namespace AdvancedAds;
11
12 defined( 'ABSPATH' ) || exit;
13
14 /**
15 * Autoloader.
16 */
17 class Autoloader {
18
19 /**
20 * Hold autoloader.
21 *
22 * @var mixed
23 */
24 private $autoloader;
25
26 /**
27 * Main instance
28 *
29 * Ensure only one instance is loaded or can be loaded.
30 *
31 * @return Autoloader
32 */
33 public static function get(): Autoloader {
34 static $instance;
35
36 if ( null === $instance ) {
37 $instance = new Autoloader();
38 }
39
40 return $instance;
41 }
42
43 /**
44 * Get hold autoloader.
45 *
46 * @return mixed
47 */
48 public function get_autoloader() {
49 return $this->autoloader;
50 }
51
52 /**
53 * Runs this initializer.
54 *
55 * @return void
56 */
57 public function initialize(): void {
58 $locate = $this->locate();
59
60 if ( ! $locate ) {
61 add_action( 'admin_notices', [ $this, 'missing_autoloader' ] );
62 return;
63 }
64
65 $this->autoloader = require $locate;
66 $this->register_wordpress();
67 }
68
69 /**
70 * Locate the autoload file
71 *
72 * This function searches for the autoload file in the packages directory and vendor directory.
73 *
74 * @return bool|string
75 */
76 private function locate() {
77 $directory = dirname( ADVADS_FILE );
78 $packages = $directory . '/packages/autoload.php';
79 $vendors = $directory . '/vendor/autoload.php';
80 $is_debug = ( defined( 'WP_DEBUG' ) && WP_DEBUG ) || 'local' === wp_get_environment_type();
81
82 if ( is_readable( $packages ) && ( ! $is_debug || ! is_readable( $vendors ) ) ) {
83 return $packages;
84 }
85
86 if ( is_readable( $vendors ) ) {
87 return $vendors;
88 }
89
90 return false;
91 }
92
93 /**
94 * Add WordPress classes to map
95 *
96 * @return void
97 */
98 private function register_wordpress(): void {
99 $this->autoloader->addClassmap(
100 [
101 'WP_List_Table' => ABSPATH . 'wp-admin/includes/class-wp-list-table.php',
102 'WP_Terms_List_Table' => ABSPATH . 'wp-admin/includes/class-wp-terms-list-table.php',
103 ]
104 );
105 }
106
107 /**
108 * If the autoloader is missing, add an admin notice.
109 *
110 * @return void
111 */
112 protected function missing_autoloader(): void {
113 ?>
114 <div class="notice notice-error">
115 <p>
116 <?php
117 printf(
118 /* translators: 1: is a link to a support document. 2: closing link */
119 esc_html__( 'Your installation of Advanced Ads is incomplete. If you installed Advanced Ads from GitHub, %1$s please refer to this document%2$s to set up your development environment.', 'advanced-ads' ),
120 '<a href="' . esc_url( 'https://github.com/advanced-ads/advanced-ads/wiki/How-to-set-up-development-environment' ) . '" target="_blank" rel="noopener noreferrer">',
121 '</a>'
122 );
123 ?>
124 </p>
125 </div>
126 <?php
127 }
128 }
129