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.

Archive /

Our old forums are still available as a read-only archive.

Moderators: martimiz, Sean, biapar, Willr, Ingo

Problems with the search function.


Go to End
Reply


6 Posts   1743 Views

Avatar
SLJ

Community Member, 23 Posts

26 June 2007 at 3:40am

Edited: 26/06/2007 3:41am

This may actually belong in the bugs section. I built the search function following the instructions in "4-site-search." and it works flawlessly most of the time but I discovered that if an entry that qualifies as a search result has an ampersand in it, it fails with the following:

XML Parsing Error: not well-formed
Location: http://localhost/silverstripe/media-appearances/results?Search=Heart&formController=media-appearances%2F&executeForm=SearchForm&action_results=Go
Line Number 88, Column 19:

“The Heart & Soul
------------------^

You can't see it here, but in the actual error the caret is pointing to the space after the ampersand. How can I fix this?

Avatar
Andante

Community Member, 230 Posts

27 June 2007 at 1:11pm

You can fix this by changing $Content.LimitWordCountPlainText to $Content.LimitWordCountXML in the template. I've updated the tutorial with this.

Avatar
SLJ

Community Member, 23 Posts

27 June 2007 at 2:37pm

Thanks. That took care of the error message. Now I have a different issue. The content has special characters in it and the html for those characters is now showing up on the search results page. Like this:

Media appearances in the following documentaries
“The Heart & Soul Series” by ABC-TV

The text shows up the way it's supposed to on the actual page it's from. Any ideas how to fix this?

Avatar
Andante

Community Member, 230 Posts

27 June 2007 at 3:00pm

This appears to be a problem with tinymce's cleanup of HTML content. I will make a ticket in our bug system for this, for now try changing your angled quotes to standard ones - " .

Avatar
SLJ

Community Member, 23 Posts

27 June 2007 at 4:34pm

Andy,

Thanks for looking into this. I tried what you said at it still does it even with standard quotation marks.

Is there some way I can parse the search results to get rid of the HTML code before it's displayed on the page?

It's putting in "amp;" after the ampersands so that the resulting HTML has "&" which makes them display as ampersands instead of being used in the HTML like they're supposed to be. If I could somehow strip out the "amp;" strings. it would display normally.

What's the best way to do that?

Avatar
Andante

Community Member, 230 Posts

27 June 2007 at 4:52pm

Try using $Content.FirstParagraph instead.