diff --git a/flextype/core/Entries.php b/flextype/core/Entries.php index 5f82fd62..073dbeb5 100755 --- a/flextype/core/Entries.php +++ b/flextype/core/Entries.php @@ -292,7 +292,7 @@ class Entries $criteria = new Criteria(); // Exec: where - if (isset($bind_and_where['where']['key']) && isset($bind_and_where['where']['expr']) && isset($bind_and_where['where']['value'])) { + if (isset($bind_where['where']['key']) && isset($bind_where['where']['expr']) && isset($bind_where['where']['value'])) { $expr = new Comparison($bind_where['where']['key'], $bind_where['where']['expr'], $bind_where['where']['value']); $criteria->where($expr); } diff --git a/site/themes/default/templates/blog.html b/site/themes/default/templates/blog.html index 76d2ad47..dca6128e 100644 --- a/site/themes/default/templates/blog.html +++ b/site/themes/default/templates/blog.html @@ -8,14 +8,19 @@ {# pagination #} {% set page = query.page %} {% set entries_limit = entries.fetch('blog').entries_limit %} - {% set entries_length = entries.fetchAll('blog', {'order_by': {'field': 'published_at', 'direction': 'desc'}})|length %} + {% if query.tag %} + {% set entries = entries.fetchAll('blog', {'where': {'key': 'tag', 'expr': 'contains', 'value': query.tag}, 'order_by': {'field': 'published_at', 'direction': 'desc'}, 'set_max_result': entries_limit, 'set_first_result': entries_offset}) %} + {% else %} + {% set entries = entries.fetchAll('blog', {'order_by': {'field': 'published_at', 'direction': 'desc'}, 'set_max_result': entries_limit, 'set_first_result': entries_offset}) %} + {% endif %} + {% set entries_length = entries|length %} {% set entries_pages = (entries_length/entries_limit)|round %} {% if page < 1 %}{% set page = 1 %}{% elseif page > entries_pages %}{% set page = entries_pages %}{% endif %} {% set entries_offset = (page-1)*entries_limit %} {% if entries_offset < 0 %}{% set entries_offset = 0 %}{% endif %} {# /pagination #} - {% for entry in entries.fetchAll('blog', {'order_by': {'field': 'published_at', 'direction': 'desc'}, 'set_max_result': entries_limit, 'set_first_result': entries_offset}) %} + {% for entry in entries %}

{{ entry.title }}

{{ entry.summary|shortcode|raw}}