Nav Menu Trim


Nav Menu Trim plugin trim html id/class attributes of Nav Menu.


If you have any trouble, you can use the forums or report bugs.


Small patches and bug reports can be submitted a issue tracker in Github. Forking on Github is another good way. You can send a pull request.

Translating a plugin takes a lot of time, effort, and patience. I really appreciate the hard work from these contributors.

If you have created or updated your own language pack, you can send gettext PO and MO files to author. I can bundle it into plugin.

You can also contribute by answering issues on the forums.

Patches and Bug Fixes

Forking on Github is another good way. You can send a pull request.

  1. Fork Nav Menu Trim from GitHub repository
  2. Create a feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am ‘Add some feature’
  4. Push to the branch: git push origin my-new-feature
  5. Create new Pull Request

Contribute guidlines

If you would like to contribute, here are some notes and guidlines.

  • All development happens on the develop branch, so it is always the most up-to-date
  • The master branch only contains tagged releases
  • If you are going to be submitting a pull request, please submit your pull request to the develop branch
  • See about forking and pull requests

Test Matrix

For operation compatibility between PHP version and WordPress version, see below Github Actions.


  • Appearance > Customize > Menus
  • Nav Menu Trim options


  1. Download and unzip files. Or install Nav Menu Trim using the WordPress plugin installer. In that case, skip 2.
  2. Upload nav-menu-trim to the “/wp-content/plugins/” directory.
  3. Activate the plugin through the ‘Plugins’ menu in WordPress.
  4. Configure settings through the Appearance > Customize > Menus > Nav Menu Trim menu in WordPress.
  5. Have fun!

Filter hooks

  • nav_menu_trim_get_options
  • nav_menu_trim_get_option


There are no reviews for this plugin.

Contributors & Developers

“Nav Menu Trim” is open source software. The following people have contributed to this plugin.


Translate “Nav Menu Trim” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • tested up to 6.2.0
  • fix composer scripts
  • update github actions
  • fix load_textdomain method for testability
  • add msgmerge to composer scripts
  • add support section and enhance contribution section to README
  • fix license


  • add composer script
  • remove makepot:php composer script
  • change makepot from php script to wp cli
  • change plugin initialization to plugins_loaded hook
  • replace assert from assertEquals to assertSame


  • fix wp-plugin-unit-test.yml
  • add Upgrade Notice
  • change requires at least to wordpress 4.9
  • change requires to PHP 5.6
  • bump up yoast/phpunit-polyfills version
  • update wp-plugin-unit-test.yml
  • change os to ubuntu-20.04 for ci
  • add wp-plugin-unit-test-matrix.yml


  • add test case for customizer
  • update composer dependencies
  • change from protected variable to public variable for unit test
  • add timeout-minutes to workflows
  • add phpunit-polyfills
  • tested up to 5.8.0


  • tested up to 5.7.0
  • add composer scripts
  • update japanese translation
  • update pot
  • add test case
  • change constant name
  • add sponsor link
  • add FUNDING.yml
  • add donate link
  • update wordpress-test-matrix
  • add GitHub actions for CI/CD, remove .travis.yml


  • rename sanitize_callback function from sanitize_checkbox to sanitize_boolean
  • fix indent and reformat with phpcs and phpcbf
  • add composer.json for test
  • add static code analysis config


  • fix access modifier
  • fix tests
  • fix PHPDoc comment
  • fix filter nav_menu_trim_get_options and nav_menu_trim_get_option
  • change to add_action with load_textdomain
  • add sanitize_checkbox


  • update screenshot
  • fix PHPDoc comment
  • remove $languages_path
  • fix .travis.yml
  • fix tests
  • add nav_menu_submenu_css_class function
  • fix get_options function
  • add default_options
  • fix load_textdomain


  • fix tests
  • fix data validation via wp_kses
  • change output css to here document
  • fix option detect
  • change add_filter from plugin_action_links to plugin_action_links_{$plugin_file}
  • add init function
  • fix codesniffer.ruleset.xml


  • fixed: fix .travis.yml
  • fixed: fix trim_css_class function
  • fixed: check exists class


  • initial release