Expand my Community achievements bar.

Help shape the future of AI assistance by participating in this quick card sorting activity. Your input will help create a more effective system that better serves your needs and those of your colleagues.
SOLVED

Lowercase D=g

Avatar

Level 2

Hi, I am sure this isn't a new question but I can't find it anywhere in the forums.

I am using 'D=g' in multiple places in our reporting to get the url, we are having a problem however with URLs where one customer enters upper case characters and another customer enters lower case characters. 

How can I force the results of 'D=g' to be either upper or lower case without replacing 'D=g' with a data element that holds the url?

Thanks!

1 Accepted Solution

Avatar

Correct answer by
Employee Advisor

You don't actually have to pass the full URL into the prop/eVar(s). Page URL override allows you to still use D=g.

View solution in original post

10 Replies

Avatar

Level 10

You may need to run the URL through a function to normalize the case. I know basic javascript has an easy method for this.

JavaScript String toLowerCase() Method

Gigazelle​ - is there something within Analytics that the customer can use to normalize case?

Avatar

Level 2

Thanks for responding Jantzen,

I was hoping not to have to transmit and convert the whole url for each time I reference the url.  I would like to have the advantage of using the D=g shorthand, but have the result turned all lowercase when the D=g is converted into a url on the Adobe server end. 

Certainly I could store the URL in a data element and force it lowercase there using DTM or custom code, but then I have a number of large URL strings in every beacon call instead of a quick simple "D=g".  Not to mention a lot of refactoring.

Avatar

Level 10

Yeah, that makes sense. I've tagged our Analytics community manager incase he knows of some tricks in processing rules or some other function of Analytics that might accomplish this.

Avatar

Employee Advisor

You could assign a data element to page URL override, and have the data element use toLowerCase() on the URL.

Avatar

Level 2

Thanks Gigazelle, that was exactly what I was hoping to avoid.  But it sounds like that is my only alternative. I appreciate the confirmation.

Would be nice if when launch comes around we had a "D=gl" or a "d=g" or something to give us this functionality without losing the minified representation. 

Avatar

Level 10

Feel free to suggest an idea in the Launch, by Adobe​ community for something like this.

Avatar

Correct answer by
Employee Advisor

You don't actually have to pass the full URL into the prop/eVar(s). Page URL override allows you to still use D=g.

Avatar

Community Advisor

Disclaimer - This is perhaps not supported... but at any rate, you might try this:

In your s.doPlugins function, add this line:

s.pageURL = s.pageURL.toLowerCase();

In my tests, I found that this value is the source of s.g when the beacon is composed and transmitted.

Thanks for the question.  I learned something today!

-Stew

Avatar

Community Advisor

Oh!

It looks like this is absolutely supported and is the same thing that Gigazelle was referring to.

Link to documentation : pageURL

I think it's super nice to think that I could use this to remove user-specific query string arguments so that URL aggregation would be cleaner / easier.

Avatar

Level 2

Thanks for confirming that it is working for you stewarts16448458 and thanks for the helpful suggestions to everyone.