PluginProbe
Independent Analytics – WordPress Analytics Plugin / 2.13.5
Independent Analytics – WordPress Analytics Plugin v2.13.5
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 All 120 releases
independent-analytics / IAWP / Tables / Table_Pages.php
Table_Pages.php
33 lines 3.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace IAWP\Tables;
4
5 use IAWP\ColumnOptions\Plugins\Authors;
6 use IAWP\ColumnOptions\Plugins\Categories;
7 use IAWP\ColumnOptions\Options;
8 use IAWP\ColumnOptions\Plugins\PageTypes;
9 use IAWP\Rows\Pages;
10 use IAWP\Statistics\Page_Statistics;
11 use IAWP\Tables\Columns\Column;
12 use IAWP\Tables\Groups\Group;
13 use IAWP\Tables\Groups\Groups;
14 /** @internal */
15 class Table_Pages extends \IAWP\Tables\Table
16 {
17 public function id() : string
18 {
19 return 'views';
20 }
21 protected function groups() : Groups
22 {
23 $groups = [];
24 $groups[] = new Group('page', \__('Page', 'independent-analytics'), 'title', Pages::class, Page_Statistics::class);
25 return new Groups($groups);
26 }
27 protected function local_columns() : array
28 {
29 $columns = [new Column(['id' => 'title', 'name' => \__('Title', 'independent-analytics'), 'visible' => \true, 'type' => 'string', 'separate_database_column' => 'cached_title', 'is_concrete_column' => \true]), new Column(['id' => 'visitors', 'name' => \__('Visitors', 'independent-analytics'), 'visible' => \true, 'type' => 'int', 'aggregatable' => \true]), new Column(['id' => 'views', 'name' => \__('Views', 'independent-analytics'), 'visible' => \true, 'type' => 'int', 'aggregatable' => \true]), new Column(['id' => 'sessions', 'name' => \__('Sessions', 'independent-analytics'), 'type' => 'int', 'aggregatable' => \true]), new Column(['id' => 'average_view_duration', 'name' => \__('View Duration', 'independent-analytics'), 'visible' => \true, 'type' => 'int', 'filter_placeholder' => 'Seconds']), new Column(['id' => 'bounce_rate', 'name' => \__('Bounce Rate', 'independent-analytics'), 'visible' => \true, 'type' => 'int']), new Column(['id' => 'visitors_growth', 'name' => \__('Visitors Growth', 'independent-analytics'), 'type' => 'int', 'exportable' => \false]), new Column(['id' => 'views_growth', 'name' => \__('Views Growth', 'independent-analytics'), 'type' => 'int', 'exportable' => \false]), new Column(['id' => 'entrances', 'name' => \__('Entrances', 'independent-analytics'), 'type' => 'int', 'aggregatable' => \true]), new Column(['id' => 'exits', 'name' => \__('Exits', 'independent-analytics'), 'type' => 'int', 'aggregatable' => \true]), new Column(['id' => 'exit_percent', 'name' => \__('Exit Rate', 'independent-analytics'), 'type' => 'int']), new Column(['id' => 'clicks', 'name' => \__('Clicks', 'independent-analytics'), 'type' => 'int', 'requires_pro' => \true, 'aggregatable' => \true]), new Column(['id' => 'url', 'name' => \__('URL', 'independent-analytics'), 'visible' => \true, 'type' => 'string', 'separate_database_column' => 'cached_url', 'is_concrete_column' => \true]), new Column(['id' => 'author', 'name' => \__('Author', 'independent-analytics'), 'type' => 'select', 'options' => new Options(new Authors()), 'separate_database_column' => 'cached_author_id', 'is_nullable' => \true, 'is_concrete_column' => \true]), new Column(['id' => 'type', 'name' => \__('Page Type', 'independent-analytics'), 'visible' => \true, 'type' => 'select', 'options' => new Options(new PageTypes()), 'separate_database_column' => 'cached_type', 'is_nullable' => \true, 'is_concrete_column' => \true]), new Column(['id' => 'date', 'name' => \__('Publish Date', 'independent-analytics'), 'type' => 'date', 'separate_database_column' => 'cached_date', 'is_nullable' => \true, 'is_concrete_column' => \true]), new Column(['id' => 'category', 'name' => \__('Post Category', 'independent-analytics'), 'type' => 'select', 'options' => new Options(new Categories()), 'separate_database_column' => 'cached_category', 'is_nullable' => \true, 'is_concrete_column' => \true]), new Column(['id' => 'comments', 'name' => \__('Comments', 'independent-analytics'), 'type' => 'int', 'is_nullable' => \true])];
30 return \array_merge($columns, $this->get_woocommerce_columns(), $this->get_form_columns());
31 }
32 }
33