36 lines
1.4 KiB
HTML
36 lines
1.4 KiB
HTML
{% extends 'base.html' %}
|
|
{% load core_tags seo_tags %}
|
|
{% block title %}Articles | No Hype AI{% endblock %}
|
|
{% block head_meta %}
|
|
{% canonical_url page as canonical %}
|
|
<link rel="canonical" href="{{ canonical }}" />
|
|
<meta name="description" content="Latest No Hype AI articles and benchmark-driven reviews." />
|
|
<meta property="og:type" content="website" />
|
|
<meta property="og:title" content="Articles | No Hype AI" />
|
|
<meta property="og:url" content="{{ canonical }}" />
|
|
{% endblock %}
|
|
{% block content %}
|
|
<h1>{{ page.title }}</h1>
|
|
<section>
|
|
<h2>Filter by tag</h2>
|
|
<a href="/articles/" {% if not active_tag %}aria-current="page"{% endif %}>All</a>
|
|
{% for tag in available_tags %}
|
|
<a href="/articles/?tag={{ tag.slug }}" {% if active_tag == tag.slug %}aria-current="page"{% endif %}>{{ tag.name }}</a>
|
|
{% endfor %}
|
|
</section>
|
|
{% for article in articles %}
|
|
{% include 'components/article_card.html' with article=article %}
|
|
{% empty %}
|
|
<p>No articles found.</p>
|
|
{% endfor %}
|
|
<nav aria-label="Pagination">
|
|
{% if articles.has_previous %}
|
|
<a href="?page={{ articles.previous_page_number }}{% if active_tag %}&tag={{ active_tag }}{% endif %}">Previous</a>
|
|
{% endif %}
|
|
<span>Page {{ articles.number }} of {{ paginator.num_pages }}</span>
|
|
{% if articles.has_next %}
|
|
<a href="?page={{ articles.next_page_number }}{% if active_tag %}&tag={{ active_tag }}{% endif %}">Next</a>
|
|
{% endif %}
|
|
</nav>
|
|
{% endblock %}
|