Skip to main content

Sitecore SXA IsLink (Magic) and Open links in a new tab for OOTB navigation component

 Hello People,

I hope you all are doing just well in this pandemic time and staying home and working from home, Today i will just have a very quick post to demonstrate some of the flexibility of SXA 

Requirement

Well, we had very simple requirement where we used OOTB navigation component, and everything worked just fine but we wanted to have all those link open in a new tab, So we started looking at what HTML this navigation component is returning, So we can just create a clone and have our custom links generated, but it did not help as existing component just renders the variant so structure must have been defined in variant 

Solution

So next check was for variant structure and i observe that there are no link ("anchor" tag defined), but the beauty of SXA is there is a field call "Is Link" which converts your text field into anchor while rendering, see below 


1) Here if you see "Is link" is the one responsible for converting any field of a variant to an anchor (quite cool and handy)

2) And second solution to the problem is because its creating a link internally we needed a way to add target="_blank" to all anchors generated in navigation and if you see "Link attributes" fields, over there you can specify those custom attributes to get those rendered when links are generated

Now all menu links of OOTB navigation component will open in a new window 

I think very helpful and quick solution, Powerful SXA !!!

See you in the next post.

Comments

  1. The Casino, Hotel and Theme Park - Mapyro
    The Casino is 성남 출장마사지 a luxury resort and casino in Paradise, Nevada with 영주 출장샵 30000 slot machines and 40 영천 출장안마 table games. A 서귀포 출장안마 popular feature of The 부산광역 출장안마 Casino, the casino

    ReplyDelete

Post a Comment

Popular posts from this blog

High CPU to completely normal CPU - SXA issue, SXA pages not loading in mobile device

  Hi Team, Today i am going to share one of the nightmarish issue with you all, We are having Sitecore 9.1.1 hosted in azure PaaS environment Our site was working just fine and no noise, but we have been working on a feature release where 7-8 months of development needed to be released to production, Big GO LIVE event right?  Also to make the development smoother we also introduced BLUE/GREEN deployment slots in the same release, so we can easily SWAP slots and go live Everything went well, we went live, we even did load and performance testing on our staging and pre-prod and we were confident enough of results Very next day we started getting "SITE DOWN" alerts, and also product owners and clients mentioned that site is very slow for them in US time and in our morning when we were accessing it, it was working lighting fast so we were clue less at start, but we started digging  1) First thing caught our eyes were HIGH CPU spikes, in US time, also without any traffic CPU u...

One or more exceptions occurred while processing the subscribers to the 'item:creating' event

I was recently installing the packages from one of the QA environment to my local Sitecore instance, "Media library package" to be precise, And it started giving me this below error One or more exceptions occurred while processing the subscribers to the 'item:creating' event Looking at the sitecore logs, it gave me more info on the context and the actual inner exception was following Solution: 'Name' should consist only of letters, digits, dashes or underscore Now it was evident that some of my file names were violating the naming rule, I could see in the log just before exception from where the installer stopped creating items, and that file name had round braces "(" and ")" at the end of it, with my surprise I was able to create the item with those name in the content tree, but below was the solution for it, Solution I am using SC 9.0.1 and in that Go to Sitecore.Marketing.config file residing in "App_Config\Sitecore\Mar...

An error occurred while receiving the HTTP response to This could be due to the service endpoint binding not using the HTTP protocol. This could also be due to an HTTP request context being aborted by the server (possibly due to the service shutting down). See server logs for more details.

You have noticed many times that everything was working fine and suddenly the below error starts coming and you find no way to work it out An error occurred while receiving the HTTP response to This could be due to the service endpoint binding not using the HTTP protocol. This could also be due to an HTTP request context being aborted by the server (possibly due to the service shutting down). See server logs for more details. The reason for this is the receiving size of WCF service is smaller then the data which is coming from service It was working before because it was small,So you will have to try to increase the receiving setting in your end point,Possible settings can be following maxStringContentLength="2147483647" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" maxArrayLength="2147483647" That would definately help you!!!