All Projects → roots → Soil

roots / Soil

Licence: mit
WordPress plugin which contains a collection of modules to apply theme-agnostic front-end modifications

Projects that are alternatives of or similar to Soil

Space Lover
Git-ified. Synced via git-svn. Magically add an extra space between Chinese characters and English letters / numbers / common punctuation marks
Stars: ✭ 24 (-97.49%)
Mutual labels:  wordpress-plugin
Wp Hercules
Simple domain mapping for top domains
Stars: ✭ 13 (-98.64%)
Mutual labels:  wordpress-plugin
Fancy Product Designer Extended
Updated fancy product designer plugin
Stars: ✭ 21 (-97.8%)
Mutual labels:  wordpress-plugin
Wp Controllers
The OOP Developer's best friend for working with objects in WordPress
Stars: ✭ 25 (-97.38%)
Mutual labels:  wordpress-plugin
Momtaz Nmwdhj
A WordPress forms elements API plugin.
Stars: ✭ 11 (-98.85%)
Mutual labels:  wordpress-plugin
Gutenblocks
My personal collection of Gutenberg blocks.
Stars: ✭ 15 (-98.43%)
Mutual labels:  wordpress-plugin
Wordpressplugin
Rocket.Chat.Livechat plug-in for WordPress
Stars: ✭ 23 (-97.59%)
Mutual labels:  wordpress-plugin
Wordpress To Jekyll Exporter
One-click WordPress plugin that converts all posts, pages, taxonomies, metadata, and settings to Markdown and YAML which can be dropped into Jekyll
Stars: ✭ 951 (-0.42%)
Mutual labels:  wordpress-plugin
Wp Downloadmanager
Adds a simple download manager to your WordPress blog.
Stars: ✭ 11 (-98.85%)
Mutual labels:  wordpress-plugin
Pods Visualize
Pods Visualize lets you visualize the relationship connections between your pods configs
Stars: ✭ 20 (-97.91%)
Mutual labels:  wordpress-plugin
Wp Structuring Markup
🔌 WordPress: Plug-in Markup (JSON-LD) structured in schema.org
Stars: ✭ 26 (-97.28%)
Mutual labels:  wordpress-plugin
Better Search
Better Search WordPress plugin
Stars: ✭ 9 (-99.06%)
Mutual labels:  wordpress-plugin
Wordpress Related
WordPress codes
Stars: ✭ 15 (-98.43%)
Mutual labels:  wordpress-plugin
Cyr2lat
Converts Cyrillic characters in post, page and term slugs to Latin characters. Useful for creating human-readable URLs.
Stars: ✭ 25 (-97.38%)
Mutual labels:  wordpress-plugin
Ultimate Blocks
Custom Gutenberg Blocks for Bloggers and Marketers. Create Better Content With Gutenberg.
Stars: ✭ 29 (-96.96%)
Mutual labels:  wordpress-plugin
Mcavoy
Discover what visitors are searching for on your WordPress site.
Stars: ✭ 24 (-97.49%)
Mutual labels:  wordpress-plugin
Pods
The Pods Framework is a Content Development Framework for WordPress - It lets you create and extend content types that can be used for any project. Add fields of various types we've built in, or add your own with custom inputs, you have total control.
Stars: ✭ 883 (-7.54%)
Mutual labels:  wordpress-plugin
Wp2static
WordPress static site generator for security, performance and cost benefits
Stars: ✭ 952 (-0.31%)
Mutual labels:  wordpress-plugin
Wp Event List
Wordpress Plugin to show a small amount of events in an easy to use calender/schedule
Stars: ✭ 29 (-96.96%)
Mutual labels:  wordpress-plugin
Builder Template Categories
Organize your Page Builder Templates in the WordPress Admin. Time saver, especially for bigger projects. Get a better and faster overview, don't get lost. Filter templates with your categories. With extended plugin & theme support.
Stars: ✭ 20 (-97.91%)
Mutual labels:  wordpress-plugin

Soil

Packagist Packagist Downloads Build Status

A WordPress plugin which contains a collection of modules to apply theme-agnostic front-end modifications.

Soil is a commercial plugin available from https://roots.io/plugins/soil/. It's hosted on a public GitHub repository to allow for contributions from the community. It's also published on Packagist to allow easier installation with Composer.

Requirements

Prerequisite How to check How to install
PHP >= 5.6.x php -v php.net

Installation

You can install this plugin via the command-line or the WordPress admin panel.

