Welcome to Vortx Community Forum, where you can ask questions and receive answers from the staff at Vortx and other members of the community.

If you had a user account on our previous forums website, you will need to register a new account here.

Learn more about...

AspDotNetStorefront
DotFeed

How/Where do I replace SectionID with SEName in URL

Currently Our URLs look something like this:

https://stockwheels.com/c-8788-rims.aspx?section=-4966-5006-5010-

8788 is the Category ID for "Rims"

4966 is the Attribute ID for the Make Name "Ford"

5006 is the Attribute ID for the Model Name "Mustang"

5010 is the Attribute ID for the Year Name "1968"

What we want to do is replace the numerical ID with the actual Name in the URL so we would end up with something like:

https://stockwheels.com/rims.aspx?section=-Ford-Mustang-1968

Using URL rewriting I hope that by getting that far I can then make my URL

https://stockwheels.com/rims/Ford/Mustang/1968

but getting

https://stockwheels.com/rims.aspx?section=-Ford-Mustang-1968

would be a great start. Where/how do I change that? Thank you.
asked Mar 9, 2015 in MultiStore by charleserodgers (130 points)

2 Answers

0 votes

Not sure if this is the correct method but you can re-write the url to substitute the Section ID for the SE Name

 

http://manual.aspdotnetstorefront.com/p-1067-url-rewrite.aspx

 

Format generated: c-##-category-name-with-dashes-for-spaces.aspx

<add name="Section" url="s-{SectionID}-{SEName}.aspx" virtualPath="~/showsection.aspx" checkPhysicalUrlAccess="false" />

 

You could play around with this on a development site to get what you want. I would imagine though the url would need to end with .aspx

answered Mar 10, 2015 by Skriver (2,345 points)
I've lookat that link already, it does not do what I am asking unforntunately. I'm concerned with replacing the numerical ID with it's coresponding SEName in the URL.
0 votes
This is tricky. ASPDotNetStoreFront required ids for any product/category/section. If you don't include it in the route in web.config, it will simply append it or expect it as a querystring. IE /your-se-name.aspx?sectionid=45. It will also require some sort of text to differentiate section from product from category from topic, which is why it uses "s-", "p-" and "t-".

That is the bad news, the good news is you can modify the URL rules in web.config and SE.cs if you have full source to ignore this. We have done this for a customer where they modified their urls to be: "sectionsename/productsename". They are required to maintain unique Section SEName / Product SEName combinations for this to work as their is no ID in either case. We may have needed to modify routes.cs as well, but I don't remember off hand. I know we created our own implementation of IRouteHandler which determined the sectionid and added it to the request context. This way the entity / prduct pages that required the IDs did not have to be altered.

In short it is doable, but takes some work.
answered Mar 10, 2015 by brilliance_mclausing (260 points)

I understand thing being the case for the begining of the URL http://mysite.com/c-####-category.aspx, but what about after "?" example http://mysite.com/c-####-category.aspx?section=--####-

 I'm looking to get that ?section=-####- to read ?section=-SEName-

 

Which xml package are you using? I'm not sure I'm familiar with it.
I added a reply with code and my reply was removed i guess... to answer your question the XML package is entity.grid.xml.config
...