Paint layout sending dynamic node to asset listing with_get


#1

v5.4.2.1

In my content template’s paint layout - i am requesting it to display an asset listing page (#99999) results by sending a dynamic root ID (i.e. specified in the content template’s metadata field named asset_metadata_gallery_root).

This is what I am experiencing:

  1. i can get the paint layout to display the metadata value correctly. e.g.
    %asset_metadata_gallery_root% (e.g. 12345 will be printed).

  2. i can get the paint layout to call the asset listing and the asset listing will print the expected content if i supply a specific node e.g:
    %globals_asset_contents:99999^with_get:root=12345%

  3. however, when i attempt to send the metadata value (as item 1 above) as a get parameter, i’ll get No Results displayed. e.g.
    %globals_asset_contents:99999^with_get:root={asset_metadata_gallery_root}%

  4. The asset listing is configured to have GET Variable Name “root” configured at the “Replacement Root node for the listing…”

I have tried using “as_asset” modifier on the metadata value but that didnt help. I cannot do the regular nest asset in a new div because it is within a conditional statement.

Any help would be much appreciated!


(Bart Banda) #2

Try requesting the Asset Listing via just %globals_asset_contents:99999%. Then in the Asset Listing Details screen for the dynamic root node, use %globals_asset_metadata_gallery_root% as the set value for the replacement root node.


#3

Thanks for your suggestion.

I also removed the existing GET Variable name just in case, and only use the Set Value you suggested.

But this method also returns no results found.


#4

I recently had the same problem, I ended up getting it working like this:

<script runat="server">print('%' + 'globals_asset_contents_raw:99999^with_get:root='+  %asset_metadata_gallery_root% +'%');</script>

(Bart Banda) #5

Yes, the SSJS method will work, but also using a nested content container instead of a keyword should work to.

The other method to try could be to use %globals_asset_contents:99999^with_get:root={globals_asset_metadata_gallery_root}% as I believe the “globals” context in this case will be the Content Container asset.


#6

Yes this worked, thanks :slight_smile: I have never used this method for anything before… always good to learn something new!.

I will use this for now, although I am still upset that the nested method doesnt work! (I have tried using root={globals_asset_metadata_gallery_root} and it does not work either!)