Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

 

BetterNavigator Module for SilverStripe

Back in the era of SilverStripe 2 the default template BlackCandy included SilverStripeNavigator - a...

Read post

A front-end utility menu featuring administration and development tools.

Back in the era of SilverStripe 2 the default template BlackCandy included SilverStripeNavigator - a handy menu utility shown to CMS users when browsing the front-end site that let them quickly edit a page, logout, and switch between viewing the draft and published version of a page.

Fast forward to the modern era of SilverStripe 3 and this useful utility is sadly missing from Simple, SilverStripe’s slick new default theme - meaning it’s existence may be unknown to developers who are new to SilverStripe. It lives on in the SilverStripe core though, and you can easily include it in a site by adding $SilverStripeNavigator somewhere in your page template. Give it a try!

The built-in SilverStripeNavigator is pretty cool but it has remained pretty much unchanged since SilverStripe 2, so while it still works, I thought it could use a few improvements. BetterNavigator expands upon the functionality provided by SilverStripeNavigator in a number of ways: 

Improvements for Content Authors

  • Redesigned user interface
  • Click to toggle menu open/close (state saved between page loads)
  • Clearer draft/published status

Improvements for Developers 

  • Developer tools included (debug/build/flush etc. - shown only to developers)
  • Customise menu by overriding templates (add buttons/change look)
  • No jQuery dependency (just a sprinkling of plain javascript)

Give it a try

BetterNavigator

To quickly install BetterNavigator with Composer use the following command:

composer require jonom/silverstripe-betternavigator dev-master

Then just include $BetterNavigator somewhere in your page template, and run a dev/build?flush=1.

Composer is the recommended way to install SilverStripe modules (read about Composer and SilverStripe here). If you prefer to manually install modules, you can find downloads and instructions on the module’s GitHub page

BetterNavigator requires SilverStripe 3.1 or newer.

Find out more 

Detailed documentation is available on the BetterNavigator Addons listing.

I hope you find BetterNavigator useful.

About the author
Jonathon Menz

Jono Menz is a freelance graphic designer turned web developer from Adelaide, Australia, now based in Canada. Anything he knows about PHP he learned from tinkering with SilverStripe. When he's not copy/pasting code from Stack Overflow, Jono likes to take photos of frustrating subjects like wildlife, water drops and snow flakes. You can get in touch with him at jonathonmenz.com.

Post your comment

Comments

  • This is Awesome - thanks!

    Posted by Chris Brett, 21/01/2016 1:24pm (9 years ago)

  • Hi Ewan, no specific plans at this stage regarding dataobjects but feel free to post your ideas and feature requests as issues over at github. That said, the BetterNavigator.ss template is scoped to the current page, so you should be able to override the template to add buttons and make use of any methods defined on your page controllers.

    Posted by Jonathon Menz, 21/10/2014 1:28pm (10 years ago)

  • This is really great. Are there any plans for making this usable with dataobjects? Or the dataobjects as pages module? That would be really useful!

    The dev tools links will be a real timesaver too.

    Posted by Ewan, 15/10/2014 2:24am (10 years ago)

  • Hi Jonathon,

    I'm just new to this site and I think silverstripe would be a great software to use. Is silverstripe free? if not is there any trial version for this software? Thanks

    Posted by Jane, 08/10/2014 3:33pm (10 years ago)

RSS feed for comments on this page | RSS feed for all comments