PluginProbe
Nested Pages / 1.2.0
Nested Pages v1.2.0
3.3.1 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 All 106 releases
wp-nested-pages / app / Bootstrap.php
Bootstrap.php
74 lines 1.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php namespace NestedPages;
2
3 /**
4 * Primary Plugin Bootstrap
5 */
6 class Bootstrap {
7
8 public function __construct()
9 {
10 $this->initializePlugin();
11 add_action( 'init', array($this, 'initializeWordPress') );
12 add_filter( 'plugin_action_links_' . 'wp-nested-pages/nestedpages.php', array($this, 'settingsLink' ) );
13 }
14
15 /**
16 * Initialize Plugin
17 */
18 private function initializePlugin()
19 {
20 new Activation\Activate;
21 new Redirects;
22 new Entities\PostType\RegisterPostTypes;
23 new Entities\Post\PostActions;
24 new Form\FormActionFactory;
25 new Config\Settings;
26 }
27
28
29 /**
30 * Wordpress Initialization Actions
31 */
32 public function initializeWordPress()
33 {
34 $this->listPages();
35 $this->addLocalization();
36 }
37
38
39 /**
40 * Page Listing & Menus
41 * @since 1.1.6 - Moved into init due to Multisite bug
42 */
43 public function listPages()
44 {
45 new Controllers\AdminMenuController;
46 new Controllers\AdminSubmenuController;
47 new Controllers\PageListingController;
48 }
49
50
51 /**
52 * Localization Domain
53 */
54 public function addLocalization()
55 {
56 load_plugin_textdomain(
57 'nestedpages',
58 false,
59 dirname( dirname( plugin_basename( __FILE__ ) ) ) . '/languages' );
60 }
61
62
63 /**
64 * Add a link to the settings on the plugin page
65 */
66 public function settingsLink($links)
67 {
68 $settings_link = '<a href="options-general.php?page=nested-pages-settings">' . __('Settings') . '</a>';
69 array_unshift($links, $settings_link);
70 return $links;
71 }
72
73
74 }