добавлен футер со счетчиками
This commit is contained in:
@@ -34,7 +34,7 @@
|
||||
</head>
|
||||
<body>{% block BODY %}
|
||||
{% block Top_CSS1 %}{% endblock %}{% block Top_CSS2 %}{% endblock %}{% block Top_CSS3 %}{% endblock %}{% include "blocks/header_nav.jinja2" %}{% block CONTENT %}{% endblock %}
|
||||
{# {% include "blocks/footer.jinja2" %}#}{% if COOKIES %}
|
||||
{% include "blocks/footer.jinja2" %}{% if COOKIES %}
|
||||
{% include "blocks/accept-cookies.jinja2" %}{% endif %}
|
||||
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.9.2/dist/umd/popper.min.js" integrity="sha384-IQsoLXl5PILFhosVNubq5LC7Qb9DXgDA9i+tQ8Zj3iwWAwPtgFTxbJ8NT4GN1R8p" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.min.js" integrity="sha384-cVKIPhGWiC2Al4u+LWgxfKTRIcfu0JTxR+EQDz/bgldoEyl4H0zUF0QKbrJ0EcQF" crossorigin="anonymous"></script>
|
||||
|
||||
35
cadpoint/templates/blocks/footer.jinja2
Normal file
35
cadpoint/templates/blocks/footer.jinja2
Normal file
@@ -0,0 +1,35 @@
|
||||
{# <!-- ХЛЕБНЫЕ КРОШКИ: НАЧАЛО -->#}
|
||||
<footer class="container">
|
||||
<nav class="row">
|
||||
<div class="col-12 x d-flex align-items-center">
|
||||
© 2009 — {% now 'Y' %}, Sergei Erjemin
|
||||
<div class="b88x31 ms-auto"><!-- Global site tag (gtag.js) - Google Analytics -->
|
||||
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-9116991-1"></script>
|
||||
<script>
|
||||
window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments);}gtag('js',new Date());gtag('config','UA-9116991-1');
|
||||
</script>
|
||||
Google Analytics
|
||||
</div>
|
||||
<div class="b88x31"><!-- Yandex.Metrika informer -->
|
||||
<a href="https://metrika.yandex.ru/stat/?id=198477&from=informer" target="_blank" rel="nofollow"><img src="https://informer.yandex.ru/informer/198477/3_0_ECECECFF_CCCCCCFF_0_pageviews" style="width:88px;height:31px;border:0;" alt="Яндекс.Метрика" title="Яндекс.Метрика: данные за сегодня (просмотры, визиты и уникальные посетители)"/></a><!-- /Yandex.Metrika informer -->
|
||||
<!-- Yandex.Metrika counter -->
|
||||
<script type="text/javascript">
|
||||
(function (m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})(window,document,"script","https://mc.yandex.ru/metrika/tag.js","ym");ym(198477,"init",{clickmap:true,trackLinks:true,accurateTrackBounce:true});
|
||||
</script><noscript>
|
||||
<div><img src="https://mc.yandex.ru/watch/198477" style="position:absolute; left:-9999px;" alt=""/></div>
|
||||
</noscript><!-- /Yandex.Metrika counter -->
|
||||
</div>
|
||||
<div class="b88x31"><!-- Rating Mail.ru counter -->
|
||||
<script type="text/javascript">var _tmr=window._tmr || (window._tmr = []);_tmr.push({id:"1612438",type:"pageView",start:(new Date()).getTime()}); (function(d,w,id) {if (d.getElementById(id)) return; var ts=d.createElement("script");ts.type="text/javascript";ts.async=true;ts.id = id;ts.src="https://top-fwz1.mail.ru/js/code.js";var f=function() {var s=d.getElementsByTagName("script")[0];s.parentNode.insertBefore(ts s);};
|
||||
if(w.opera=="[object Opera]"){d.addEventListener("DOMContentLoaded",f,false); }else{f();}})(document,window,"topmailru-code");
|
||||
</script><noscript>
|
||||
<img src="https://top-fwz1.mail.ru/counter?id=1612438;js=na" style="border:0;;position:absolute;left:-9999px;" alt="Top.Mail.Ru" />
|
||||
</noscript><!-- //Rating Mail.ru counter -->
|
||||
<!-- Rating Mail.ru logo --><a href="https://top.mail.ru/jump?from=1612438;t=464;l=1"><img src="https://top-fwz1.mail.ru/counter?id=1612438;t=466;l=1" alt="Top.Mail.Ru" /></a><!-- //Rating Mail.ru logo -->
|
||||
</div>
|
||||
<div class="b88x31"><!-- begin of Top100 logo -->
|
||||
<a href="http://top100.rambler.ru/home?id=1739474"><img src="https://scounter.rambler.ru/img/top100/b5.gif" alt="Rambler's Top100" /></a><!-- end of Top100 logo -->
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
</footer>{#<!-- ХЛЕБНЫЕ КРОШКИ: КОНЕЦ -->#}
|
||||
@@ -56,7 +56,7 @@
|
||||
<div class="col-12 col-md-9">
|
||||
{% for i in LENTA %}<div class="row default-list">
|
||||
<div class="col-md-4 d-none d-md-block{% if forloop.counter|divisibleby:2 %} order-last{% endif %}">
|
||||
<a href="/news/1-latest-news/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">{% if i.imgContentPreview is None %}
|
||||
<a href="/item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">{% if i.imgContentPreview is None %}
|
||||
<img src="{% static 'img/og-cadpoint-default.png' %}"
|
||||
alt="{{ i.szContentHead|safe_html_ss }}"
|
||||
title="{{ i.szContentHead|safe_html_ss }}" />{% else %}
|
||||
@@ -68,10 +68,10 @@
|
||||
</div>
|
||||
<div class="col-12 col-md-8">
|
||||
<time datetime="{{ i.tdContentPublishUp|date:'Y-m-d' }}">{{ i.tdContentPublishUp|date:'d E Y' }} <small>({{ i.tdContentPublishUp|date:'l'|lower }})</small></time>
|
||||
<h3><a href="/news/1-latest-news/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:"50" }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">{{ i.szContentHead|safe }}</a></h3>
|
||||
<h3><a href="/item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:"50" }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">{{ i.szContentHead|safe }}</a></h3>
|
||||
<nav class="sm-tags">{% for t in i.tags.all%}<a href="/tag_{{ t.slug|lower }}"><i class="bi bi-tag"></i> {{ t.name }}</a>   {% endfor %}</nav>
|
||||
{{ i.szContentIntro|safe }}
|
||||
<p class="next"><a href="item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">Читать дальше →</a></p>
|
||||
<p class="next"><a href="/item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">Читать дальше →</a></p>
|
||||
</div>
|
||||
</div>{% endfor %}
|
||||
|
||||
|
||||
91
cadpoint/templates/item.jinja2
Normal file
91
cadpoint/templates/item.jinja2
Normal file
@@ -0,0 +1,91 @@
|
||||
{% extends "base.jinja2" %}{% load static %}{% load thumbnail %}{% load slug_ru %}
|
||||
|
||||
{% block META_OG %}{% comment %} РАЗМЕТКА Open Graph ДЛЯ СОЦ-СЕТЕЙ
|
||||
подробности: https://habr.com/ru/company/macloud/blog/555082/{% endcomment %}
|
||||
<meta property="og:title" content="Главная страница - RSVO.RU">{% comment %} Уникальное название страницы.
|
||||
Используется парсерами URL-адресов в социальных сетях, таких как Twitter или Facebook{% endcomment %}
|
||||
<meta property="og:description" content="RSVO.RU: Строительство и эксплуатация разноуровневых систем оповещения" />{% comment %} Уникальное описание страницы.
|
||||
Используется парсерами URL-адресов в социальных сетях, таких как Twitter или Facebook.{% endcomment %}
|
||||
<meta property="og:image" content="{% static 'img/og-cadpoint-default.png' %}" />{% comment %} Изображение, отображаемое, когда вы
|
||||
делитесь ссылкой на страницу в социальных сетях, приложениях чата или других сайтах,
|
||||
которые очищают URL-адреса.
|
||||
В идеале это должно быть квадратное изображение с важным содержанием, размещенным
|
||||
в центре квадрата в прямоугольнике с соотношением сторон 2:1. Это гарантирует,
|
||||
что изображение будет хорошо смотреться на карточках с изображениями прямоугольной
|
||||
и квадратной формы.{% endcomment %}
|
||||
<meta property="og:image:alt" content="cadpint.ru: новости 3D-печати и Систем Автоматичекого Проектирования" />{% comment %}
|
||||
Описание изображения.
|
||||
Не используйте этот метатег, если изображение носит чисто декоративный характер
|
||||
и не содержит значимой информации. Программы чтения с экрана игнорируют
|
||||
изображение, если мы предоставлен замещающий текст.{% endcomment %}
|
||||
<meta property="og:locale" content="ru_RU" />{% comment %} Естественный язык страницы.{% endcomment %}
|
||||
<meta property="og:type" content="website" />{% comment %} Тип контента, которым вы делитесь,
|
||||
например website, article, или video.movie{% endcomment %}
|
||||
<meta property="og:url" content="https://cadpoiny.ru" />{% comment %} Канонический URL страницы.
|
||||
Обязательное свойство для допустимых страниц Open Graph.{% endcomment %}
|
||||
<meta name="twitter:card" content="summary_large_image" />{% comment %} определяет, как будут выглядеть
|
||||
карточки при публикации в Twitter. Есть два варианта для веб-сайтов: summary
|
||||
и summary_large_image{% endcomment %}{% endblock %}
|
||||
|
||||
<!--- ТИТУЛ --->
|
||||
{% block Title %}Главная страница{% endblock %}
|
||||
{% block canonical %}https://rsvo.ru/{{ ITEM.iPointType }}/{{ ITEM.szPointSlug }}{% if LIST and PAGE_OF_LIST != 0 %}/p{{ PAGE_OF_LIST }}{% endif %}{% endblock %}
|
||||
{% block Description %}ФГУП Российские сети вещания и оповещения: Строительство и эксплуатация разноуровневых систем оповещения{% endblock %}
|
||||
{% block Keywords %}ФГУП РСВО, российские сети вещания и оповещения, системы оповещения{% endblock %}
|
||||
{% block Date4Meta %}{{ NEWS.0.tdContentPublishUp|date:'Y-m-d 08:30:00' }}{% endblock %}"
|
||||
{% block Last4Meta %}{{ NEWS.0.dtContentTimeStamp|date:'Y-m-d H:i:s' }}{% endblock %}"
|
||||
{% block Expires4Meta %}{% now 'Y-m-d H:i:s' %}{% endblock %}"
|
||||
|
||||
|
||||
{% block CONTENT %}{# <!-- ХЛЕБНЫЕ КРОШКИ: НАЧАЛО -->#}
|
||||
<div class="container bread-crumb">
|
||||
<div class="row">
|
||||
<nav class="col-12 х" aria-label="breadcrumb">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item nw s"><a href="/"><i class="bi bi-house-door" title="Главная"></i> Главная</a></li>
|
||||
<li class="breadcrumb-item nw s"><a href="/p{{ PAGE }}">Стр. {{ PAGE|add:"1" }}</a></li>
|
||||
<li class="breadcrumb-item active s" aria-current="page">{{ ITEM.szContentHead|safe }}</li>
|
||||
</ol>
|
||||
</nav>
|
||||
</div>
|
||||
</div>{#<!-- ХЛЕБНЫЕ КРОШКИ: КОНЕЦ -->#}
|
||||
{#<!-- POINT-СРАНИЦА: НАЧАЛО -->#}<div class="container news">
|
||||
<div class="row">
|
||||
<div class="col-12 col-md-9">
|
||||
<time datetime="{{ ITEM.tdContentPublishUp|date:'Y-m-d' }}">{{ ITEM.tdContentPublishUp|date:'d E Y' }} <small>({{ ITEM.tdContentPublishUp|date:'l'|lower }})</small></time>
|
||||
<h1>{{ ITEM.szContentHead|safe }}</h1>
|
||||
{{ ITEM.szContentIntro|safe }}
|
||||
{{ ITEM.szContentBody|safe }}
|
||||
{{ ITEM.szPointDes|safe }}{# Текст страницы или приамбула перед списком #}
|
||||
<hr />
|
||||
<nav class="sm-tags">{% for t in ITEM.tags.all%}<a href="/tag_{{ t.slug|lower }}"><i class="bi bi-tag"></i> {{ t.name }}</a>   {% endfor %}</nav>
|
||||
</div>
|
||||
{#<!-- БОКОВАЯ НАВИГАЦИЯ: НАЧАЛО-->#}<nav class="col order-last order-md-first">
|
||||
<div></div>{% for i in ITEMS_BEFORE reversed %}{% if i.id != ITEM.id %}<div>
|
||||
<time datetime="{{ i.tdContentPublishUp|date:'Y-m-d' }}">{{ i.tdContentPublishUp|date:'d E Y' }}</time>
|
||||
<p><i class="bi bi-newspaper"></i> <a href="/item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}{% if PER_PAGE %}?p={{ i.pp }}&n={{ i.nn }}{% endif %}">{{ i.szContentHead|safe }}</a></p>
|
||||
</div>{% endif %}{% endfor %}{% for i in ITEMS_AFTER %}{% if i.id != ITEM.id %}<div>
|
||||
<time datetime="{{ i.tdContentPublishUp|date:'Y-m-d' }}">{{ i.tdContentPublishUp|date:'d E Y' }}</time>
|
||||
<p><i class="bi bi-newspaper"></i> <a href="/item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}{% if PER_PAGE %}?p={{ i.pp }}&n={{ i.nn }}{% endif %}">{{ i.szContentHead|safe }}</a></p>
|
||||
</div>{% else %}<div class="active">
|
||||
<time datetime="{{ ITEM.tdContentPublishUp|date:'Y-m-d' }}">{{ ITEM.tdContentPublishUp|date:'d E Y' }}</time>
|
||||
<p><i class="bi bi-newspaper"></i> {{ ITEM.szContentHead|safe }}</p>
|
||||
</div>{% endif %}{% endfor %}
|
||||
</nav>{#<!-- боковая навигация: конец-->#}
|
||||
</div>
|
||||
{# <!-- НИЖНЯЯ НАВИГАЦИЯ-ПАДЖИНАТОР ПО НОВОСТЯМ: НАЧАЛО--> #}{% if PER_PAGE %}
|
||||
<nav class="row" aria-label="Навигация по контенту">
|
||||
<ul class="col offset-md-3 pagination pl-3">{% if ITEMS_BEFORE.0.id %}
|
||||
<li class="page-item"><a class="page-link" href="/item/{{ ITEMS_BEFORE.0.id }}-{{ ITEMS_BEFORE.0.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ ITEMS_BEFORE.0.pp }}&n={{ ITEMS_BEFORE.0.nn }}"><i class="bi bi-arrow-left pr-4" title="Предыдущая"></i></a></li>{% else %}<li class="page-item disabled"><a class="page-link" href="#"><i class="bi bi-arrow-left pr-4" title="Предыдущая"></i></a></li>{% endif %}
|
||||
</ul>
|
||||
<ul class="col pagination justify-content-end">{% if ITEMS_AFTER|length <= 1 %}
|
||||
<li class="page-item disabled"><a class="page-link" href="#"><i class="bi bi-arrow-right pl-4" title="Следующая"></i></a></li>{% else %}<li class="page-item"><a class="page-link" href="/item/{{ ITEMS_AFTER.1.id }}-{{ ITEMS_AFTER.1.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ ITEMS_AFTER.1.pp }}&n={{ ITEMS_AFTER.1.nn }}"><i class="bi bi-arrow-right pl-4" title="Следующая"></i></a></li>{% endif %}
|
||||
</ul>
|
||||
</nav>{# <!-- НИЖНЯЯ НАВИГАЦИЯ-ПАДЖИНАТОР ПО НОВОСТЯМ: КОНЕЦ--> #}{% endif %}
|
||||
</div>{#<!-- POINT-СРАНИЦА: КОНЕЦ -->#}
|
||||
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block Top_JS1 %}<script type="text/javascript">
|
||||
</script>{% endblock %}
|
||||
@@ -333,4 +333,31 @@ div.news > nav.row { margin: 0; }
|
||||
|
||||
.test {
|
||||
position: absolute;top:200px;
|
||||
}
|
||||
|
||||
/****************************
|
||||
** ФУТЕР *********
|
||||
****************************/
|
||||
footer {
|
||||
margin-top: 4em;
|
||||
padding: 1em 0;
|
||||
border-top: whitesmoke dotted 1px;
|
||||
background: linear-gradient(to bottom right, rgba(147,147,147,0.2) 15%, rgba(255,255,255,1) 50%);}
|
||||
.b88x31 {
|
||||
margin-left: 1ex;
|
||||
background-color: #cccccc;
|
||||
width: 88px;
|
||||
height: 31px;
|
||||
border: none;
|
||||
text-align: center;
|
||||
vertical-align: center;
|
||||
}
|
||||
.b88x31 > a {
|
||||
text-decoration: none;
|
||||
border: none;
|
||||
}
|
||||
.b88x31 > a > img {
|
||||
width: 88px;
|
||||
height: 31px;
|
||||
border: none;
|
||||
}
|
||||
Reference in New Issue
Block a user