PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 1.25.1
Independent Analytics – WordPress Analytics Plugin v1.25.1
2.15.5 2.15.4 2.15.3 2.15.2 2.15.1 2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / IAWP / Tables / Table_Pages.php
independent-analytics / IAWP / Tables Last commit date
Columns 3 years ago Groups 3 years ago Table.php 3 years ago Table_Campaigns.php 3 years ago Table_Geo.php 3 years ago Table_Pages.php 3 years ago Table_Referrers.php 3 years ago
Table_Pages.php
58 lines
1 <?php
2
3 namespace IAWP_SCOPED\IAWP\Tables;
4
5 use IAWP_SCOPED\IAWP\Tables\Columns\Column;
6 use IAWP_SCOPED\IAWP\Tables\Groups\Group;
7 use IAWP_SCOPED\IAWP\Tables\Groups\Groups;
8 class Table_Pages extends Table
9 {
10 protected function table_name() : string
11 {
12 return 'views';
13 }
14 protected function groups() : Groups
15 {
16 $groups = new Groups();
17 $groups->add(new Group('page', \__('By Page', 'independent-analytics')));
18 return $groups;
19 }
20 protected function local_columns() : array
21 {
22 return [new Column(['id' => 'title', 'label' => \esc_html__('Title', 'independent-analytics'), 'visible' => \true, 'type' => 'string']), new Column(['id' => 'visitors', 'label' => \esc_html__('Visitors', 'independent-analytics'), 'visible' => \true, 'type' => 'int']), new Column(['id' => 'views', 'label' => \esc_html__('Views', 'independent-analytics'), 'visible' => \true, 'type' => 'int']), new Column(['id' => 'sessions', 'label' => \esc_html__('Sessions', 'independent-analytics'), 'visible' => \false, 'type' => 'int']), new Column(['id' => 'average_view_duration', 'label' => \esc_html__('View Duration', 'independent-analytics'), 'visible' => \true, 'type' => 'int', 'filter_placeholder' => 'Seconds']), new Column(['id' => 'bounce_rate', 'label' => \esc_html__('Bounce Rate', 'independent-analytics'), 'visible' => \true, 'type' => 'int']), new Column(['id' => 'visitors_growth', 'label' => \esc_html__('Visitors Growth', 'independent-analytics'), 'visible' => \false, 'type' => 'int', 'exportable' => \false]), new Column(['id' => 'views_growth', 'label' => \esc_html__('Views Growth', 'independent-analytics'), 'visible' => \false, 'type' => 'int', 'exportable' => \false]), new Column(['id' => 'url', 'label' => \esc_html__('URL', 'independent-analytics'), 'visible' => \true, 'type' => 'string']), new Column(['id' => 'author', 'label' => \esc_html__('Author', 'independent-analytics'), 'visible' => \false, 'type' => 'select', 'options' => $this->author_options()]), new Column(['id' => 'type', 'label' => \esc_html__('Page Type', 'independent-analytics'), 'visible' => \true, 'type' => 'select', 'options' => $this->type_options()]), new Column(['id' => 'date', 'label' => \esc_html__('Publish Date', 'independent-analytics'), 'visible' => \false, 'type' => 'date']), new Column(['id' => 'category', 'label' => \esc_html__('Post Category', 'independent-analytics'), 'visible' => \false, 'type' => 'select', 'options' => $this->category_options()]), new Column(['id' => 'comments', 'label' => \esc_html__('Comments', 'independent-analytics'), 'visible' => \false, 'type' => 'int'])];
23 }
24 private function author_options() : array
25 {
26 return \array_map(function ($author) {
27 return [$author->ID, $author->display_name];
28 }, \IAWP_SCOPED\iawp()->get_authors());
29 }
30 private function type_options() : array
31 {
32 $options = [];
33 $options[] = ['post', \esc_html__('Post', 'independent-analytics')];
34 $options[] = ['page', \esc_html__('Page', 'independent-analytics')];
35 $options[] = ['attachment', \esc_html__('Attachment', 'independent-analytics')];
36 foreach (\IAWP_SCOPED\iawp()->get_custom_types() as $custom_type) {
37 $options[] = [$custom_type, \get_post_type_object($custom_type)->labels->singular_name];
38 }
39 $options[] = ['category', \esc_html__('Category', 'independent-analytics')];
40 $options[] = ['post_tag', \esc_html__('Tag', 'independent-analytics')];
41 foreach (\IAWP_SCOPED\iawp()->get_custom_types(\true) as $taxonomy) {
42 $options[] = [$taxonomy, \get_taxonomy_labels(\get_taxonomy($taxonomy))->singular_name];
43 }
44 $options[] = ['blog-archive', \esc_html__('Blog Home', 'independent-analytics')];
45 $options[] = ['author-archive', \esc_html__('Author Archive', 'independent-analytics')];
46 $options[] = ['date-archive', \esc_html__('Date Archive', 'independent-analytics')];
47 $options[] = ['search-archive', \esc_html__('Search Results', 'independent-analytics')];
48 $options[] = ['not-found', \esc_html__('404', 'independent-analytics')];
49 return $options;
50 }
51 private function category_options() : array
52 {
53 return \array_map(function ($category) {
54 return [$category->term_id, $category->name];
55 }, \get_categories());
56 }
57 }
58