Пример #1
0
/**
 * The different fields for setting sections
 *
 * @package WP Idea Stream
 * @subpackage admin/settings
 *
 * @since 2.0.0
 *
 * @uses   wp_idea_stream_is_pretty_links() to check if the permalink structure is custom
 * @uses   apply_filters() call 'wp_idea_stream_get_settings_fields' to add/edit/remove sections
 * @return array the settings fields
 */
function wp_idea_stream_get_settings_fields()
{
    $setting_fields = array('ideastream_settings_core' => array('_ideastream_archive_title' => array('title' => __('IdeaStream archive page', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_archive_title_setting_callback', 'sanitize_callback' => 'sanitize_text_field', 'args' => array()), '_ideastream_submit_status' => array('title' => __('New ideas status', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_submit_status_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_status', 'args' => array()), '_ideastream_editor_image' => array('title' => __('Images', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_editor_image_setting_callback', 'sanitize_callback' => 'absint', 'args' => array()), '_ideastream_featured_images' => array('title' => __('Featured images', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_editor_featured_images_setting_callback', 'sanitize_callback' => 'wp_idea_stream_editor_featured_images_sanitize', 'args' => array()), '_ideastream_editor_link' => array('title' => __('Links', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_editor_link_setting_callback', 'sanitize_callback' => 'absint', 'args' => array()), '_ideastream_moderation_message' => array('title' => __('Moderation message', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_moderation_message_setting_callback', 'sanitize_callback' => 'sanitize_text_field', 'args' => array()), '_ideastream_login_message' => array('title' => __('Not logged in message', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_login_message_setting_callback', 'sanitize_callback' => 'sanitize_text_field', 'args' => array()), '_ideastream_hint_list' => array('title' => __('Rating stars hover captions', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_hint_list_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_hint_list', 'args' => array()), '_ideastream_sticky_ideas' => array('title' => __('Sticky ideas', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_sticky_ideas_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sticky_sanitize', 'args' => array()), '_ideastream_disjoin_comments' => array('title' => __('Idea comments', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_disjoin_comments_setting_callback', 'sanitize_callback' => 'absint', 'args' => array()), '_ideastream_allow_comments' => array('title' => __('Comments', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_allow_comments_setting_callback', 'sanitize_callback' => 'absint', 'args' => array()), '_ideastream_embed_profile' => array('title' => __('Embed Profile', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_embed_profile_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_embed_profile', 'args' => array())));
    if (wp_idea_stream_is_pretty_links()) {
        /** Rewrite Section ***********************************************************/
        $setting_fields['ideastream_settings_rewrite'] = array('_ideastream_root_slug' => array('title' => __('IdeaStream root slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_root_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_slug', 'args' => array()), '_ideastream_idea_slug' => array('title' => __('Single idea slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_idea_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_slug', 'args' => array()), '_ideastream_category_slug' => array('title' => __('Category slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_category_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_slug', 'args' => array()), '_ideastream_tag_slug' => array('title' => __('Tag slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_tag_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_slug', 'args' => array()), '_ideastream_user_slug' => array('title' => __('User slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_user_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_slug', 'args' => array()), '_ideastream_user_comments_slug' => array('title' => __('User comments slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_user_comments_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_slug', 'args' => array()), '_ideastream_cpage_slug' => array('title' => __('User comments paging slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_cpage_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_comments_page_slug', 'args' => array()), '_ideastream_user_rates_slug' => array('title' => __('User ratings slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_user_rates_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_slug', 'args' => array()), '_ideastream_signup_slug' => array('title' => __('Sign-up slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_signup_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_slug', 'args' => array()), '_ideastream_action_slug' => array('title' => __('Action slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_action_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_slug', 'args' => array()), '_ideastream_addnew_slug' => array('title' => __('New form slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_addnew_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_slug', 'args' => array()), '_ideastream_edit_slug' => array('title' => __('Edit form slug', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_edit_slug_setting_callback', 'sanitize_callback' => 'wp_idea_stream_sanitize_slug', 'args' => array()));
    }
    if (is_multisite()) {
        /** Multisite Section *********************************************************/
        $setting_fields['ideastream_settings_multisite'] = array();
        if (wp_idea_stream_is_signup_allowed()) {
            $setting_fields['ideastream_settings_multisite']['_ideastream_allow_signups'] = array('title' => __('Sign-ups', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_allow_signups_setting_callback', 'sanitize_callback' => 'absint', 'args' => array());
        }
        $setting_fields['ideastream_settings_multisite']['_ideastream_user_new_idea_set_role'] = array('title' => __('Default role for network users', 'wp-idea-stream'), 'callback' => 'wp_idea_stream_user_new_idea_set_role_setting_callback', 'sanitize_callback' => 'absint', 'args' => array());
    }
    /**
     * Used internally to add the BuddyPress settings fields
     * @see  buddypress/settings for an example of use.
     *
     * @param array $setting_fields the setting fields
     */
    return (array) apply_filters('wp_idea_stream_get_settings_fields', $setting_fields);
}
Пример #2
0
/**
 * Checks wether signups are allowed for current blog
 *
 * @package WP Idea Stream
 * @subpackage core/functions
 *
 * @since 2.2.0
 *
 * @return bool true if signups are allowed for current site, false otherwise
 */
function wp_idea_stream_is_signup_allowed_for_current_blog()
{
    $signups_allowed = wp_idea_stream_is_signup_allowed();
    if (!is_multisite()) {
        return $signups_allowed;
    }
    return apply_filters('wp_idea_stream_is_signup_allowed_for_current_blog', wp_idea_stream_allow_signups());
}