metabolism / wp-steroids
Supercharge Wordpress with YML configuration, increase performance and security
Installs: 3 535
Dependents: 1
Suggesters: 0
Security: 0
Stars: 13
Watchers: 2
Forks: 2
Open Issues: 0
Type:wordpress-plugin
README
Supercharge WordPress with :
- WordPress' configuration using yml
- Permalink configuration for custom post type and taxonomy
- Maintenance mode
- Backup download in dev mode
- Build hook
- Disabled automatic update
- Enhanced Security
- Better guid using RFC 4122 compliant UUID version 5
- Multisite images sync ( for multisite as multilangue )
- SVG Support
- Better Performance
- WordPress Bugfix
- CSS Fix
- Multisite post deep copy ( with multisite-language-switcher plugin )
- Custom datatable support with view and delete actions in admin
- Google translate or Deepl integration
- Optimisations
YML file allows to configure :
- Image options
- Maintenance support
- Admin pages removal
- WYSIWYG MCE Editor
- Feature Support
- Multi-site configuration
- ACF configuration
- Menu
- Custom Post type
- Custom Taxonomy
- Block
- Page, post, taxonomy template
- Page state
- Post format
- External table viewer
- Advanced roles
Documentation
Documentation is available on Gitbook
Demo
Bedrock install using Wp Steroids : https://github.com/jerome-barbato/wp-steroids-demo
YML Sample
########################################################################## ## ## ## WordPress configuration file ## ## ## ########################################################################## wordpress: ##################### ## Gutenberg ## ##################### gutenberg: replace_reset_styles: true remove_core_block: true disable_classic_theme_styles: true remove_block_library: true load_remote_block_patterns: false #block_editor_style: '/build/bundle.css' #block_editor_script: '/blocks.js' render_template: 'blocks/{name}.html.twig' preview_image: '/app/blocks/{name}.png' ######################### ## Image options ## ######################### image: compression: 90 #on the fly compression ratio resize: #resize image on upload to save server space max_width: 1920 max_height: 2160 ########################### ## Admin interface ## ########################### ## Enable maintenance mode support maintenance: true ## Hide pages from menu remove_menu_page: - edit-comments.php #Comments # - index.php #Dashboard # - jetpack #Jetpack # - upload.php #Media # - themes.php #Appearance # - plugins.php #Plugins # - users.php #Users # - tools.php #Tools # - options-general.php #Settings ## Hide page from submenu remove_submenu_page: #themes.php: nav-menus.php ## Customize WYSIWYG Editor TinyMCE Buttons ##https://www.tiny.cloud/docs/advanced/editor-control-identifiers/ mce_buttons: - formatselect - bold - italic - underline - sup - strikethrough - superscript - subscript - bullist - numlist - blockquote - hr - table - alignleft - aligncenter - alignright - alignjustify - link - unlink - wp_more - spellchecker - wp_adv - dfw #editor_style: backoffice.css ################## ## System ## ################## ## Add blog support support: - page #enable page - post #enable post - tag #enable tag taxonomy for post - category #enable category taxonomy for post ## Add post type support ## https://developer.wordpress.org/reference/functions/post_type_supports/ post_type_support: page: excerpt #add excerpt to page ## Add theme support ## https://developer.wordpress.org/reference/functions/add_theme_support/ theme_support: - disable-layout-styles - thumbnail #add thumbnails to post #- post-formats: # - video # - gallery ## Use WordPress as a headless cms #headless: # mapping: true ## Multisite configuration # multisite: # shared_media: true # clone_post: true ## Declare constant #define: # disallow_file_edit: false ############### ## ACF ## ############### acf: json_path: '/config/acf' settings: use_entity: true #add new optimised return format autoload: true #autoload options user_settings: gallery_height: 210 options_page: #add option pages https://www.advancedcustomfields.com/resources/options-page/ - 'Global' - 'Translations' input: lock_max_length: false toolbars: #customize wysiwyg toolbar Full: 1: - formatselect - bold - italic - blockquote - superscript - subscript - bullist - numlist - table - alignjustify - pastetext - removeformat - link - wp_adv - fullscreen 2: - undo - redo - hr - underline - strikethrough - forecolor - removeformat - charmap - outdent - indent Basic: 1: - bold - italic - blockquote - superscript - subscript - bullist - numlist - link - alignjustify - pastetext - removeformat - fullscreen ################ ## Menu ## ################ menu: depth: 1 register: footer: Footer header: Header ################### ## Sidebar ## ################### sidebar: # https://developer.wordpress.org/themes/functionality/sidebars/#registering-a-sidebar footer: name : Footer description : 'Add widgets here to appear in your footer.' before_widget : '<section id="%1$s" class="widget %2$s">' after_widget : '</section>' before_title : '<h2 class="widget-title">' after_title : '</h2>' ########################## ## New block ## ########################## block: title-text: title: Title with text description: Title with text supports: align_text: 'left' #multiple: false icon: 'editor-alignleft' post_types: - page - guide ########################## ## New post types ## ########################## post_type: # https://developer.wordpress.org/reference/functions/register_post_type/ guide: menu_icon: book #https://developer.wordpress.org/resource/dashicons/ has_archive: true #enable_for_blogs: # - 1 #disable_for_blogs: # - 2# #has_options: true #add acf page option to post type menu capability_type: post #publicly_queryable: false ## options for archive page #posts_per_page: 11 #orderby: name #https://developer.wordpress.org/reference/classes/wp_query/#order-orderby-parameters #order: ASC show_in_rest: true #template: # - - acf/title-text # - lock: # move: true # remove: true supports: - title - excerpt - thumbnail - editor #- author #- excerpt #- trackbacks #- custom-fields #- comments #- revisions #- page-attributes #- post-formats #columns: #add new column to post listing, thumbnail|meta # - thumbnail #taxonomies: # - category #labels: # name: 'Guides' # singular_name: 'Guide' # all_items: 'Tous les guides' # edit_item: 'Editer le guide' # view_item: 'Voir le guide' # update_item: 'Mettre à jour le guide' # add_new_item: 'Ajouter un guide' # new_item_name: 'Nouveau guide' # search_items: 'Rechercher un guide' # popular_items: 'Guides populaires' # not_found: 'Aucun guide trouvé' ########################## ## New taxonomies ## ########################## taxonomy: # https://developer.wordpress.org/reference/functions/register_taxonomy/ item: ## options for archive page #posts_per_page: 11 #orderby: name #https://developer.wordpress.org/reference/classes/wp_term_query/__construct/ #order: ASC #radio: true #display terms selection as radio instead of checkbox #publicly_queryable: false show_in_rest: true object_type: - guide #capabilities: # manage_terms: 'do_not_allow' # edit_terms: 'do_not_allow' # delete_terms: 'do_not_allow' # assign_terms: 'edit_posts' #labels: # name: 'Catégories' # singular_name: 'Catégorie' # all_items: 'Toutes les catégories' # edit_item: 'Editer la catégorie' # view_item: 'Voir la catégorie' # update_item: 'Mettre à jour la catégorie' # add_new_item: 'Ajouter une catégorie' # new_item_name: 'Nouvelle catégorie' # search_items: 'Rechercher une catégorie' # popular_items: 'Catégories populaires' # not_found: 'Aucune catégorie trouvée' #################################### ## Templates/States/Formats ## #################################### ## Add post and taxonomy templates #template: # page: # coming_soon: 'Coming Soon' # not_found: '404' # post: # video: 'Video' # taxonomy: # item: # edito: 'Edito' # podcast: 'Podcast' # reportage: 'Reportage' # video: 'Video' ## Add page states like "homepage" #page_states: #archive_guide: 'Guide archive' ################################# ## Database table viewer ## ################################# #table: # newsletter: # page_title: Newsletter # menu_title: Newsletter # column_title: id # export: false # columns: # name: Name # email: Email # company: Company # type: Type # contact: # page_title: Contact # menu_title: Contact # column_title: id # columns: # name: Name # email: Email # company: Company # request: Request ############################################# ## Add Roles ## ## ## ## To reload role please go to ## ## /wp-admin/index.php?reload_role=1 ## ## ## ############################################# #role: # translator: # display_name: Translator # redirect_to: edit.php?post_type=guide # #inherit: editor # capabilities: # read: true # publish: false # manage_items: true # edit_items: true # # edit_blocks: false # # manage_categories: true # edit_category: true # delete_category: false # assign_category: false # # edit_others_pages: true # read_page: true # edit_pages: true # publish_pages: false # edit_published_pages: true # # edit_others_posts: true # read_post: true # edit_posts: true # publish_posts: false # edit_published_posts: true # # acf_edit_taxonomy: false # acf_edit_layout: false # acf_edit_relationship: false # acf_edit_repeater: false # acf_edit_true-false: false # acf_edit_radio: false # acf_edit_select: false # acf_edit_image: false # acf_edit_file: false # acf_edit_link: false # acf_edit_post-object: false ############################ ## Plugins specific ## ############################ #plugins: # redirection: # redirection_role: edit_others_posts ######################### ## Optimisations ## ######################### rewrite_rules: remove: - author - attachment - embed - trackback - comment # - feed #################### ## Security ## #################### security: rest_api: false xmlrpc: false pings: false disable_update: true unfiltered_html: false ################## ## Search ## ################## #search: # change search settings # use_metafields: false # posts_per_page: 12