PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.15.5
Independent Analytics – WordPress Analytics Plugin v2.15.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 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 / ColumnOptions / Plugins / Categories.php
independent-analytics / IAWP / ColumnOptions / Plugins Last commit date
Authors.php 10 months ago Categories.php 10 months ago Countries.php 7 months ago DeviceBrowsers.php 10 months ago DeviceOperatingSystems.php 10 months ago DeviceTypes.php 10 months ago FormConversions.php 7 months ago LinkPatternConversions.php 7 months ago LinkPatterns.php 10 months ago PageTypes.php 10 months ago ReferrerTypes.php 10 months ago
Categories.php
29 lines
1 <?php
2
3 namespace IAWP\ColumnOptions\Plugins;
4
5 use IAWP\ColumnOptions\Option;
6 use IAWP\ColumnOptions\OptionsPlugin;
7 use IAWPSCOPED\Illuminate\Support\Collection;
8 /** @internal */
9 class Categories implements OptionsPlugin
10 {
11 public function get_options() : array
12 {
13 $top_level_categories = \get_categories(['parent' => 0, 'hide_empty' => \false]);
14 $options = Collection::make();
15 foreach ($top_level_categories as $top_level_category) {
16 $options->push(new Option($top_level_category->term_id, $top_level_category->name));
17 $options->push(...self::get_subcategories_for($top_level_category->term_id));
18 }
19 return $options->all();
20 }
21 private static function get_subcategories_for(int $parent_category_id) : array
22 {
23 $subcategories = \get_categories(['child_of' => $parent_category_id, 'hide_empty' => \false]);
24 return Collection::make($subcategories)->sortBy('name')->map(function ($category) use($parent_category_id) {
25 return new Option($category->term_id, $category->name, $parent_category_id);
26 })->all();
27 }
28 }
29