PluginProbe ʕ •ᴥ•ʔ
Nested Pages / 3.2.15
Nested Pages v3.2.15
3.2.15 3.2.14 3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 trunk 1.0 1.1 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.2.1 1.3.0 1.3.1 1.3.10 1.3.11 1.3.12 1.3.13 1.3.14 1.3.15 1.3.2 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.6.0 1.6.1 1.6.2 1.6.3 1.6.3.1 1.6.3.2 1.6.4 1.6.5 1.6.5.1 1.6.5.2 1.6.6 1.6.7 1.6.8 1.7.0 1.7.1 2.0.1 2.0.2 2.0.3 2.0.4 3.0.1 3.0.10 3.0.11 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.20 3.1.21 3.1.22 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7
wp-nested-pages / app / Entities / DefaultList / NestedViewLink.php
wp-nested-pages / app / Entities / DefaultList Last commit date
DefaultListFactory.php 8 years ago NestedViewLink.php 8 years ago
NestedViewLink.php
51 lines
1 <?php
2 namespace NestedPages\Entities\DefaultList;
3
4 use NestedPages\Entities\PostType\PostTypeRepository;
5
6 /**
7 * Adds "nested view/sort view" to default lists on enabled post types
8 */
9 class NestedViewLink
10 {
11 /**
12 * Post Type
13 */
14 private $post_type;
15
16 /**
17 * Post Type Repository
18 */
19 private $post_type_repo;
20
21
22 public function __construct($post_type)
23 {
24 $this->post_type_repo = new PostTypeRepository;
25 $this->post_type = $post_type;
26 $this->addFilter();
27 }
28
29 /**
30 * Add the WP Filter
31 */
32 private function addFilter()
33 {
34 add_filter( 'views_edit-' . $this->post_type->name, [$this, 'addLink']);
35 }
36
37 /**
38 * Add a nested pages link to the subsub list (WP_List_Table class)
39 */
40 public function addLink($views)
41 {
42 $screen = get_current_screen();
43 if ( $screen->parent_file == $this->post_type_repo->editSlug($this->post_type) ){
44 $link_text = $this->post_type_repo->getSubmenuText($this->post_type);
45 $link_href = esc_url(admin_url('admin.php?page=' . $this->post_type_repo->getMenuSlug($this->post_type)));
46 $link = [$link_text => '<a href="' . $link_href . '">' . $link_text . '</a>'];
47 $views = array_merge($views, $link);
48 }
49 return $views;
50 }
51 }