PluginProbe ʕ •ᴥ•ʔ
Advanced Ads – Ad Manager & AdSense / 2.0.24
Advanced Ads – Ad Manager & AdSense v2.0.24
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 / admin / class-wordpress-dashboard.php
advanced-ads / includes / admin Last commit date
ads 1 week ago groups 1 week ago metaboxes 1 year ago pages 3 months ago placements 1 week ago class-action-links.php 1 week ago class-addon-box.php 1 year ago class-addon-updater.php 3 months ago class-admin-menu.php 1 week ago class-admin-notices.php 1 year ago class-ajax.php 3 months ago class-assets.php 1 week ago class-authors.php 1 year ago class-edd-updater.php 4 weeks ago class-list-filters.php 1 week ago class-marketing.php 1 year ago class-metabox-ad-settings.php 1 year ago class-metabox-ad.php 1 year ago class-misc.php 1 week ago class-page-quick-edit.php 1 year ago class-plugin-installer.php 1 year ago class-post-list.php 1 year ago class-post-types.php 1 week ago class-screen-options.php 3 months ago class-settings.php 1 year ago class-shortcode-creator.php 1 year ago class-system-info.php 1 year ago class-tinymce.php 2 years ago class-translation-promo.php 1 year ago class-upgrades.php 1 year ago class-version-control.php 3 months ago class-welcome.php 1 year ago class-wordpress-dashboard.php 1 year ago index.php 2 years ago
class-wordpress-dashboard.php
152 lines
1 <?php
2 /**
3 * Admin WordPress Dashboard.
4 *
5 * @package AdvancedAds
6 * @author Advanced Ads <info@wpadvancedads.com>
7 * @since 1.48.2
8 */
9
10 namespace AdvancedAds\Admin;
11
12 use AdvancedAds\Options;
13 use Advanced_Ads_AdSense_Data;
14 use AdvancedAds\Utilities\WordPress;
15 use AdvancedAds\Utilities\Conditional;
16 use Advanced_Ads_Overview_Widgets_Callbacks;
17 use AdvancedAds\Framework\Interfaces\Integration_Interface;
18
19 defined( 'ABSPATH' ) || exit;
20
21 /**
22 * WordPress Dashboard.
23 */
24 class WordPress_Dashboard implements Integration_Interface {
25
26 /**
27 * Hook into WordPress.
28 *
29 * @return void
30 */
31 public function hooks(): void {
32 add_action( 'wp_dashboard_setup', [ $this, 'add_adsense_widget' ] );
33 add_action( 'wp_dashboard_setup', [ $this, 'add_dashboard_widget' ] );
34 add_action( 'admin_enqueue_scripts', [ $this, 'enqueue' ], 10, 0 );
35 add_action( 'advanced-ads-dashbaord-widget', [ $this, 'display_performing_ads' ] );
36 add_action( 'advanced-ads-dashbaord-widget', [ $this, 'display_rss_widget' ] );
37 }
38
39 /**
40 * Enqueue styles and scripts for current screen
41 *
42 * @return void
43 */
44 public function enqueue(): void {
45 // Early bail!!
46 $wp_screen = get_current_screen();
47 if ( 'dashboard' !== $wp_screen->id ) {
48 return;
49 }
50
51 wp_advads()->registry->enqueue_style( 'wp-dashboard' );
52 wp_advads()->registry->enqueue_script( 'wp-dashboard' );
53 }
54
55 /**
56 * Add dashboard widget with ad stats and additional information
57 *
58 * @return void
59 */
60 public function add_dashboard_widget(): void {
61 if ( ! Conditional::user_can( 'advanced_ads_see_interface' ) ) {
62 return;
63 }
64
65 $icon = WordPress::get_svg( 'logo.svg' );
66 $icon = '<span class="advads-logo--icon">' . $icon . '</span>';
67
68 wp_add_dashboard_widget(
69 'advads-dashboard-widget',
70 $icon . '<span class="advads-logo--text">' . __( 'Advanced Ads', 'advanced-ads' ) . '</span>',
71 [ $this, 'display_dashboard_widget' ],
72 null,
73 null,
74 'side',
75 'high'
76 );
77 }
78
79 /**
80 * Adds an AdSense widget to the WordPress dashboard.
81 *
82 * @return void
83 */
84 public function add_adsense_widget(): void {
85 if (
86 Advanced_Ads_AdSense_Data::get_instance()->is_setup() &&
87 ! Advanced_Ads_AdSense_Data::get_instance()->is_hide_stats() &&
88 Options::instance()->get( 'adsense.adsense-wp-widget' )
89 ) {
90 wp_add_dashboard_widget(
91 'advads-adsense-widget',
92 __( 'AdSense Earnings', 'advanced-ads' ),
93 [ $this, 'display_adsense_widget' ],
94 null,
95 null,
96 'side'
97 );
98 }
99 }
100
101 /**
102 * Display widget functions
103 *
104 * @return void
105 */
106 public function display_dashboard_widget(): void {
107 if ( Conditional::user_can( 'advanced_ads_edit_ads' ) ) {
108 include ADVADS_ABSPATH . 'views/admin/widgets/wordpress-dashboard/header.php';
109 }
110
111 if ( Conditional::user_can_subscribe( 'nl_first_steps' ) || Conditional::user_can_subscribe( 'nl_adsense' ) ) {
112 include ADVADS_ABSPATH . 'views/admin/widgets/wordpress-dashboard/newsletter.php';
113 }
114
115 /**
116 * Let developer add KPIs and info into dashabord
117 *
118 * @param WordPress_Dashboard $this Dashabord widget instance.
119 */
120 do_action( 'advanced-ads-dashbaord-widget', $this );
121
122 include ADVADS_ABSPATH . 'views/admin/widgets/wordpress-dashboard/footer.php';
123 }
124
125 /**
126 * Display the AdSense widget on the WordPress dashboard.
127 *
128 * @return void
129 */
130 public function display_adsense_widget(): void {
131 Advanced_Ads_Overview_Widgets_Callbacks::render_adsense_stats();
132 }
133
134 /**
135 * Display performing ads widget
136 *
137 * @return void
138 */
139 public function display_performing_ads(): void {
140 include_once ADVADS_ABSPATH . 'views/admin/widgets/wordpress-dashboard/performing-ads.php';
141 }
142
143 /**
144 * Display rss widget
145 *
146 * @return void
147 */
148 public function display_rss_widget(): void {
149 include_once ADVADS_ABSPATH . 'views/admin/widgets/wordpress-dashboard/rss.php';
150 }
151 }
152