function memberful_wp_bulk_protect() { if (!empty($_POST)) { $categories_to_protect = empty($_POST['memberful_protect_categories']) ? array() : (array) $_POST['memberful_protect_categories']; $acl_for_products = empty($_POST['memberful_product_acl']) ? array() : (array) $_POST['memberful_product_acl']; $acl_for_subscriptions = empty($_POST['memberful_subscription_acl']) ? array() : (array) $_POST['memberful_subscription_acl']; $marketing_content = empty($_POST['memberful_marketing_content']) ? '' : $_POST['memberful_marketing_content']; $things_to_protect = empty($_POST['target_for_restriction']) ? '' : $_POST['target_for_restriction']; $viewable_by_any_registered_user = empty($_POST['memberful_viewable_by_any_registered_users']) ? '' : $_POST['memberful_viewable_by_any_registered_users']; $product_acl_manager = new Memberful_Post_ACL('product'); $subscription_acl_manager = new Memberful_Post_ACL('subscription'); $query_params = array('nopaging' => true, 'fields' => 'ids'); switch ($things_to_protect) { case 'all_pages_and_posts': $query_params['post_type'] = array('post', 'page'); break; case 'all_pages': $query_params['post_type'] = 'page'; break; case 'all_posts': $query_params['post_type'] = 'post'; break; case 'all_posts_from_category': $query_params['category__in'] = $categories_to_protect; break; } $query = new WP_Query($query_params); foreach ($query->posts as $id) { $product_acl_manager->set_acl($id, $acl_for_products); $subscription_acl_manager->set_acl($id, $acl_for_subscriptions); memberful_wp_update_post_marketing_content($id, $marketing_content); memberful_wp_set_post_available_to_any_registered_users($id, $viewable_by_any_registered_user); } if (isset($_POST['memberful_make_default_marketing_content']) && $_POST['memberful_make_default_marketing_content']) { memberful_wp_update_default_marketing_content($marketing_content); } wp_redirect(memberful_wp_plugin_bulk_protect_url() . '&success=bulk'); } memberful_wp_render('bulk_protect', array('products' => memberful_wp_metabox_acl_format(array(), 'product'), 'subscriptions' => memberful_wp_metabox_acl_format(array(), 'subscription'), 'marketing_content' => '', 'form_target' => memberful_wp_plugin_bulk_protect_url(TRUE))); }
<?php $links = array(array('id' => 'settings', 'title' => __('Memberful'), 'url' => memberful_wp_plugin_settings_url()), array('id' => 'bulk_protect', 'title' => __('Bulk restrict access tool'), 'url' => memberful_wp_plugin_bulk_protect_url()), array('id' => 'advanced_settings', 'title' => __('Advanced Role Mapping'), 'url' => memberful_wp_plugin_advanced_settings_url()), array('id' => 'private_user_feed_settings', 'title' => __('Private RSS Feeds'), 'url' => memberful_wp_plugin_private_user_feed_settings_url())); if (is_plugin_active('bbpress/bbpress.php')) { $links[] = array('id' => 'protect_bbpress', 'title' => __('bbPress Forums'), 'url' => memberful_wp_plugin_protect_bbpress_url()); } ?> <h2 class="nav-tab-wrapper"> <?php foreach ($links as $link) { ?> <a href="<?php echo $link['url']; ?> " id="nav_tab_<?php echo $link['id']; ?> " class="nav-tab <?php echo $link['id'] === $active ? 'nav-tab-active' : ''; ?> "><?php echo $link['title']; ?> </a> <?php } ?> </h2>