/** * This file represents an example of the code that themes would use to register * the required plugins. * * It is expected that theme authors would copy and paste this code into their * functions.php file, and amend to suit. * * @package TGM-Plugin-Activation * @subpackage Example * @version 2.3.6 * @author Thomas Griffin * @author Gary Jones * @copyright Copyright (c) 2012, Thomas Griffin * @license http://opensource.org/licenses/gpl-2.0.php GPL v2 or later * @link https://github.com/thomasgriffin/TGM-Plugin-Activation */ /** * Include the TGM_Plugin_Activation class. */ require_once dirname( __FILE__ ) . '/class-tgm-plugin-activation.php'; add_action( 'tgmpa_register', 'my_theme_register_required_plugins' ); /** * Register the required plugins for this theme. * * In this example, we register two plugins - one included with the TGMPA library * and one from the .org repo. * * The variable passed to tgmpa_register_plugins() should be an array of plugin * arrays. * * This function is hooked into tgmpa_init, which is fired within the * TGM_Plugin_Activation class constructor. */ function my_theme_register_required_plugins() { /** * Array of plugin arrays. Required keys are name and slug. * If the source is NOT from the .org repo, then source is also required. */ $plugins = array( // This is an example of how to include a plugin pre-packaged with a theme array( 'name' => 'Contact Form 7', // The plugin name 'slug' => 'contact-form-7', // The plugin slug (typically the folder name) 'source' => get_stylesheet_directory() . '/includes/plugins/contact-form-7.zip', // The plugin source 'required' => true, // If false, the plugin is only 'recommended' instead of required 'version' => '', // E.g. 1.0.0. If set, the active plugin must be this version or higher, otherwise a notice is presented 'force_activation' => false, // If true, plugin is activated upon theme activation and cannot be deactivated until theme switch 'force_deactivation' => false, // If true, plugin is deactivated upon theme switch, useful for theme-specific plugins 'external_url' => '', // If set, overrides default API URL and points to an external URL ), array( 'name' => 'Cherry Plugin', // The plugin name. 'slug' => 'cherry-plugin', // The plugin slug (typically the folder name). 'source' => PARENT_DIR . '/includes/plugins/cherry-plugin.zip', // The plugin source. 'required' => true, // If false, the plugin is only 'recommended' instead of required. 'version' => '1.1', // E.g. 1.0.0. If set, the active plugin must be this version or higher, otherwise a notice is presented. 'force_activation' => true, // If true, plugin is activated upon theme activation and cannot be deactivated until theme switch. 'force_deactivation' => false, // If true, plugin is deactivated upon theme switch, useful for theme-specific plugins. 'external_url' => '', // If set, overrides default API URL and points to an external URL. ) ); /** * Array of configuration settings. Amend each line as needed. * If you want the default strings to be available under your own theme domain, * leave the strings uncommented. * Some of the strings are added into a sprintf, so see the comments at the * end of each line for what each argument will be. */ $config = array( 'domain' => CURRENT_THEME, // Text domain - likely want to be the same as your theme. 'default_path' => '', // Default absolute path to pre-packaged plugins 'parent_menu_slug' => 'themes.php', // Default parent menu slug 'parent_url_slug' => 'themes.php', // Default parent URL slug 'menu' => 'install-required-plugins', // Menu slug 'has_notices' => true, // Show admin notices or not 'is_automatic' => true, // Automatically activate plugins after installation or not 'message' => '', // Message to output right before the plugins table 'strings' => array( 'page_title' => theme_locals("page_title"), 'menu_title' => theme_locals("menu_title"), 'installing' => theme_locals("installing"), // %1$s = plugin name 'oops' => theme_locals("oops_2"), 'notice_can_install_required' => _n_noop( theme_locals("notice_can_install_required"), theme_locals("notice_can_install_required_2") ), // %1$s = plugin name(s) 'notice_can_install_recommended' => _n_noop( theme_locals("notice_can_install_recommended"), theme_locals("notice_can_install_recommended_2") ), // %1$s = plugin name(s) 'notice_cannot_install' => _n_noop( theme_locals("notice_cannot_install"), theme_locals("notice_cannot_install_2") ), // %1$s = plugin name(s) 'notice_can_activate_required' => _n_noop( theme_locals("notice_can_activate_required"), theme_locals("notice_can_activate_required_2") ), // %1$s = plugin name(s) 'notice_can_activate_recommended' => _n_noop( theme_locals("notice_can_activate_recommended"), theme_locals("notice_can_activate_recommended_2") ), // %1$s = plugin name(s) 'notice_cannot_activate' => _n_noop( theme_locals("notice_cannot_activate"), theme_locals("notice_cannot_activate_2") ), // %1$s = plugin name(s) 'notice_ask_to_update' => _n_noop( theme_locals("notice_ask_to_update"), theme_locals("notice_ask_to_update_2") ), // %1$s = plugin name(s) 'notice_cannot_update' => _n_noop( theme_locals("notice_cannot_update"), theme_locals("notice_cannot_update_2") ), // %1$s = plugin name(s) 'install_link' => _n_noop( theme_locals("install_link"), theme_locals("install_link_2") ), 'activate_link' => _n_noop( theme_locals("activate_link"), theme_locals("activate_link_2") ), 'return' => theme_locals("return"), 'plugin_activated' => theme_locals("plugin_activated"), 'complete' => theme_locals("complete"), // %1$s = dashboard link 'nag_type' => theme_locals("updated") // Determines admin notice type - can only be 'updated' or 'error' ) ); tgmpa( $plugins, $config ); } WEBI Storage Solutions for a Stylish and Organized Home

WEBI Storage Solutions for a Stylish and Organized Home

The small details in a home can change every little thing. the-webi.com offers storage space solutions that do not just help with organization however additionally fit wonderfully right into various styles of decor. From layer shelfs to door deals with, each piece is made with practicality and aesthetics in mind.

A Coat Rack That Works With Your Space

A layer rack is more than a location to toss your coat. The WEBI wall-mounted options, including the expandable wood layer rack, allow you hang layers, bags, and more without cluttering the room. You may think all layer shelfs coincide, yet the appropriate layout makes a distinction in just how a space feels.

Over-the-Door Hooks for Effortless Organization

Not everyone has wall area to spare, and that's where over-the-door hooks come in. These hooks fit perfectly over typical doors, supplying a very easy means to hang coats, towels, or bags. Strong construction and a smooth style make them a fantastic option for bedrooms, shower rooms, and also entranceways where room is limited.

Accordion Wall Hangers That Adjust to Your Needs

An accordion wall surface hanger isn't just a practical item - it's versatile and trendy. Expand it to hold numerous items or collapse it when not in use. WEBI's version comes in a wood surface that includes warmth to an area while maintaining day-to-day basics available. It's a very easy way to develop added storage space.

Pipeline Clothes Racks for an Industrial Touch

For those that love a contemporary industrial aesthetic, WEBI's pipeline clothes shelfs offer a bold yet practical method to keep clothing. These racks can manage larger garments and add an edgy, loft-style component to any room. Open up closets could not be for everyone, but they bring an unique beauty to a space.

Racks With Hooks for Extra Versatility

Why select in between a rack and hooks when you can have both? WEBI's shelves with hooks offer a portable option for entryways, kitchen areas, and washrooms. Shop little essentials on the shelf while keeping frequently made use of products hanging listed below for simple accessibility. Functional design does not need to indicate sacrificing design.

Door Handles That Combine Style and Strength

A door manage might not be the first thing people notice, but it plays a big function in a home's visual. WEBI's deals with, consisting of actors iron options, include personality to doors while ensuring durability. They're wonderful for barn doors, cupboards, and also gates, making them both functional and attractive.

Cast Iron Hooks That Last a Lifetime

Some things never ever go out of style, and cast iron hooks come under that group. These hooks bring a vintage appeal while supplying a durable way to hang coats, hats, and even cooking area utensils. Their toughness implies they'll last for several years without losing their charm, unlike less expensive plastic options.

Clips for Small however Mighty Organization

Tiny but sensible, clips can help keep points in order where bigger storage space options aren't needed. From maintaining bags secured to protecting papers or arranging tiny accessories, WEBI's clips provide a basic solution for daily mess. Some may underestimate their effectiveness, but once you have them, they're tough to give up.

Edge Brackets That Add Stability

Not every storage option has to do with hanging or holding products. Corner braces aid strengthen racks, making them tougher and a lot more reliable. WEBI's alternatives come in various coatings to match both modern and standard interiors, making sure feature without compromising on looks. An unsteady rack can be irritating, and an excellent brace protects against that.

Picking Storage That Works for You

Discovering the ideal storage solution isn't nearly removing mess. It's regarding creating a home that really feels comfortable and looks good. WEBI's collection supplies something for each area, from functional hooks to elegant shelfs, showing that company does not need to be dull. A little idea into storage selections makes all the difference.