/** * Registers the custom post type for builder templates. * * @since 1.1.3 * @since 1.5.7 Added template category taxonomy. * @return void */ public static function register_templates_post_type() { // Template classes aren't included in the lite version. if (FL_BUILDER_LITE === true) { return; } // Vars for checking if the templates admin should be public. $admin_enabled = FLBuilderModel::user_templates_admin_enabled(); $can_edit = current_user_can(FLBuilderModel::get_editing_capability()); // Get the array of supported features for the templates post type. $supports = array('title', 'revisions', 'page-attributes'); // Include thumbnail support if core templates can be overridden. if (class_exists('FLBuilderTemplatesOverride')) { $supports[] = 'thumbnail'; } // Register the template post type. register_post_type('fl-builder-template', array('public' => $admin_enabled && $can_edit ? true : false, 'labels' => array('name' => _x('Templates', 'Custom post type label.', 'fl-builder'), 'singular_name' => _x('Template', 'Custom post type label.', 'fl-builder'), 'menu_name' => _x('Templates', 'Custom post type label.', 'fl-builder'), 'name_admin_bar' => _x('Template', 'Custom post type label.', 'fl-builder'), 'add_new' => _x('Add New', 'Custom post type label.', 'fl-builder'), 'add_new_item' => _x('Add New Template', 'Custom post type label.', 'fl-builder'), 'new_item' => _x('New Template', 'Custom post type label.', 'fl-builder'), 'edit_item' => _x('Edit Template', 'Custom post type label.', 'fl-builder'), 'view_item' => _x('View Template', 'Custom post type label.', 'fl-builder'), 'all_items' => _x('All Templates', 'Custom post type label.', 'fl-builder'), 'search_items' => _x('Search Templates', 'Custom post type label.', 'fl-builder'), 'parent_item_colon' => _x('Parent Templates:', 'Custom post type label.', 'fl-builder'), 'not_found' => _x('No templates found.', 'Custom post type label.', 'fl-builder'), 'not_found_in_trash' => _x('No templates found in Trash.', 'Custom post type label.', 'fl-builder')), 'menu_icon' => 'dashicons-welcome-widgets-menus', 'supports' => $supports, 'taxonomies' => array('fl-builder-template-category'), 'publicly_queryable' => $can_edit, 'exclude_from_search' => true)); // Register the template category tax. register_taxonomy('fl-builder-template-category', array('fl-builder-template'), array('labels' => array('name' => _x('Template Categories', 'Custom taxonomy label.', 'fl-builder'), 'singular_name' => _x('Template Category', 'Custom taxonomy label.', 'fl-builder'), 'search_items' => _x('Search Template Categories', 'Custom taxonomy label.', 'fl-builder'), 'all_items' => _x('All Template Categories', 'Custom taxonomy label.', 'fl-builder'), 'parent_item' => _x('Parent Template Category', 'Custom taxonomy label.', 'fl-builder'), 'parent_item_colon' => _x('Parent Template Category:', 'Custom taxonomy label.', 'fl-builder'), 'edit_item' => _x('Edit Template Category', 'Custom taxonomy label.', 'fl-builder'), 'update_item' => _x('Update Template Category', 'Custom taxonomy label.', 'fl-builder'), 'add_new_item' => _x('Add New Template Category', 'Custom taxonomy label.', 'fl-builder'), 'new_item_name' => _x('New Template Category Name', 'Custom taxonomy label.', 'fl-builder'), 'menu_name' => _x('Categories', 'Custom taxonomy label.', 'fl-builder')), 'hierarchical' => true, 'public' => true, 'show_admin_column' => true)); // Register the template type tax. register_taxonomy('fl-builder-template-type', array('fl-builder-template'), array('label' => _x('Type', 'Custom taxonomy label.', 'fl-builder'), 'hierarchical' => false, 'public' => false, 'show_admin_column' => true)); }
<?php $enabled_templates = FLBuilderModel::get_enabled_templates(); $template_admin_ui = FLBuilderModel::user_templates_admin_enabled() ? 1 : 0; ?> <div id="fl-templates-form" class="fl-settings-form"> <h3 class="fl-settings-form-header"><?php _e('Template Settings', 'fl-builder'); ?> </h3> <form id="templates-form" action="<?php FLBuilderAdminSettings::render_form_action('templates'); ?> " method="post"> <?php if (FLBuilderAdminSettings::multisite_support() && !is_network_admin()) { ?> <label> <input class="fl-override-ms-cb" type="checkbox" name="fl-override-ms" value="1" <?php if (get_option('_fl_builder_enabled_templates')) { echo 'checked="checked"'; } ?> /> <?php _e('Override network settings?', 'fl-builder'); ?> </label>