【问题标题】:How to get a year list of entries in ExpressionEngine?如何在 ExpressionEngine 中获取条目的年度列表?
【发布时间】:2012-10-24 01:10:46
【问题描述】:

我需要获取所有条目的年份列表以在下拉列表中使用。 基本上我需要按年份分组输入日期并在列表中输出分组年份。

类似这样的:https://dzwonsemrish7.cloudfront.net/items/2G161x0v1U0d2U0k133a/2012-10-23_19-50-41.jpeg?v=9c5b44e8

【问题讨论】:

    标签: expressionengine


    【解决方案1】:

    EE1 或 EE2 的这个插件可以满足您的需求:http://devot-ee.com/add-ons/yearlist

    {exp:yearlist channel="yourchannel"}
             <a href="{path=archive}/{year}">{year}</a>
    {/exp:yearlist}
    

    然后在您的模板中使用 year="" 参数限制条目:

    {exp:channel:entries channel="news" year="{segment_2}"}
        <h1>{title}</h1>
        {body}
    {/exp:channel:entries}
    

    【讨论】:

      【解决方案2】:

      使用这个插件http://devot-ee.com/add-ons/yearlist 你可以这样做:

      像这样设置你的下拉菜单:

      <form name="yourform" action="">
          <select id="yourselect" name="yourselect">
              {exp:yearlist channel="yourchannel"}
                  <option value="{path=archive}/{year}">{year}</option>
              {/exp:yearlist}
          </select>
      </form>
      

      在您的目标网页上,您可以执行以下操作以根据年份显示您的条目:

      {exp:channel:entries channel="news" year="{segment_2}"}
          <h1>{title}</h1>
          {body}
      {/exp:channel:entries}
      

      并使用一些 jQuery 重定向到您的年份页面:

      <script type="text/javascript">
          $('#yourselect').change(function() {
              window.location = $(this).val();
          });
      </script>
      

      如果你想通过 javascript 而不是 jQuery checkout this article

      【讨论】:

      • 谢谢!插件按说明工作,现在我只需要找到一种方法来更改 {year} var,因为 Dynamo 对其结果使用相同
      • 发布另一个问题,我们也会帮助进行更改。
      • 我终于完成了表格并测试了它,嘿嘿。我会毫不犹豫地再次发布一些东西。谢谢MG :)
      猜你喜欢
      • 2020-08-04
      • 2019-10-20
      • 1970-01-01
      • 2013-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-07
      相关资源
      最近更新 更多