PluginProbe
User Access Manager / 1.2.14
User Access Manager v1.2.14
2.3.20 2.3.19 2.3.18 2.3.17 2.3.16 2.3.15 2.3.14 2.3.13 trunk 0.6 0.6.1 0.6.2 0.7 0.7 Beta 0.7.0.1 0.8 0.8.0.1 0.8.0.2 0.9 0.9.1 0.9.1.1 0.9.1.2 0.9.1.3 0.9.1.4 1.0 All 136 releases
← All changes | user-access-manager.php +223 -129 1.0 → 1.2.14 View file →
@@ -1,11 +1,10 @@
1 1 <?php
2 -
3 2 /**
4 3 * Plugin Name: User Access Manager
5 - * Plugin URI: http://www.gm-alex.de/projects/wordpress/plugins/user-access-manager/
6 - * Author URI: http://www.gm-alex.de/
7 - * Version: 1.0
4 + * Plugin URI: https://wordpress.org/plugins/user-access-manager/
5 + * Author URI: https://twitter.com/GM_Alex
6 + * Version: 1.2.14
8 7 * Author: Alexander Schneider
9 8 * Description: Manage the access to your posts, pages, categories and files.
10 9 *
11 10 * user-access-manager.php
@@ -14,9 +13,9 @@
14 13 *
15 14 * @category UserAccessManager
16 15 * @package UserAccessManager
17 16 * @author Alexander Schneider <[email protected]>
18 - * @copyright 2008-2010 Alexander Schneider
17 + * @copyright 2008-2016 Alexander Schneider
19 18 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License, version 2
20 19 * @version SVN: $Id$
21 20 * @link http://wordpress.org/extend/plugins/user-access-manager/
22 21 */
@@ -21,43 +20,69 @@
21 20 * @link http://wordpress.org/extend/plugins/user-access-manager/
22 21 */
23 22
24 23 //Paths
25 -load_plugin_textdomain(
26 - 'user-access-manager',
27 - false,
28 - 'user-access-manager/lang'
29 -);
24 +load_plugin_textdomain('user-access-manager', false, 'user-access-manager/lang');
25 +define('UAM_URLPATH', plugins_url('', __FILE__).'/');
26 +define('UAM_REALPATH', WP_PLUGIN_DIR.'/'.plugin_basename(dirname(__FILE__)).'/');
30 27
31 -define(
32 - 'UAM_URLPATH',
33 - WP_PLUGIN_URL.'/user-access-manager/'
34 -);
35 28
36 -if (defined('UAM_LOCAL_DEBUG')) {
37 - //ONLY FOR MY LOCAL DEBUG
38 - define(
39 - 'UAM_REALPATH',
40 - '/'.plugin_basename(dirname(__FILE__)).'/'
29 +//Defines
30 +require_once 'includes/database.define.php';
31 +require_once 'includes/language.define.php';
32 +
33 +
34 +//Check requirements
35 +$blStop = false;
36 +
37 +//Check php version
38 +$sPhpVersion = phpversion();
39 +
40 +if (version_compare($sPhpVersion, '5.3') === -1) {
41 + add_action(
42 + 'admin_notices',
43 + create_function(
44 + '',
45 + 'echo \'<div id="message" class="error"><p><strong>'.
46 + sprintf(TXT_UAM_PHP_VERSION_TO_LOW, $sPhpVersion).
47 + '</strong></p></div>\';'
48 + )
41 49 );
42 -} else {
43 - define(
44 - 'UAM_REALPATH',
45 - WP_PLUGIN_DIR.'/'.plugin_basename(dirname(__FILE__)).'/'
50 +
51 + $blStop = true;
52 +}
53 +
54 +//Check wordpress version
55 +global $wp_version;
56 +
57 +if (version_compare($wp_version, '3.4') === -1) {
58 + add_action(
59 + 'admin_notices',
60 + create_function(
61 + '',
62 + 'echo \'<div id="message" class="error"><p><strong>'.
63 + sprintf(TXT_UAM_WORDPRESS_VERSION_TO_LOW, $wp_version).
64 + '</strong></p></div>\';'
65 + )
46 66 );
67 +
68 + $blStop = true;
47 69 }
48 70
49 -//Defines
50 -require_once 'includes/database.define.php';
51 -require_once 'includes/language.define.php';
71 +//If we have a error stop plugin.
72 +if ($blStop) {
73 + return;
74 +}
52 75
76 +
53 77 //Classes
54 -require_once 'class/UserAccessManager.class.php';
55 -require_once 'class/UamUserGroup.class.php';
56 -require_once 'class/UamAccessHandler.class.php';
78 +require_once 'class/UamConfig.php';
79 +require_once 'class/UserAccessManager.php';
80 +require_once 'class/UamUserGroup.php';
81 +require_once 'class/UamAccessHandler.php';
57 82
58 83 if (class_exists("UserAccessManager")) {
59 - $userAccessManager = new UserAccessManager();
84 + $oUserAccessManager = new UserAccessManager();
60 85 }
61 86
62 87 //Initialize the admin panel
63 88 if (!function_exists("userAccessManagerAP")) {
@@ -62,87 +87,113 @@
62 87 //Initialize the admin panel
63 88 if (!function_exists("userAccessManagerAP")) {
64 89 /**
65 90 * Creates the filters and actions for the admin panel
66 - *
67 - * @return null;
68 91 */
69 92 function userAccessManagerAP()
70 93 {
71 - global $userAccessManager,
72 - $uamUserGroup,
73 - $uamAccessHandler,
74 - $current_user;
75 -
76 - if (!isset($userAccessManager)) {
94 + /**
95 + * @var UserAccessManager $oUserAccessManager
96 + */
97 + global $oUserAccessManager;
98 + $oCurrentUser = $oUserAccessManager->getCurrentUser();
99 +
100 + if (!isset($oUserAccessManager)) {
77 101 return;
78 102 }
79 -
80 - $userAccessManager->atAdminPanel = true;
81 - $uamOptions = $userAccessManager->getAdminOptions();
82 - $userAccessManager->update();
83 -
84 - get_currentuserinfo();
85 - $curUserdata = get_userdata($current_user->ID);
86 -
87 - if ($userAccessManager->getAccessHandler()->checkUserAccess()
88 - || $uamOptions['authors_can_add_posts_to_groups'] == 'true'
103 +
104 + $oUserAccessManager->setAtAdminPanel();
105 + $oConfig = $oUserAccessManager->getConfig();
106 +
107 + if ($oUserAccessManager->isDatabaseUpdateNecessary()) {
108 + $sLink = 'admin.php?page=uam_setup';
109 +
110 + add_action(
111 + 'admin_notices',
112 + create_function(
113 + '',
114 + 'echo \'<div id="message" class="error"><p><strong>'.
115 + sprintf(TXT_UAM_NEED_DATABASE_UPDATE, $sLink).
116 + '</strong></p></div>\';'
117 + )
118 + );
119 + }
120 +
121 + $oUamAccessHandler = $oUserAccessManager->getAccessHandler();
122 + $aTaxonomies = $oUserAccessManager->getPostTypes();
123 +
124 + if (isset($_POST['taxonomy'])) {
125 + $aTaxonomies[$_POST['taxonomy']] = $_POST['taxonomy'];
126 + } elseif (isset($_GET['taxonomy'])) {
127 + $aTaxonomies[$_GET['taxonomy']] = $_GET['taxonomy'];
128 + }
129 +
130 + if ($oUamAccessHandler->checkUserAccess()
131 + || $oConfig->authorsCanAddPostsToGroups() === true
89 132 ) {
90 133 //Admin actions
91 - if (function_exists('add_action')) {
92 - add_action('admin_print_styles', array(&$userAccessManager, 'addStyles'));
93 - add_action('wp_print_scripts', array(&$userAccessManager, 'addScripts'));
94 -
95 - add_action('manage_posts_custom_column', array(&$userAccessManager, 'addPostColumn'), 10, 2);
96 - add_action('manage_pages_custom_column', array(&$userAccessManager, 'addPostColumn'), 10, 2);
97 - add_action('save_post', array(&$userAccessManager, 'savePostData'));
98 -
99 - add_action('manage_media_custom_column', array(&$userAccessManager, 'addPostColumn'), 10, 2);
100 -
134 + if (function_exists('add_action')) {
135 + add_action('admin_print_styles', array($oUserAccessManager, 'addStyles'));
136 + add_action('wp_print_scripts', array($oUserAccessManager, 'addScripts'));
137 +
138 + add_action('manage_posts_custom_column', array($oUserAccessManager, 'addPostColumn'), 10, 2);
139 + add_action('manage_pages_custom_column', array($oUserAccessManager, 'addPostColumn'), 10, 2);
140 + add_action('save_post', array($oUserAccessManager, 'savePostData'));
141 +
142 + add_action('manage_media_custom_column', array($oUserAccessManager, 'addPostColumn'), 10, 2);
143 +
101 144 //Actions are only called when the attachment content is modified so we can't use it.
102 - //add_action('add_attachment', array(&$userAccessManager, 'savePostData'));
103 - //add_action('edit_attachment', array(&$userAccessManager, 'savePostData'));
104 -
105 - add_action('edit_user_profile', array(&$userAccessManager, 'showUserProfile'));
106 - add_action('profile_update', array(&$userAccessManager, 'saveUserData'));
107 -
108 - add_action('edit_category_form', array(&$userAccessManager, 'showCategoryEditForm'));
109 - add_action('create_category', array(&$userAccessManager, 'saveCategoryData'));
110 - add_action('edit_category', array(&$userAccessManager, 'saveCategoryData'));
145 + //add_action('add_attachment', array($oUserAccessManager, 'savePostData'));
146 + //add_action('edit_attachment', array($oUserAccessManager, 'savePostData'));
147 +
148 + add_action('edit_user_profile', array($oUserAccessManager, 'showUserProfile'));
149 + add_action('profile_update', array($oUserAccessManager, 'saveUserData'));
150 +
151 + add_action('bulk_edit_custom_box', array($oUserAccessManager, 'addBulkAction'));
152 + add_action('create_term', array($oUserAccessManager, 'saveTermData'));
153 + add_action('edit_term', array($oUserAccessManager, 'saveTermData'));
154 +
155 + //Taxonomies
156 + foreach ($aTaxonomies as $sTaxonomy) {
157 + add_action('manage_'.$sTaxonomy.'_custom_column', array($oUserAccessManager, 'addTermColumn'), 10, 3);
158 + add_action($sTaxonomy.'_add_form_fields', array($oUserAccessManager, 'showTermEditForm'));
159 + add_action($sTaxonomy.'_edit_form_fields', array($oUserAccessManager, 'showTermEditForm'));
160 + }
111 161 }
112 -
162 +
113 163 //Admin filters
114 164 if (function_exists('add_filter')) {
115 165 //The filter we use instead of add|edit_attachment action, reason see top
116 - add_filter('attachment_fields_to_save', array(&$userAccessManager, 'saveAttachmentData'));
117 -
118 - add_filter('manage_posts_columns', array(&$userAccessManager, 'addPostColumnsHeader'));
119 - add_filter('manage_pages_columns', array(&$userAccessManager, 'addPostColumnsHeader'));
120 -
121 - add_filter('manage_users_columns', array(&$userAccessManager, 'addUserColumnsHeader'), 10);
122 - add_filter('manage_users_custom_column', array(&$userAccessManager, 'addUserColumn'), 10, 3);
123 -
124 - add_filter('manage_edit-category_columns', array(&$userAccessManager, 'addCategoryColumnsHeader'));
125 - add_filter('manage_category_custom_column', array(&$userAccessManager, 'addCategoryColumn'), 10, 3);
166 + add_filter('attachment_fields_to_save', array($oUserAccessManager, 'saveAttachmentData'));
167 +
168 + add_filter('manage_posts_columns', array($oUserAccessManager, 'addPostColumnsHeader'));
169 + add_filter('manage_pages_columns', array($oUserAccessManager, 'addPostColumnsHeader'));
170 +
171 + add_filter('manage_users_columns', array($oUserAccessManager, 'addUserColumnsHeader'), 10);
172 + add_filter('manage_users_custom_column', array($oUserAccessManager, 'addUserColumn'), 10, 3);
173 +
174 + foreach ($aTaxonomies as $sTaxonomy) {
175 + add_filter('manage_edit-'.$sTaxonomy.'_columns', array($oUserAccessManager, 'addTermColumnsHeader'));
176 + }
126 177 }
127 -
128 - if ($uamOptions['lock_file'] == 'true') {
129 - add_action('media_meta', array(&$userAccessManager, 'showMediaFile'), 10, 2);
130 - add_filter('manage_media_columns', array(&$userAccessManager, 'addPostColumnsHeader'));
178 +
179 + if ($oConfig->lockFile() === true) {
180 + add_action('media_meta', array($oUserAccessManager, 'showMediaFile'), 10, 2);
181 + add_filter('manage_media_columns', array($oUserAccessManager, 'addPostColumnsHeader'));
131 182 }
132 183 }
133 -
134 - //Clean up at deleting should be always done.
184 +
185 + //Clean up at deleting should always be done.
135 186 if (function_exists('add_action')) {
136 - add_action('update_option_permalink_structure', array(&$userAccessManager, 'updatePermalink'));
137 - add_action('wp_dashboard_setup', array(&$userAccessManager, 'setupAdminDashboard'));
138 - add_action('delete_post', array(&$userAccessManager, 'removePostData'));
139 - add_action('delete_attachment', array(&$userAccessManager, 'removePostData'));
140 - add_action('delete_user', array(&$userAccessManager, 'removeUserData'));
141 - add_action('delete_category', array(&$userAccessManager, 'removeCategoryData'), 10, 2);
187 + add_action('update_option_permalink_structure', array($oUserAccessManager, 'updatePermalink'));
188 + add_action('wp_dashboard_setup', array($oUserAccessManager, 'setupAdminDashboard'));
189 + add_action('delete_post', array($oUserAccessManager, 'removePostData'));
190 + add_action('delete_attachment', array($oUserAccessManager, 'removePostData'));
191 + add_action('delete_user', array($oUserAccessManager, 'removeUserData'));
192 + add_action('delete_term', array($oUserAccessManager, 'removeTermData'));
142 193 }
143 194
144 - $userAccessManager->noRightsToEditContent();
195 + $oUserAccessManager->noRightsToEditContent();
145 196 }
146 197 }
147 198
148 199 if (!function_exists("userAccessManagerAPMenu")) {
@@ -147,24 +198,41 @@
147 198
148 199 if (!function_exists("userAccessManagerAPMenu")) {
149 200 /**
150 201 * Creates the menu at the admin panel
151 - *
152 - * @return null;
153 202 */
154 203 function userAccessManagerAPMenu()
155 204 {
156 - global $userAccessManager,
157 - $current_user;
205 + /**
206 + * @var UserAccessManager $oUserAccessManager
207 + */
208 + global $oUserAccessManager;
209 + $oCurrentUser = $oUserAccessManager->getCurrentUser();
158 210
159 - if (!isset($userAccessManager)) {
211 + if (!isset($oUserAccessManager)) {
160 212 return;
161 213 }
162 214
163 - $uamOptions = $userAccessManager->getAdminOptions();
164 - $curUserdata = get_userdata($current_user->ID);
215 + $oConfig = $oUserAccessManager->getConfig();
165 216
166 - if ($userAccessManager->getAccessHandler()->checkUserAccess()) {
217 + if (ini_get('safe_mode')
218 + && $oConfig->getDownloadType() === 'fopen'
219 + ) {
220 + add_action(
221 + 'admin_notices',
222 + create_function(
223 + '',
224 + 'echo \'<div id="message" class="error"><p><strong>'.
225 + TXT_UAM_FOPEN_WITHOUT_SAVEMODE_OFF.
226 + '</strong></p></div>\';'
227 + )
228 + );
229 + }
230 +
231 + get_userdata($oCurrentUser->ID);
232 + $oUamAccessHandler = $oUserAccessManager->getAccessHandler();
233 +
234 + if ($oUamAccessHandler->checkUserAccess()) {
167 235 //TODO
168 236 /**
169 237 * --- BOF ---
170 238 * Not the best way to handle full user access capabilities seems
@@ -172,17 +240,19 @@
172 240 */
173 241
174 242 //Admin main menu
175 243 if (function_exists('add_menu_page')) {
176 - add_menu_page('User Access Manager', 'UAM', 'read', 'uam_usergroup', array(&$userAccessManager, 'printAdminPage'), 'div');
244 + add_menu_page('User Access Manager', 'UAM', 'manage_options', 'uam_usergroup', array($oUserAccessManager, 'printAdminPage'), 'div');
177 245 }
178 246
179 247 //Admin sub menus
180 248 if (function_exists('add_submenu_page')) {
181 - add_submenu_page('uam_usergroup', TXT_MANAGE_GROUP, TXT_MANAGE_GROUP, 'read', 'uam_usergroup', array(&$userAccessManager, 'printAdminPage'));
182 - add_submenu_page('uam_usergroup', TXT_SETTINGS, TXT_SETTINGS, 'read', 'uam_settings', array(&$userAccessManager, 'printAdminPage'));
183 - add_submenu_page('uam_usergroup', TXT_SETUP, TXT_SETUP, 'read', 'uam_setup', array(&$userAccessManager, 'printAdminPage'));
184 - add_submenu_page('uam_usergroup', TXT_ABOUT, TXT_ABOUT, 'read', 'uam_about', array(&$userAccessManager, 'printAdminPage'));
249 + add_submenu_page('uam_usergroup', TXT_UAM_MANAGE_GROUP, TXT_UAM_MANAGE_GROUP, 'read', 'uam_usergroup', array($oUserAccessManager, 'printAdminPage'));
250 + add_submenu_page('uam_usergroup', TXT_UAM_SETTINGS, TXT_UAM_SETTINGS, 'read', 'uam_settings', array($oUserAccessManager, 'printAdminPage'));
251 + add_submenu_page('uam_usergroup', TXT_UAM_SETUP, TXT_UAM_SETUP, 'read', 'uam_setup', array($oUserAccessManager, 'printAdminPage'));
252 + add_submenu_page('uam_usergroup', TXT_UAM_ABOUT, TXT_UAM_ABOUT, 'read', 'uam_about', array($oUserAccessManager, 'printAdminPage'));
253 +
254 + do_action('uam_add_submenu');
185 255 }
186 256 /**
187 257 * --- EOF ---
188 258 */
@@ -187,50 +257,60 @@
187 257 * --- EOF ---
188 258 */
189 259 }
190 260
191 - if ($userAccessManager->getAccessHandler()->checkUserAccess()
192 - || $uamOptions['authors_can_add_posts_to_groups'] == 'true'
261 + if ($oUamAccessHandler->checkUserAccess()
262 + || $oConfig->authorsCanAddPostsToGroups() === true
193 263 ) {
194 264 //Admin meta boxes
195 265 if (function_exists('add_meta_box')) {
196 - add_meta_box('uma_post_access', 'Access', array(&$userAccessManager, 'editPostContent'), 'post', 'side');
197 - add_meta_box('uma_post_access', 'Access', array(&$userAccessManager, 'editPostContent'), 'page', 'side');
266 + $aPostableTypes = $oUamAccessHandler->getPostableTypes();
267 +
268 + foreach ($aPostableTypes as $sPostableType) {
269 + add_meta_box('uma_post_access', 'Access', array($oUserAccessManager, 'editPostContent'), $sPostableType, 'side');
270 + }
198 271 }
199 272 }
200 273 }
201 274 }
202 275
203 -if (isset($userAccessManager)) {
276 +if (!function_exists("userAccessManagerUninstall")) {
277 + function userAccessManagerUninstall() {
278 + $oUserAccessManager = new UserAccessManager();
279 + $oUserAccessManager->uninstall();
280 + }
281 +}
282 +
283 +if (isset($oUserAccessManager)) {
204 284 //install
205 285 if (function_exists('register_activation_hook')) {
206 - register_activation_hook(__FILE__, array(&$userAccessManager, 'install'));
286 + register_activation_hook(__FILE__, array($oUserAccessManager, 'install'));
207 287 }
208 288
209 289 //uninstall
210 290 if (function_exists('register_uninstall_hook')) {
211 - register_uninstall_hook(__FILE__, array(&$userAccessManager, 'uninstall'));
291 + register_uninstall_hook(__FILE__, 'userAccessManagerUninstall');
212 292 } elseif (function_exists('register_deactivation_hook')) {
213 293 //Fallback
214 - register_deactivation_hook(__FILE__, array(&$userAccessManager, 'uninstall'));
294 + register_deactivation_hook(__FILE__, array($oUserAccessManager, 'uninstall'));
215 295 }
216 296
217 297 //deactivation
218 298 if (function_exists('register_deactivation_hook')) {
219 - register_deactivation_hook(__FILE__, array(&$userAccessManager, 'deactivate'));
299 + register_deactivation_hook(__FILE__, array($oUserAccessManager, 'deactivate'));
220 300 }
221 301
222 302 //Redirect
223 - $uamOptions = $userAccessManager->getAdminOptions();
303 + $oConfig = $oUserAccessManager->getConfig();
224 304
225 - if ($uamOptions['redirect'] != 'false' || isset($_GET['getfile'])) {
226 - add_action('template_redirect', array(&$userAccessManager, 'redirect'));
305 + if ($oConfig->getRedirect() !== 'false' || isset($_GET['uamgetfile'])) {
306 + add_filter('wp_headers', array($oUserAccessManager, 'redirect'), 10, 2);
227 307 }
228 308
229 309 //Actions
230 310 if (function_exists('add_action')) {
231 - add_action('wp_print_scripts', array(&$userAccessManager, 'addScripts'));
232 - add_action('wp_print_styles', array(&$userAccessManager, 'addStyles'));
311 + add_action('wp_print_scripts', array($oUserAccessManager, 'addScripts'));
312 + add_action('wp_print_styles', array($oUserAccessManager, 'addStyles'));
233 313 add_action('admin_init', 'userAccessManagerAP');
234 314 add_action('admin_menu', 'userAccessManagerAPMenu');
235 315 }
236 316
@@ -235,17 +315,31 @@
235 315 }
236 316
237 317 //Filters
238 318 if (function_exists('add_filter')) {
239 - add_filter('wp_get_attachment_thumb_url', array(&$userAccessManager, 'getFileUrl'), 10, 2);
240 - add_filter('wp_get_attachment_url', array(&$userAccessManager, 'getFileUrl'), 10, 2);
241 - add_filter('the_posts', array(&$userAccessManager, 'showPost'));
242 - add_filter('wp_get_nav_menu_items', array(&$userAccessManager, 'showCustomMenu'));
243 - add_filter('comments_array', array(&$userAccessManager, 'showComment'));
244 - add_filter('get_pages', array(&$userAccessManager, 'showPage'));
245 - add_filter('get_terms', array(&$userAccessManager, 'showCategory'), 10, 2);
246 - add_filter('get_next_post_where', array(&$userAccessManager, 'showNextPreviousPost'));
247 - add_filter('get_previous_post_where', array(&$userAccessManager, 'showNextPreviousPost'));
248 - //add_filter('the_title', array(&$userAccessManager, 'showTitle'), 10, 2);
249 - add_filter('edit_post_link', array(&$userAccessManager, 'showGroupMembership'), 10, 2);
319 + add_filter('wp_get_attachment_thumb_url', array($oUserAccessManager, 'getFileUrl'), 10, 2);
320 + add_filter('wp_get_attachment_url', array($oUserAccessManager, 'getFileUrl'), 10, 2);
321 + add_filter('the_posts', array($oUserAccessManager, 'showPosts'));
322 + add_filter('posts_where_paged', array($oUserAccessManager, 'showPostSql'));
323 + add_filter('get_terms_args', array($oUserAccessManager, 'getTermArguments'));
324 + add_filter('wp_get_nav_menu_items', array($oUserAccessManager, 'showCustomMenu'));
325 + add_filter('comments_array', array($oUserAccessManager, 'showComment'));
326 + add_filter('the_comments', array($oUserAccessManager, 'showComment'));
327 + add_filter('get_pages', array($oUserAccessManager, 'showPages'), 20);
328 + add_filter('get_terms', array($oUserAccessManager, 'showTerms'), 20, 2);
329 + add_filter('get_term', array($oUserAccessManager, 'showTerm'), 20, 2);
330 + add_filter('get_ancestors', array($oUserAccessManager, 'showAncestors'), 20, 4);
331 + add_filter('get_next_post_where', array($oUserAccessManager, 'showNextPreviousPost'));
332 + add_filter('get_previous_post_where', array($oUserAccessManager, 'showNextPreviousPost'));
333 + add_filter('post_link', array($oUserAccessManager, 'cachePostLinks'), 10, 2);
334 + add_filter('edit_post_link', array($oUserAccessManager, 'showGroupMembership'), 10, 2);
335 + add_filter('parse_query', array($oUserAccessManager, 'parseQuery'));
336 + add_filter('getarchives_where', array($oUserAccessManager, 'showPostSql'));
337 + add_filter('wp_count_posts', array($oUserAccessManager, 'showPostCount'), 10, 2);
338 + add_filter('wpseo_sitemap_entry', array($oUserAccessManager, 'wpSeoUrl'), 1, 3); // Yaost Sitemap Plugin
250 339 }
340 +}
341 +
342 +//Add the cli interface to the known commands
343 +if (defined('WP_CLI') && WP_CLI) {
344 + include __DIR__.'/includes/wp-cli.php';
251 345 }