تگ Include


تگ {% include %} برای بارگذاری و نمایش یک تمپلیت دیگر در داخل تمپلیت جاری استفاده می‌شود. به بیان ساده، این تگ مثل یک «کپی‌پیست هوشمند» عمل می‌کند و باعث می‌شود قطعات تکراری کد (مثل footer ،navbar یا sidebar) را فقط یک بار تعریف کنیم و در چندین صفحه‌ی مختلف استفاده کنیم.

{% include 'template.html' %}

برای نمونه ساختار ساده‌ای برای تمپلیت‌های navbar و footer در ردیف تمپلیت‌های پایه ایجاد می‌کنیم.

tutoriaL/templates/navbar.html

<nav>
  <h1>ARAZ. S. X. LOGO</h1>
  <hr>
</nav>

tutoriaL/templates/footer.html

<footer>
  <hr>
  <small>Copyright © 2025</small>
</footer>

حال می‌توان، تمپلیت‌ها را به ساختار تمپلیت پایه base با بهره‌گیری از تگ include اضافه نمود

tutorial/templates/base.html

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title> {% block title %} Araz.S.X {% endblock title %} </title>
    {% block style %}{% endblock style %}
  </head>
  <body>
    
    {% include "navbar.html" %}     <!-- NAVBAR TEMPLATE -->
    {% block content %}{% endblock content %}
    {% include "footer.html" %}     <!-- FOOTER TEMPLATE -->

    {% block script %}{% endblock script %}
  </body>
</html>

صفحه Home به شکل زیر نمایش داده خواهد شد

 

━◦○◦ نکته‌های مهم ◦○◦━

  • ‼ می‌توان متغیرها را هم به تمپلیت include شده ارسال کرد.
{% include "sidebar.html" with section=posts %}

در این حالت متغیر section با محتوای داده‌های posts در فایل sidebar.html در دسترس خواهد بود.

  • ‼ گر فایل تمپلیت وجود نداشته باشد، می‌توان با عبارت ignore missing از بروز خطا جلوگیری کرد. 
{% include "optional.html" ignore missing %}
 
  • ‼ بهترین استفاده از include برای بخش‌های تکراری و کوچک است (مثل هدر، فوتر، فرم ورود و ...). برای ساختارهای بزرگ‌تر، بهتر است از extends استفاده شود. 
  • تگ include می‌­بایست دقیقاً در جایی قرار داده شود که قرار است محتوا نمایش داده شود