If I were to convert the XSLTsearch to Razor. Would there be any drawbacks or anything I should be aware of? We are trying to get convert all of our XSLT to Razor, and the XSLT search, though awesome, needs to be converted for our needs. So I am embarking on this task. Would there be an alternative search? We customized it a bit anyways to fit our needs using droplists for our filters to do our search instead of your basic text input search.
This is really not an anwer but more a pointer to a ressource that I think might be useful for you - In today's episode of the Umbraco advent calendar Jason Prothero writes about faceted search using Razor: http://24days.in/umbraco/2012/razor-faceted-search/
Interesting Jan. Just happened to be the same day I asked this question. What a coincidence! And he uses filters too, which is almost exactly what I was looking for. Will check it out more indepth and see if we can use it.
I've slowly been working on RazorSearch to replace XSLTsearch but frankly the performance is nowhere near as good as with XSLTsearch. Since XSLTsearch isn't something you change I don't see a reason to try to code it in Razor. XSLT will be supported in Umbraco for a long time. Eventually Razor will be faster but it isn't now. Think of XSLTsearch as a compiled dll... you would just live with it. Just becuase it is actually in XSLT doesn't mean you should abandon it even if all your own macros are done in Razor.
That's my experience, thinking, and advice, anyway.
There's always Examine of course. And Jason's approach is also interesting.
One of the biggest issues we are having is with XSLT and image rendering. For some reason the upgrade to 4.7 and still an issue in 4.9 is the GetMedia XSLT property. For some reason the XSLT will randomly just not get the path to the images. What we did with the list of results in the XSLT search was pull a thumbnail image from a property in the Document or Node that goes along with the title and the short description of the element found with the XSLT search.
For some reason everything that we had in XSLT won't render the image most of the time. With Razor, seems to be a bit more stable. That is why we want to rely on Razor to do a search. XSLT search has done an awesome job, but we need Razor for better reliability on media rendering. I have no idea why the XSLT media will not render most of the time. I opened a bug a while back with Umbraco's bug tracker but have not heard anything back as of yet.
If you have any insight on why the XSLT version of the GetMedia is not working, we would like to hear it. But for now, our option right now is to find a Razor solution.
Thanks, Carlos, for explaining. I'm surprised though. Any chance you have a link to the reported bug... I'd like to look into it further as I've not had an issue.
If you see, Some of the images or thumbs won't show up, even though they are selected and published in the node.
We have our mobile site running the XSLT to get the media instead of Razor right now using an altTemplate. We have switched most of our desktop site over to Razor. The mobile site is having the same issue. In the examples below you will see a listing page that does not render the images, You will see a default image in it's place if it can not find the image. Also there is an issue where it does not render in our slideshows. So we found that the issue is most likely the way XSLT is getting the image paths and just not rendering the URL or path. Any page on our site can be viewed as a mobile device on a desktop just by putting /mobile at the end of the URL, that is the altTemplate. It also seems that if we publish the pages again the images might come back, BUT then after a while they stop showing up again.
Wow, that is extremely odd! Thanks for sharing the links. I have to believe it is something quite simple or everyone would be reporting such a problem. Perhaps another set of eyes could see the issue? If you're willing, would you allow me to log in to the site (or a dev or qa version of it) to look at the document types, a few of the pages that do and don't work, and the xslt you're running? If so, drop me a note through my website at http://www.percipientstudios.com/about/contact.aspx.
Let me talk to my boss about that. Will let you know. Might not be until next week though. Boss is out for the holidays. Thanks for being willing to help out. It has been kind of a mind boggling issue for us.
Here is an issue that Sebastiaan fixed with inline XSLT and and 4.9 and 4.9.1 with images not rendering correctly. I actually went and got the fixed DLL and that did not seem to fix our issue either. Might be 2 separate issues. http://issues.umbraco.org/issue/U4-776
And this is the issue I reported about 3 weeks ago.
This may or may not be something to do with it, but the images that seem to be having issues seem to have spaces in the image names in Umbraco. Could this be an issues. I thought the images were pulled by ID, but if I am converting them to NiceUrl then it is getting the name right?
Or is that how it works. I may be completely wrong. I am going to try to fix some of the names and republish them. It seems that after I republish the nodes, the images show up but then after our web.config cache resets the issue happens again. Not sure.
EDIT:
Nevermind, I tried changing the names in Umbraco with the spaces to have no space and it is still doing it. Would things like dashes or underscores in the file names mess anything up in XSLT rendering images?
XSLT Search to Razor
If I were to convert the XSLTsearch to Razor. Would there be any drawbacks or anything I should be aware of? We are trying to get convert all of our XSLT to Razor, and the XSLT search, though awesome, needs to be converted for our needs. So I am embarking on this task. Would there be an alternative search? We customized it a bit anyways to fit our needs using droplists for our filters to do our search instead of your basic text input search.
Thanks.
Hi Carlos
This is really not an anwer but more a pointer to a ressource that I think might be useful for you - In today's episode of the Umbraco advent calendar Jason Prothero writes about faceted search using Razor: http://24days.in/umbraco/2012/razor-faceted-search/
I hope this helps somehow.
/Jan
Interesting Jan. Just happened to be the same day I asked this question. What a coincidence! And he uses filters too, which is almost exactly what I was looking for. Will check it out more indepth and see if we can use it.
Thanks
I've slowly been working on RazorSearch to replace XSLTsearch but frankly the performance is nowhere near as good as with XSLTsearch. Since XSLTsearch isn't something you change I don't see a reason to try to code it in Razor. XSLT will be supported in Umbraco for a long time. Eventually Razor will be faster but it isn't now. Think of XSLTsearch as a compiled dll... you would just live with it. Just becuase it is actually in XSLT doesn't mean you should abandon it even if all your own macros are done in Razor.
That's my experience, thinking, and advice, anyway.
There's always Examine of course. And Jason's approach is also interesting.
cheers,
doug.
@Douglas,
One of the biggest issues we are having is with XSLT and image rendering. For some reason the upgrade to 4.7 and still an issue in 4.9 is the GetMedia XSLT property. For some reason the XSLT will randomly just not get the path to the images. What we did with the list of results in the XSLT search was pull a thumbnail image from a property in the Document or Node that goes along with the title and the short description of the element found with the XSLT search.
For some reason everything that we had in XSLT won't render the image most of the time. With Razor, seems to be a bit more stable. That is why we want to rely on Razor to do a search. XSLT search has done an awesome job, but we need Razor for better reliability on media rendering. I have no idea why the XSLT media will not render most of the time. I opened a bug a while back with Umbraco's bug tracker but have not heard anything back as of yet.
If you have any insight on why the XSLT version of the GetMedia is not working, we would like to hear it. But for now, our option right now is to find a Razor solution.
Thanks,
Carlos
Thanks, Carlos, for explaining. I'm surprised though. Any chance you have a link to the reported bug... I'd like to look into it further as I've not had an issue.
cheers,
doug.
@Douglas,
Yeh no problem. Here are some examples of the issue.
http://www.dmns.org/teachers/teachers-programs-search?search=Grade%206-8 // Page using the XSLT search with some edits in the results.
If you see, Some of the images or thumbs won't show up, even though they are selected and published in the node.
We have our mobile site running the XSLT to get the media instead of Razor right now using an altTemplate. We have switched most of our desktop site over to Razor. The mobile site is having the same issue.
In the examples below you will see a listing page that does not render the images, You will see a default image in it's place if it can not find the image.
Also there is an issue where it does not render in our slideshows. So we found that the issue is most likely the way XSLT is getting the image paths and just not rendering the URL or path. Any page on our site can be viewed as a mobile device on a desktop just by putting /mobile at the end of the URL, that is the altTemplate.
It also seems that if we publish the pages again the images might come back, BUT then after a while they stop showing up again.
http://www.dmns.org/exhibitions/current-exhibitions/mobile // listing page using XSLT to render the images.
http://www.dmns.org/exhibitions/current-exhibitions/discovery-zone/mobile // Details page using XSLT to render the image slideshow. You will see no images though.
Hi, Carlos,
Wow, that is extremely odd! Thanks for sharing the links. I have to believe it is something quite simple or everyone would be reporting such a problem. Perhaps another set of eyes could see the issue? If you're willing, would you allow me to log in to the site (or a dev or qa version of it) to look at the document types, a few of the pages that do and don't work, and the xslt you're running? If so, drop me a note through my website at http://www.percipientstudios.com/about/contact.aspx.
cheers,
doug.
@Douglas,
Let me talk to my boss about that. Will let you know. Might not be until next week though. Boss is out for the holidays. Thanks for being willing to help out. It has been kind of a mind boggling issue for us.
Carlos
@Douglas,
Here is an issue that Sebastiaan fixed with inline XSLT and and 4.9 and 4.9.1 with images not rendering correctly. I actually went and got the fixed DLL and that did not seem to fix our issue either. Might be 2 separate issues. http://issues.umbraco.org/issue/U4-776
And this is the issue I reported about 3 weeks ago.
http://issues.umbraco.org/issue/U4-1292
Carlos
@Douglas,
This may or may not be something to do with it, but the images that seem to be having issues seem to have spaces in the image names in Umbraco. Could this be an issues. I thought the images were pulled by ID, but if I am converting them to NiceUrl then it is getting the name right?
Or is that how it works. I may be completely wrong. I am going to try to fix some of the names and republish them. It seems that after I republish the nodes, the images show up but then after our web.config cache resets the issue happens again. Not sure.
EDIT:
Nevermind, I tried changing the names in Umbraco with the spaces to have no space and it is still doing it. Would things like dashes or underscores in the file names mess anything up in XSLT rendering images?
is working on a reply...