我已经搜索过,但似乎找不到解决问题的方法。
我试图从数组中仅拉出2个元素:
$menu.contents.text
和$menu.contents.url
如果您还没猜到,数组var就是菜单。我运行代码时This is what I get。
这是我目前使用的代码:
<form name='jump'>
<select name='menu' onChange='location=document.jump.menu.options[document.jump.menu.selectedIndex].value;' size='1' value='GO'>
{foreach from=$menu item=result}
{if $result.contents}
{foreach from=$result.contents item=mc}
<option value="{$mc.url}">{$mc.text}</option>
{/foreach}
{/if}
{/foreach}
</select>
</form>
这是我试图从中获取的数组:
array(24)
{
["id"]=> string(2) "91"
["title"]=> string(11) "Quick Links"
["name"]=> string(11) "yellowpages"
["contents"]=> array(1)
{
[0]=> array(5)
{
[97]=> array(13)
{
["id"]=> string(2) "97"
["menu_id"]=> string(2) "91"
["parent_id"]=> string(1) "0"
["el_id"]=> string(7) "81_6b3a"
["page_name"]=> string(10) "new_ypages"
["level"]=> string(1) "0"
["nofollow"]=> string(1) "0"
["new_window"]=> string(1) "0"
["action"]=> string(4) "read"
["custom_url"]=> string(0) ""
["active"]=> bool(false)
["text"]=> string(13) "New Companies"
["url"]=> string(51) "dealers/new_companies/"
}
[98]=> array(13)
{
["id"]=> string(2) "98"
["menu_id"]=> string(2) "91"
["parent_id"]=> string(1) "0"
["el_id"]=> string(7) "82_cae6"
["page_name"]=> string(10) "top_ypages"
["level"]=> string(1) "0"
["nofollow"]=> string(1) "0"
["new_window"]=> string(1) "0"
["action"]=> string(4) "read"
["custom_url"]=> string(0) ""
["active"]=> bool(false)
["text"]=> string(13) "Top Companies"
["url"]=> string(51) "dealers/top_companies/"
}
}
}
["order"]=> string(1) "1"
["position"]=> string(4) "left"
["type"]=> string(4) "menu"
["extras"]=> string(11) "yellowpages"
["status"]=> string(6) "active"
["header"]=> string(1) "0"
["collapsible"]=> string(1) "1"
["collapsed"]=> string(1) "0"
["sticky"]=> string(1) "0"
["rss"]=> string(0) ""
["multilingual"]=> string(1) "0"
["lang"]=> string(2) "en"
["tpl"]=> string(15) "render-menu.tpl"
["external"]=> string(1) "0"
["filename"]=> NULL
["removable"]=> string(1) "0"
["subpages"]=> string(0) ""
["classname"]=> string(0) ""
["display"]=> bool(true)
["hidden"]=> int(0) 0
}
有人看到我做错了吗?
答案 0 :(得分:1)
我认为第一个foreach不在正确的地方。试试这个:
{if !empty($menu.contents)}
{foreach from=$menu.contents item=contentsItem} {* Loop through the contents array *}
{foreach from=$contentsItem item=mc}
<option value="{$mc.url}">{$mc.text}</option>
{/foreach}
{/foreach}
{/if}