我在refinerycms中創建了一個引擎,將數據提取到主頁上。 Refinerycms自動爲該引擎創建一個頁面和一個菜單項。如何從精煉廠菜單中刪除特定的引擎頁面和引擎菜單項?
我該如何刪除引擎頁面以及從菜單欄中刪除它?
menu.html.erb
<%
# Collect the root items.
# ::Refinery::Menu is smart enough to remember all of the items in the original collection.
if (roots = local_assigns[:roots] || (collection ||= refinery_menu_pages).roots).present?
dom_id ||= 'menu'
css = [(css || 'menu clearfix')].flatten.join(' ')
hide_children = Refinery::Core.menu_hide_children if hide_children.nil?
-%>
<div id="nav">
<ul>
<%= render :partial => '/refinery/menu_branch', :collection => roots,
:locals => {
:hide_children => hide_children,
:sibling_count => (roots.length - 1),
:menu_levels => local_assigns[:menu_levels],
:apply_css => true #if you don't care about class='first' class='last' or class='selected' set apply_css to false for speed.
} -%>
</ul>
</div>
<% end -%>
menu_branch.html.erb
<%
if !!local_assigns[:apply_css] and (classes = menu_branch_css(local_assigns)).any?
css = "class='#{classes.join(' ')}'".html_safe
end
-%>
<li<%= ['', css].compact.join(' ').gsub(/\ *$/, '').html_safe %>>
<%= link_to(menu_branch.title, refinery.url_for(menu_branch.url)) -%>
<% if ((children = menu_branch.children unless hide_children).present? &&
(!local_assigns[:menu_levels] || menu_branch.ancestors.length < local_assigns[:menu_levels])) -%>
<ul class='clearfix'>
<%= render :partial => '/refinery/menu_branch', :collection => children,
:locals => {
:apply_css => local_assigns[:apply_css],
:hide_children => !!hide_children,
:menu_levels => local_assigns[:menu_levels]
} -%>
</ul>
<% end -%>
</li>
,我想從菜單欄中刪除尤其菜單項是 「新方案」
這是我正在尋找的確切答案。只需要將「博客」設置爲默認頁面並隱藏「主頁」選項即可。 – JGallardo 2013-09-04 23:54:17
這會阻止它出現在菜單上,但它不會幫助您刪除頁面 - 例如如果你以某種方式意外地將數據庫「播種」兩次,並且現在有「博客」頁面重複出現! – CJBrew 2013-12-15 16:49:34