Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Craig O'Mahony 364 posts 918 karma points
    Oct 29, 2018 @ 11:50
    Craig O'Mahony
    0

    Pass multiple parameters to macro

    Hi,

    I've set up a macro a parameter (nodeID Integer) and from a partial view I'm calling the macro like this:

    @umbraco.RenderMacro("MembersMenu", new { nodeID = 6389 })
    

    This work fine but I've added another parameter (mobileClass textstring) and I've extended the call to:

    @umbraco.RenderMacro("MembersMenu", new { nodeID = 6390, mobileClass= "bg-palenavy" })
    

    I'm not getting any errors but the macro isn't reading in the 2nd parameter:

    var page = Umbraco.Content(Model.MacroParameters["nodeID"]);
    var mobileClass= Umbraco.Content(Model.MacroParameters["mobileClass"]);
    

    Any ideas anyone?

    C

  • Michaël Vanbrabandt 863 posts 3348 karma points c-trib
    Oct 29, 2018 @ 12:24
    Michaël Vanbrabandt
    0

    Hi Craig,

    var mobileClass= Umbraco.Content(Model.MacroParameters["mobileClass"]);
    

    Now you are trying to find a content based on the mobileClass. Shouldn't this be:

    var mobileClass = (string)Model.MacroParameters["mobileClass"];
    

    Hope this helps!

    /Michaël

  • Craig O'Mahony 364 posts 918 karma points
    Oct 29, 2018 @ 14:22
    Craig O'Mahony
    0

    Hi Michael,

    Sadly that hasn't made any difference :(

    Thanks, C

  • Michaël Vanbrabandt 863 posts 3348 karma points c-trib
    Oct 29, 2018 @ 14:30
    Michaël Vanbrabandt
    0

    Craig,

    did you add the parameter to your Macro in the backoffice:

    https://our.umbraco.com/documentation/reference/templating/macros/

    Hope this helps!

    /Michaël

  • Craig O'Mahony 364 posts 918 karma points
    Oct 29, 2018 @ 15:55
    Craig O'Mahony
    0

    I did indeedy

    enter image description here

  • Michaël Vanbrabandt 863 posts 3348 karma points c-trib
    Oct 30, 2018 @ 07:41
    Michaël Vanbrabandt
    0

    Hi Craig,

    what is the result when you add the following into your Macro view:

    @Model.MacroParameters.Count
    

    /Michaël

  • Craig O'Mahony 364 posts 918 karma points
    Oct 30, 2018 @ 12:00
    Craig O'Mahony
    1

    This get's weirder!

    Adding @Model.MacroParameters.Count() results in 2 (which is what I'd expect)

    Adding

                foreach(var para in Model.MacroParameters)
                {
                    <p>@para.Key + @para.Value</p>
                }
    

    Results in nodeID + 10 mobileClass + bg-navy

    Which is what I'd expect

    But

    var mobileClass =Umbraco.Content(Model.MacroParameters["mobileClass"]);
    

    Returns null.

    Thanks, C

  • Dave Woestenborghs 3504 posts 12135 karma points MVP 9x admin c-trib
    Oct 30, 2018 @ 12:05
    Dave Woestenborghs
    0

    What does Model.MacroParameters["mobileClass"] return ?

    Dave

  • Craig O'Mahony 364 posts 918 karma points
    Oct 30, 2018 @ 12:06
    Craig O'Mahony
    0

    Nothing it's empty......

  • Michaël Vanbrabandt 863 posts 3348 karma points c-trib
    Oct 30, 2018 @ 12:11
    Michaël Vanbrabandt
    0

    Craig,

    what if you change the key of mobileClass to something else like "responsive" ( also in your Umbraco backoffice in the macro parameters ).

    Does that help?

    /Michaël

  • Craig O'Mahony 364 posts 918 karma points
    Oct 30, 2018 @ 12:12
    Craig O'Mahony
    0

    Tried that it doesn't make any difference. Really odd

  • Michaël Vanbrabandt 863 posts 3348 karma points c-trib
    Oct 30, 2018 @ 12:14
    Michaël Vanbrabandt
    0

    What if you only use the second parameter so if your remove the nodeID, do you then get the value for mobileClass?

    /Michaël

  • Craig O'Mahony 364 posts 918 karma points
    Oct 30, 2018 @ 12:15
    Craig O'Mahony
    0

    How'd you mean from the Macro parameters or in code?

  • Michaël Vanbrabandt 863 posts 3348 karma points c-trib
    Oct 30, 2018 @ 12:17
    Michaël Vanbrabandt
    0

    both, so only have the mobileClass parameter to see if that works

    /Michaël

  • Craig O'Mahony 364 posts 918 karma points
    Oct 30, 2018 @ 12:20
    Craig O'Mahony
    0

    Nah, doesn't make any difference....

    I might have to hack this to load the value

  • Dave Woestenborghs 3504 posts 12135 karma points MVP 9x admin c-trib
    Oct 30, 2018 @ 12:21
    Dave Woestenborghs
    0

    What version of Umbraco are you using ?

    And can you reproduce it on a empty install ?

    Dave

  • Craig O'Mahony 364 posts 918 karma points
    Oct 30, 2018 @ 12:22
    Craig O'Mahony
    0

    7.6.4 I'll have to give that a go later

  • This forum is in read-only mode while we transition to the new forum.

    You can continue this topic on the new forum by tapping the "Continue discussion" link below.

Please Sign in or register to post replies