Jump to:

5539 Posts in 1738 Topics by 1224 members

Customising the CMS

SilverStripe Forums » Customising the CMS » escaping HTML tags in page title

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Page: 1
Go to End
Author Topic: 1739 Views
  • Anatol
    126 Posts

    escaping HTML tags in page title Link to this post


    I'm looking for a way to allow escaped HTML tags in the page title. It's no problem to use $Title.XML in the template to escape the tags properly, but if I have a title like "<p> The Paragraph Tag" it confuses the site tree in the CMS. How can I escape HTML titles in the CMS site tree?

    I can enter "&lt;p&gt; The Paragraph Tag" into the navigation label field and it works - but it's always nice to have escapes done automatically. And this could also be a possible error source if a client uses a page title with a '<' or '>' character.


  • Aram
    Community Member
    598 Posts

    Re: escaping HTML tags in page title Link to this post

    Hi Anatol

    I think you could use onBeforeWrite() to escape the string using htmlentities() before writing, something like this:

    function onBeforeWrite(){

    $this->Title = htmlentities($this->Title);

    return Parent::onBeforeWrite();

    Havn't tried it but something like that should work

Page: 1
Go to Top

Want to know more about the company that brought you SilverStripe? Then check out SilverStripe.com

Comments on this website? Please give feedback.