2017-08-17 58 views
1

我正在与Middleman合作,并且我已经能够向菜单导航添加活动类,具体取决于您是否在页面上。所以这工作正常,但不是我有一个新闻链接在导航,这将您带到新闻概览页面(这将变成活动),但我有一个阅读更多,将您带到一个单一的新闻。当它这样做时,新闻链接不再活动,因为它认为它不在此页面上了。Middleman单个新闻文章添加活动类导航

我的文件夹结构

aktuelles 
    - index.html.erb (overview of all news articles) 
    - kuendigungsschutz-fuer-geschaeftsfuehrer (single news article) 
    - index.html.erb 

所以,我已经提供了一些图片。首先显示概览页面,并且由于我们在该页面上,所以aktuelles突出显示。但是当您点击新闻文章阅读更多内容时,您可以在下一张图片上看到,aktuelles不再突出显示,我希望它不确定如何执行此操作。 config.rb中的助手,但不知道是什么。

这是我在头

<li> 
    <a class="<%= is_page_selected("/aktuelles/") %>" 
     href="/aktuelles">Aktuelles</a> 
</li> 

这对导航是我当你的新闻文章点击阅读整个事情在href。

我猜这个href中的某些东西需要更改才能使aktuelles在您点击此链接时保持活动状态?

<a class="teaser container" href="kuendigungsschutz-bei-kleinbetrieben-im-falle-einer-regelmasigen-beschaeftigung-von-leiharbeitnehmern"> 
    <sup>10.11.2015</sup> 
    <h5 class="teaser__title mart-1">Kündigungsschutz bei Kleinbetrieben im 
     Falle einer regelmäßigen Beschäftigung von Leiharbeitnehmern 
    </h5> 
    <p>Arbeitnehmer haben nur dann Kündigungsschutz, wenn deren 
     Arbeitsverhältnis länger als 6 Monate besteht und der Arbeitgeber in der 
     Regel mehr als 10 vollzeitbeschäftigte Arbeitnehmer beschäftigt. 
    </p> 
    <p class="teaser__link">weiterlesen</p> 
</a> 

news article overview

single news article

任何帮助,将不胜感激

回答

0

给这个一杆,这是最简明的方式与中间人来实现这一点,我发现:

in config.rb:

helpers do 
    def active_navigation(page) 
    current_page.url.include?(page) ? "active" : '' 
    end 
end 

,并在您的模板,只是定义路径要检查:

<ul> 
    <li class="<%= active_navigation("/aktuelles") %>"> 
    <%= link_to_page 'Aktuelles', '/aktuelles' %> 
    </li> 
</ul> 

现在,在URL路径中包含“/ aktuelles”任何页面上,李将有一个“活动“课程适用。

因此,/ aktuelles,/ aktuelles/abc,/ aktuelles/123等都将导致应用活动类。

+1

谢谢你像一个魅力工作 – rcho