簡體   English   中英

可移動類型:轉換為json文件

[英]Movable Type: Converting to json file

我正在嘗試使用Movable Types模板標簽將一些數據轉換為json格式,到目前為止,我的代碼如下。 這段代碼的結果空白。 我對這個模板代碼不是很了解,因此將不勝感激。

<mt:SetVar name="entries" function="undef">
<mt:Tags>
    <$mt:TagName trim_to="1" upper_case="1" setvar="current_index"$>

    <mt:SetVar name="e" function="undef">
    <mt:SetHashVar name="e">
        <mt:if name="current_index" ne="$last_index"><mt:getvar name="current_index"></mt:if>
        <mt:TagName setvar="name">
        <mt:setvarblock name="url">https://www.foo.com/tags/<$mt:TagName encode_url="1"$></mt:setvarblock>
    </mt:SetHashVar>
    <$mt:var name="current_index" setvar="last_index"$>
    <mt:SetVar name="entries" key="$last_index" value="$e">
</mt:Tags>
<mt:Var name="entries" to_json="1">

這是我所期待的

{
  "A": [
    {
      "name": "Abrand",
      "url": "#"
    },
    {
      "name": "Abrand",
      "url": "#"
    },
    {
      "name": "Abrand",
      "url": "#"
    }
  ],
  "B": [
    {
      "name": "Bbrand",
      "url": "#"
    },
    {
      "name": "Bbrand",
      "url": "#"
    }
  ],
  "C": [
    {
      "name": "Cbrand",
      "url": "#"
    {
      "name": "Cbrand",
      "url": "#"
    },
    {
      "name": "Cbrand",
      "url": "#"
    }
  ]
}

嘗試這個:

<mt:Tags sort_by="name" sort_order="ascend" limit="1">
    <$mt:TagName trim_to="1" upper_case="1" setvar="current_index"$>
    <$mt:SetVar name="last_index" value="$current_index"$>
</mt:Tags>

<mt:Tags sort_by="name" sort_order="ascend">
    <$mt:TagName trim_to="1" upper_case="1" setvar="current_index"$>
    <mt:SetHashVar name="e">
        <mt:TagName setvar="name">
        <mt:SetVarBlock name="url">https://www.foo.com/tags/<$mt:TagName encode_url="1"$></mt:SetVarBlock>
    </mt:SetHashVar>

    <mt:if name="current_index" eq="$last_index">
        <$mt:SetVar name="hold" function="push" value="$e"$>
    <mt:else>
        <$mt:Var name="entries{$last_index}" value="$hold"$>
        <$mt:SetVar name="last_index" value="$current_index"$>
        <$mt:SetVar name="hold" value=""$>
        <$mt:SetVar name="hold" function="push" value="$e"$>
    </mt:if>
</mt:Tags>

<mt:Var name="entries" to_json="1">

(我在MT 6.2.2上進行了測試,但應該在5.x上工作)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM