An example will illustrate the problem best.
My view needs to:
* take a content id as a contextual filter
* get a query string from the url so it can be used in a custom text of a link.
* use an exposed filter, and reload the page, not ajax
I'm attaching a simple view of node content to show the problem.
In this view go to mysite.com/querytest/1
if there is a node 1, output should look like this:
[node title]
1 X=0
X is the query string being looked for by Global null, and 0 is the default value provided.
there is an exposed sort on node id. click apply.
The page reloads with this url: mysite.com/querytest/1/all?sort_by=nid&sort_order=DESC
The view output looks like this:
[node title]
1 X=all
What is SHOULD do is this: mysite.com/querytest/1?sort_by=nid&sort_order=DESC
[node title]
1 X=0
Where did the 'all' come from? looking at the yml, it seems that global null gets an exception value of 'all' by default, even though its not exposed with a form to edit like a regular contextual filter.
changing this directly in the yml to an empty string and then importing config doesn't help; it gets treated as an asterisk and output in the url as %2a.
All this wouldn't matter except I need to get the query string value to use in custom markup, and if the url is /querytest/1/all then global null gets 'all' instead of the value of X.
Any suggestions for a workaround would be appreciated. Is it possible I can fix this with a views hook to modify the url before the page is loaded? But I feel the url is a symptom of the problem, and even if I patched up the url, it would not change the value of the global null that is being put into the arguments.null variable.
Remove the underscore in the yml filename to import.