via Command-line

If you're using Composer to manage WordPress, add Soil to your project's dependencies.

composer require roots/soil

Then activate the plugin via wp-cli.

wp plugin activate soil

via WordPress Admin Panel

  1. Download the latest zip of this repo.
  2. In your WordPress admin panel, navigate to Plugins->Add New
  3. Click Upload Plugin
  4. Upload the zip file that you downloaded.

Modules

  • Cleaner WordPress markup
    add_theme_support('soil', 'clean-up');

  • Disable REST API
    add_theme_support('soil', 'disable-rest-api');

  • Disable asset versioning
    add_theme_support('soil', 'disable-asset-versioning');

  • Disable trackbacks
    add_theme_support('soil', 'disable-trackbacks');

  • Google Analytics
    add_theme_support('soil', ['google-analytics' => 'UA-XXXXX-Y']);

  • Move all JS to the footer
    add_theme_support('soil, 'js-to-footer');

  • Cleaner walker for navigation menus
    add_theme_support('soil', 'nav-walker');

  • Convert search results from /?s=query to /search/query/
    add_theme_support('soil', 'nice-search');

  • Root relative URLs
    add_theme_support('soil', 'relative-urls');

And in a format you can copy & paste into your theme:

/**
 * Enable features from Soil when plugin is activated
 * @link https://roots.io/plugins/soil/
 */
add_theme_support('soil', [
    'clean-up',
    'disable-rest-api',
    'disable-asset-versioning',
    'disable-trackbacks',
    'google-analytics' => 'UA-XXXXX-Y',
    'js-to-footer',
    'nav-walker',
    'nice-search',
    'relative-urls'
]);

Module options

Soil 4 introduced support for options on some modules.

Full annotated list of features and options
/**
 * Enable features from Soil when plugin is activated
 * @link https://roots.io/plugins/soil/
 */
add_theme_support('soil', [
    /**
     * Clean up WordPress
     */
    'clean-up' => [
        /**
         * Obscure and suppress WordPress information.
         */
        'wp_obscurity',

        /**
         * Disable WordPress emojis.
         */
        'disable_emojis',

        /**
         * Disable Gutenberg block library CSS.
         */
        'disable_gutenberg_block_css',

        /**
         * Disable extra RSS feeds.
         */
        'disable_extra_rss',

        /**
         * Disable recent comments CSS.
         */
        'disable_recent_comments_css',

        /**
         * Disable gallery CSS.
         */
        'disable_gallery_css',

        /**
         * Clean HTML5 markup.
         */
        'clean_html5_markup',
    ],

    /**
     * Disable WordPress REST API
     */
    'disable-rest-api',

    /**
     * Remove version query string from all styles and scripts
     */
    'disable-asset-versioning',

    /**
     * Disables trackbacks/pingbacks
     */
    'disable-trackbacks',

    /**
     * Google Analytics
     */
    'google-analytics' => [
        /**
         * This is to go live with GA.
         *
         * This should probably be false in non-production.
         */
        'should_load' => false,

        /**
         * Google Analytics ID
         *
         * This is also known as your "property ID" or "measurement ID"
         *
         * Format: UA-XXXXX-Y
         */
        'google_analytics_id' => null,

        /**
         * Optimize container ID
         *
         * Format: OPT-A1B2CD (previously: GTM-A1B2CD)
         *
         * @link https://support.google.com/optimize/answer/6262084
         */
        'optimize_id' => null,

        /**
         * Anonymize user IP addresses.
         *
         * This might be required depending on region.
         *
         * @link https://github.com/roots/soil/pull/206
         */
        'anonymize_ip',
    ],

    /**
     * Moves all scripts to wp_footer action
     */
    'js-to-footer',

    /**
     * Cleaner walker for wp_nav_menu()
     */
    'nav-walker',

    /**
     * Redirects search results from /?s=query to /search/query/, converts %20 to +
     *
     * @link http://txfx.net/wordpress-plugins/nice-search/
     */
    'nice-search',

    /**
     * Convert absolute URLs to relative URLs
     *
     * Inspired by {@link http://www.456bereastreet.com/archive/201010/how_to_make_wordpress_urls_root_relative/}
     */
    'relative-urls',
]);

Support

Use the Roots Discourse to ask questions and get support. License is required.

Contributing

Contributions are welcome from everyone. We have contributing guidelines to help you get started.

Community

Keep track of development and community news.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].