sexyjekyll-theme 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/CHANGELOG.md +82 -0
- data/LICENSE +21 -0
- data/README.de.md +276 -0
- data/README.es.md +276 -0
- data/README.fr.md +276 -0
- data/README.it.md +219 -0
- data/README.md +276 -0
- data/_includes/critical-css.html +4 -0
- data/_includes/footer.html +81 -0
- data/_includes/head.html +88 -0
- data/_includes/nav.html +21 -0
- data/_includes/related-posts.html +75 -0
- data/_includes/social-icon.html +98 -0
- data/_includes/structured-data-article.html +55 -0
- data/_includes/structured-data-breadcrumb.html +28 -0
- data/_includes/structured-data-person.html +82 -0
- data/_includes/structured-data-website.html +23 -0
- data/_layouts/blog.html +101 -0
- data/_layouts/category.html +66 -0
- data/_layouts/contact.html +26 -0
- data/_layouts/default.html +13 -0
- data/_layouts/home.html +30 -0
- data/_layouts/llms.txt +34 -0
- data/_layouts/post.html +99 -0
- data/_plugins/auto_related_posts.rb +153 -0
- data/_plugins/category_generator.rb +27 -0
- data/_plugins/llms_txt_generator.rb +45 -0
- data/_plugins/localized_date.rb +52 -0
- data/assets/bg.jpeg +0 -0
- data/assets/bg.webp +0 -0
- data/assets/debug/blocco.png +0 -0
- data/assets/debug/categorie.jpeg +0 -0
- data/assets/debug/categorie.png +0 -0
- data/assets/debug/codice.png +0 -0
- data/assets/debug/contrasto.jpeg +0 -0
- data/assets/debug/dipendenze.png +0 -0
- data/assets/debug/h1.png +0 -0
- data/assets/debug/pagespeed.png +0 -0
- data/assets/debug/ricerca.png +0 -0
- data/assets/debug/richieste.png +0 -0
- data/assets/favicon/android-icon-144x144.png +0 -0
- data/assets/favicon/android-icon-192x192.png +0 -0
- data/assets/favicon/android-icon-36x36.png +0 -0
- data/assets/favicon/android-icon-48x48.png +0 -0
- data/assets/favicon/android-icon-72x72.png +0 -0
- data/assets/favicon/android-icon-96x96.png +0 -0
- data/assets/favicon/apple-icon-114x114.png +0 -0
- data/assets/favicon/apple-icon-120x120.png +0 -0
- data/assets/favicon/apple-icon-144x144.png +0 -0
- data/assets/favicon/apple-icon-152x152.png +0 -0
- data/assets/favicon/apple-icon-180x180.png +0 -0
- data/assets/favicon/apple-icon-57x57.png +0 -0
- data/assets/favicon/apple-icon-60x60.png +0 -0
- data/assets/favicon/apple-icon-72x72.png +0 -0
- data/assets/favicon/apple-icon-76x76.png +0 -0
- data/assets/favicon/apple-icon-precomposed.png +0 -0
- data/assets/favicon/apple-icon.png +0 -0
- data/assets/favicon/favicon-16x16.png +0 -0
- data/assets/favicon/favicon-32x32.png +0 -0
- data/assets/favicon/favicon-96x96.png +0 -0
- data/assets/favicon/favicon.ico +0 -0
- data/assets/favicon/ms-icon-144x144.png +0 -0
- data/assets/favicon/ms-icon-150x150.png +0 -0
- data/assets/favicon/ms-icon-310x310.png +0 -0
- data/assets/favicon/ms-icon-70x70.png +0 -0
- data/assets/images/aiact.jpeg +0 -0
- data/assets/images/aiethics.jpeg +0 -0
- data/assets/images/green.jpeg +0 -0
- data/assets/images/jekyll.webp +0 -0
- data/assets/images/parenting.jpeg +0 -0
- data/assets/images/seo-generativo.jpeg +0 -0
- data/assets/images/upskilling-ai.jpeg +0 -0
- data/assets/pic.jpeg +0 -0
- data/assets/screens/screen.jpeg +0 -0
- data/assets/screens/screen2.jpeg +0 -0
- data/css/animations.css +404 -0
- data/css/style.css +2250 -0
- data/css/syntax-dark.css +157 -0
- data/css/syntax-light.css +157 -0
- data/js/main.js +706 -0
- data/js/simple-jekyll-search.min.js +6 -0
- metadata +254 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
{% case include.type %}
|
|
2
|
+
{% when 'email' %}
|
|
3
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
4
|
+
<path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"></path>
|
|
5
|
+
<polyline points="22,6 12,13 2,6"></polyline>
|
|
6
|
+
</svg>
|
|
7
|
+
|
|
8
|
+
{% when 'linkedin' %}
|
|
9
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
10
|
+
<path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"></path>
|
|
11
|
+
<rect x="2" y="9" width="4" height="12"></rect>
|
|
12
|
+
<circle cx="4" cy="4" r="2"></circle>
|
|
13
|
+
</svg>
|
|
14
|
+
|
|
15
|
+
{% when 'bluesky' %}
|
|
16
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
|
|
17
|
+
<path d="M12 10.8c-1.087-2.114-4.046-6.053-6.798-7.995C2.566.944 1.561 1.266.902 1.565.139 1.908 0 3.08 0 3.768c0 .69.378 5.65.624 6.479.815 2.736 3.713 3.66 6.383 3.364.136-.02.275-.038.415-.056-.138.022-.276.04-.415.056-3.912.58-7.387 2.005-2.83 7.078 5.013 5.19 6.87-1.113 7.823-4.308.953 3.195 2.05 9.271 7.733 4.308 4.267-4.308 1.172-6.498-2.74-7.078a8.741 8.741 0 0 1-.415-.056c.14.018.279.036.415.056 2.67.297 5.568-.628 6.383-3.364.246-.828.624-5.79.624-6.478 0-.69-.139-1.861-.902-2.206-.659-.298-1.664-.62-4.3 1.24C16.046 4.748 13.087 8.687 12 10.8Z"/>
|
|
18
|
+
</svg>
|
|
19
|
+
|
|
20
|
+
{% when 'twitter' %}
|
|
21
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
22
|
+
<path d="M23 3a10.9 10.9 0 0 1-3.14 1.53 4.48 4.48 0 0 0-7.86 3v1A10.66 10.66 0 0 1 3 4s-4 9 5 13a11.64 11.64 0 0 1-7 2c9 5 20 0 20-11.5a4.5 4.5 0 0 0-.08-.83A7.72 7.72 0 0 0 23 3z"></path>
|
|
23
|
+
</svg>
|
|
24
|
+
|
|
25
|
+
{% when 'github' %}
|
|
26
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
27
|
+
<path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path>
|
|
28
|
+
</svg>
|
|
29
|
+
|
|
30
|
+
{% when 'instagram' %}
|
|
31
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
32
|
+
<rect x="2" y="2" width="20" height="20" rx="5" ry="5"></rect>
|
|
33
|
+
<path d="M16 11.37A4 4 0 1 1 12.63 8 4 4 0 0 1 16 11.37z"></path>
|
|
34
|
+
<line x1="17.5" y1="6.5" x2="17.51" y2="6.5"></line>
|
|
35
|
+
</svg>
|
|
36
|
+
|
|
37
|
+
{% when 'facebook' %}
|
|
38
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
39
|
+
<path d="M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z"></path>
|
|
40
|
+
</svg>
|
|
41
|
+
|
|
42
|
+
{% when 'youtube' %}
|
|
43
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
44
|
+
<path d="M22.54 6.42a2.78 2.78 0 0 0-1.94-2C18.88 4 12 4 12 4s-6.88 0-8.6.46a2.78 2.78 0 0 0-1.94 2A29 29 0 0 0 1 11.75a29 29 0 0 0 .46 5.33A2.78 2.78 0 0 0 3.4 19c1.72.46 8.6.46 8.6.46s6.88 0 8.6-.46a2.78 2.78 0 0 0 1.94-2 29 29 0 0 0 .46-5.25 29 29 0 0 0-.46-5.33z"></path>
|
|
45
|
+
<polygon points="9.75 15.02 15.5 11.75 9.75 8.48 9.75 15.02"></polygon>
|
|
46
|
+
</svg>
|
|
47
|
+
|
|
48
|
+
{% when 'mastodon' %}
|
|
49
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
|
|
50
|
+
<path d="M23.193 7.879c0-5.206-3.411-6.732-3.411-6.732C18.062.357 15.108.025 12.041 0h-.076c-3.068.025-6.02.357-7.74 1.147 0 0-3.411 1.526-3.411 6.732 0 1.192-.023 2.618.015 4.129.124 5.092.934 10.109 5.641 11.355 2.17.574 4.034.695 5.535.612 2.722-.15 4.25-.972 4.25-.972l-.09-1.975s-1.945.613-4.129.539c-2.165-.074-4.449-.233-4.799-2.891a5.499 5.499 0 0 1-.048-.745s2.125.52 4.817.643c1.646.075 3.19-.097 4.758-.283 3.007-.359 5.625-2.212 5.954-3.905.517-2.665.475-6.507.475-6.507zm-4.024 6.709h-2.497V8.469c0-1.29-.543-1.944-1.628-1.944-1.2 0-1.802.776-1.802 2.312v3.349h-2.483v-3.35c0-1.536-.602-2.312-1.802-2.312-1.085 0-1.628.655-1.628 1.944v6.119H4.832V8.284c0-1.289.328-2.313.987-3.07.68-.758 1.569-1.146 2.674-1.146 1.278 0 2.246.491 2.886 1.474L12 6.585l.622-1.043c.64-.983 1.608-1.474 2.886-1.474 1.104 0 1.994.388 2.674 1.146.658.757.986 1.781.986 3.07v6.304z"/>
|
|
51
|
+
</svg>
|
|
52
|
+
|
|
53
|
+
{% when 'telegram' %}
|
|
54
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
|
|
55
|
+
<path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm4.64 6.8c-.15 1.58-.8 5.42-1.13 7.19-.14.75-.42 1-.68 1.03-.58.05-1.02-.38-1.58-.75-.88-.58-1.38-.94-2.23-1.5-.99-.65-.35-1.01.22-1.59.15-.15 2.71-2.48 2.76-2.69a.2.2 0 0 0-.05-.18c-.06-.05-.14-.03-.21-.02-.09.02-1.49.95-4.22 2.79-.4.27-.76.41-1.08.4-.36-.01-1.04-.2-1.55-.37-.63-.2-1.12-.31-1.08-.66.02-.18.27-.36.74-.55 2.92-1.27 4.86-2.11 5.83-2.51 2.78-1.16 3.35-1.36 3.73-1.36.08 0 .27.02.39.12.1.08.13.19.14.27-.01.06.01.24 0 .38z"/>
|
|
56
|
+
</svg>
|
|
57
|
+
|
|
58
|
+
{% when 'whatsapp' %}
|
|
59
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
|
|
60
|
+
<path d="M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413Z"/>
|
|
61
|
+
</svg>
|
|
62
|
+
|
|
63
|
+
{% when 'medium' %}
|
|
64
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
|
|
65
|
+
<path d="M13.54 12a6.8 6.8 0 01-6.77 6.82A6.8 6.8 0 010 12a6.8 6.8 0 016.77-6.82A6.8 6.8 0 0113.54 12zM20.96 12c0 3.54-1.51 6.42-3.38 6.42-1.87 0-3.39-2.88-3.39-6.42s1.52-6.42 3.39-6.42 3.38 2.88 3.38 6.42M24 12c0 3.17-.53 5.75-1.19 5.75-.66 0-1.19-2.58-1.19-5.75s.53-5.75 1.19-5.75C23.47 6.25 24 8.83 24 12z"/>
|
|
66
|
+
</svg>
|
|
67
|
+
|
|
68
|
+
{% when 'reddit' %}
|
|
69
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
|
|
70
|
+
<path d="M12 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0zm5.01 4.744c.688 0 1.25.561 1.25 1.249a1.25 1.25 0 0 1-2.498.056l-2.597-.547-.8 3.747c1.824.07 3.48.632 4.674 1.488.308-.309.73-.491 1.207-.491.968 0 1.754.786 1.754 1.754 0 .716-.435 1.333-1.01 1.614a3.111 3.111 0 0 1 .042.52c0 2.694-3.13 4.87-7.004 4.87-3.874 0-7.004-2.176-7.004-4.87 0-.183.015-.366.043-.534A1.748 1.748 0 0 1 4.028 12c0-.968.786-1.754 1.754-1.754.463 0 .898.196 1.207.49 1.207-.883 2.878-1.43 4.744-1.487l.885-4.182a.342.342 0 0 1 .14-.197.35.35 0 0 1 .238-.042l2.906.617a1.214 1.214 0 0 1 1.108-.701zM9.25 12C8.561 12 8 12.562 8 13.25c0 .687.561 1.248 1.25 1.248.687 0 1.248-.561 1.248-1.249 0-.688-.561-1.249-1.249-1.249zm5.5 0c-.687 0-1.248.561-1.248 1.25 0 .687.561 1.248 1.249 1.248.688 0 1.249-.561 1.249-1.249 0-.687-.562-1.249-1.25-1.249zm-5.466 3.99a.327.327 0 0 0-.231.094.33.33 0 0 0 0 .463c.842.842 2.484.913 2.961.913.477 0 2.105-.056 2.961-.913a.361.361 0 0 0 .029-.463.33.33 0 0 0-.464 0c-.547.533-1.684.73-2.512.73-.828 0-1.979-.196-2.512-.73a.326.326 0 0 0-.232-.095z"/>
|
|
71
|
+
</svg>
|
|
72
|
+
|
|
73
|
+
{% when 'discord' %}
|
|
74
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
|
|
75
|
+
<path d="M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z"/>
|
|
76
|
+
</svg>
|
|
77
|
+
|
|
78
|
+
{% when 'tiktok' %}
|
|
79
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
|
|
80
|
+
<path d="M12.525.02c1.31-.02 2.61-.01 3.91-.02.08 1.53.63 3.09 1.75 4.17 1.12 1.11 2.7 1.62 4.24 1.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01 2.92.01 5.84-.02 8.75-.08 1.4-.54 2.79-1.35 3.94-1.31 1.92-3.58 3.17-5.91 3.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9 1.12-3.72 2.58-4.96 1.66-1.44 3.98-2.13 6.15-1.72.02 1.48-.04 2.96-.04 4.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11 1.04-1.36 1.75-.21.51-.15 1.07-.14 1.61.24 1.64 1.82 3.02 3.5 2.87 1.12-.01 2.19-.66 2.77-1.61.19-.33.4-.67.41-1.06.1-1.79.06-3.57.07-5.36.01-4.03-.01-8.05.02-12.07z"/>
|
|
81
|
+
</svg>
|
|
82
|
+
|
|
83
|
+
{% when 'twitch' %}
|
|
84
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
|
|
85
|
+
<path d="M11.571 4.714h1.715v5.143H11.57zm4.715 0H18v5.143h-1.714zM6 0L1.714 4.286v15.428h5.143V24l4.286-4.286h3.428L22.286 12V0zm14.571 11.143l-3.428 3.428h-3.429l-3 3v-3H6.857V1.714h13.714Z"/>
|
|
86
|
+
</svg>
|
|
87
|
+
|
|
88
|
+
{% when 'slack' %}
|
|
89
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
|
|
90
|
+
<path d="M5.042 15.165a2.528 2.528 0 0 1-2.52 2.523A2.528 2.528 0 0 1 0 15.165a2.527 2.527 0 0 1 2.522-2.52h2.52v2.52zm1.271 0a2.527 2.527 0 0 1 2.521-2.52 2.527 2.527 0 0 1 2.521 2.52v6.313A2.528 2.528 0 0 1 8.834 24a2.528 2.528 0 0 1-2.521-2.522v-6.313zM8.834 5.042a2.528 2.528 0 0 1-2.521-2.52A2.528 2.528 0 0 1 8.834 0a2.528 2.528 0 0 1 2.521 2.522v2.52H8.834zm0 1.271a2.528 2.528 0 0 1 2.521 2.521 2.528 2.528 0 0 1-2.521 2.521H2.522A2.528 2.528 0 0 1 0 8.834a2.528 2.528 0 0 1 2.522-2.521h6.312zm10.122 2.521a2.528 2.528 0 0 1 2.522-2.521A2.528 2.528 0 0 1 24 8.834a2.528 2.528 0 0 1-2.522 2.521h-2.522V8.834zm-1.268 0a2.528 2.528 0 0 1-2.523 2.521 2.527 2.527 0 0 1-2.52-2.521V2.522A2.527 2.527 0 0 1 15.165 0a2.528 2.528 0 0 1 2.523 2.522v6.312zm-2.523 10.122a2.528 2.528 0 0 1 2.523 2.522A2.528 2.528 0 0 1 15.165 24a2.527 2.527 0 0 1-2.52-2.522v-2.522h2.52zm0-1.268a2.527 2.527 0 0 1-2.52-2.523 2.526 2.526 0 0 1 2.52-2.52h6.313A2.527 2.527 0 0 1 24 15.165a2.528 2.528 0 0 1-2.522 2.523h-6.313z"/>
|
|
91
|
+
</svg>
|
|
92
|
+
|
|
93
|
+
{% else %}
|
|
94
|
+
<svg class="contact-icon" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
95
|
+
<path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path>
|
|
96
|
+
<path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path>
|
|
97
|
+
</svg>
|
|
98
|
+
{% endcase %}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{% if page.layout == 'post' %}
|
|
2
|
+
<script type="application/ld+json">
|
|
3
|
+
{
|
|
4
|
+
"@context": "https://schema.org",
|
|
5
|
+
"@type": "BlogPosting",
|
|
6
|
+
"headline": "{{ page.title | escape }}",
|
|
7
|
+
{% if page.subtitle %}
|
|
8
|
+
"alternativeHeadline": "{{ page.subtitle | escape }}",
|
|
9
|
+
{% endif %}
|
|
10
|
+
"description": "{{ page.description | default: page.excerpt | strip_html | strip_newlines | truncate: 160 | escape }}",
|
|
11
|
+
"image": {
|
|
12
|
+
"@type": "ImageObject",
|
|
13
|
+
"url": "{{ page.image | default: '/assets/img/default-post.jpg' | absolute_url }}",
|
|
14
|
+
"width": 1200,
|
|
15
|
+
"height": 630
|
|
16
|
+
},
|
|
17
|
+
"datePublished": "{{ page.date | date_to_xmlschema }}",
|
|
18
|
+
"dateModified": "{{ page.last_modified_at | default: page.date | date_to_xmlschema }}",
|
|
19
|
+
"author": {
|
|
20
|
+
"@type": "Person",
|
|
21
|
+
"name": "{{ site.author.name }}",
|
|
22
|
+
"url": "{{ site.url }}",
|
|
23
|
+
"sameAs": [
|
|
24
|
+
"{{ site.author.linkedin }}",
|
|
25
|
+
"{{ site.author.bluesky }}"
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
"publisher": {
|
|
29
|
+
"@type": "Person",
|
|
30
|
+
"name": "{{ site.author.name }}",
|
|
31
|
+
"logo": {
|
|
32
|
+
"@type": "ImageObject",
|
|
33
|
+
"url": "{{ '/assets/img/logo.png' | absolute_url }}",
|
|
34
|
+
"width": 600,
|
|
35
|
+
"height": 600
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"mainEntityOfPage": {
|
|
39
|
+
"@type": "WebPage",
|
|
40
|
+
"@id": "{{ page.url | absolute_url }}"
|
|
41
|
+
},
|
|
42
|
+
{% if page.categories %}
|
|
43
|
+
"articleSection": "{{ page.categories | first | capitalize }}",
|
|
44
|
+
"keywords": "{{ page.categories | join: ', ' }}",
|
|
45
|
+
{% endif %}
|
|
46
|
+
"inLanguage": "it-IT",
|
|
47
|
+
"isAccessibleForFree": "True",
|
|
48
|
+
"isPartOf": {
|
|
49
|
+
"@type": "Blog",
|
|
50
|
+
"@id": "{{ '/blog/' | absolute_url }}",
|
|
51
|
+
"name": "{{ site.title }} Blog"
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
</script>
|
|
55
|
+
{% endif %}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{% if page.layout == 'post' %}
|
|
2
|
+
<script type="application/ld+json">
|
|
3
|
+
{
|
|
4
|
+
"@context": "https://schema.org",
|
|
5
|
+
"@type": "BreadcrumbList",
|
|
6
|
+
"itemListElement": [
|
|
7
|
+
{
|
|
8
|
+
"@type": "ListItem",
|
|
9
|
+
"position": 1,
|
|
10
|
+
"name": "Home",
|
|
11
|
+
"item": "{{ site.url }}"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"@type": "ListItem",
|
|
15
|
+
"position": 2,
|
|
16
|
+
"name": "Blog",
|
|
17
|
+
"item": "{{ site.url }}/blog"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"@type": "ListItem",
|
|
21
|
+
"position": 3,
|
|
22
|
+
"name": "{{ page.title }}",
|
|
23
|
+
"item": "{{ page.url | absolute_url }}"
|
|
24
|
+
}
|
|
25
|
+
]
|
|
26
|
+
}
|
|
27
|
+
</script>
|
|
28
|
+
{% endif %}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
{% unless page.layout == 'post' %}
|
|
2
|
+
<script type="application/ld+json">
|
|
3
|
+
{
|
|
4
|
+
"@context": "https://schema.org",
|
|
5
|
+
"@type": "Person",
|
|
6
|
+
"name": "{{ site.author.name }}",
|
|
7
|
+
"url": "{{ site.url }}",
|
|
8
|
+
"image": {
|
|
9
|
+
"@type": "ImageObject",
|
|
10
|
+
"url": "{{ '/assets/img/profile.jpg' | absolute_url }}",
|
|
11
|
+
"width": 400,
|
|
12
|
+
"height": 400
|
|
13
|
+
},
|
|
14
|
+
"jobTitle": "Head of Technology Solutions",
|
|
15
|
+
"worksFor": {
|
|
16
|
+
"@type": "Organization",
|
|
17
|
+
"name": "Oltrematica",
|
|
18
|
+
"url": "https://oltrematica.com"
|
|
19
|
+
},
|
|
20
|
+
"description": "{{ site.description | escape }}",
|
|
21
|
+
"email": "{{ site.author.email }}",
|
|
22
|
+
"sameAs": [
|
|
23
|
+
"{{ site.author.linkedin }}",
|
|
24
|
+
"{{ site.author.bluesky }}",
|
|
25
|
+
"{{ site.url }}"
|
|
26
|
+
],
|
|
27
|
+
"knowsAbout": [
|
|
28
|
+
"Product Design",
|
|
29
|
+
"Technology Solutions",
|
|
30
|
+
"Digital Product Development",
|
|
31
|
+
"UX Design",
|
|
32
|
+
"Software Engineering",
|
|
33
|
+
"Team Management",
|
|
34
|
+
"Innovation"
|
|
35
|
+
]
|
|
36
|
+
}
|
|
37
|
+
</script>
|
|
38
|
+
|
|
39
|
+
<script type="application/ld+json">
|
|
40
|
+
{
|
|
41
|
+
"@context": "https://schema.org",
|
|
42
|
+
"@type": "WebSite",
|
|
43
|
+
"url": "{{ site.url }}",
|
|
44
|
+
"name": "{{ site.title }}",
|
|
45
|
+
"description": "{{ site.description | escape }}",
|
|
46
|
+
"publisher": {
|
|
47
|
+
"@type": "Person",
|
|
48
|
+
"name": "{{ site.author.name }}"
|
|
49
|
+
},
|
|
50
|
+
"potentialAction": {
|
|
51
|
+
"@type": "SearchAction",
|
|
52
|
+
"target": {
|
|
53
|
+
"@type": "EntryPoint",
|
|
54
|
+
"urlTemplate": "{{ site.url }}/search?q={search_term_string}"
|
|
55
|
+
},
|
|
56
|
+
"query-input": "required name=search_term_string"
|
|
57
|
+
},
|
|
58
|
+
"inLanguage": "it-IT"
|
|
59
|
+
}
|
|
60
|
+
</script>
|
|
61
|
+
|
|
62
|
+
{% if page.url == '/' or page.url == '/index.html' %}
|
|
63
|
+
<script type="application/ld+json">
|
|
64
|
+
{
|
|
65
|
+
"@context": "https://schema.org",
|
|
66
|
+
"@type": "ProfilePage",
|
|
67
|
+
"dateCreated": "{{ site.time | date_to_xmlschema }}",
|
|
68
|
+
"dateModified": "{{ site.time | date_to_xmlschema }}",
|
|
69
|
+
"mainEntity": {
|
|
70
|
+
"@type": "Person",
|
|
71
|
+
"name": "{{ site.author.name }}",
|
|
72
|
+
"description": "{{ site.description | escape }}",
|
|
73
|
+
"image": "{{ '/assets/img/profile.jpg' | absolute_url }}",
|
|
74
|
+
"sameAs": [
|
|
75
|
+
"{{ site.author.linkedin }}",
|
|
76
|
+
"{{ site.author.bluesky }}"
|
|
77
|
+
]
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
</script>
|
|
81
|
+
{% endif %}
|
|
82
|
+
{% endunless %}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{% if page.url == '/' or page.url == '/index.html' %}
|
|
2
|
+
<script type="application/ld+json">
|
|
3
|
+
{
|
|
4
|
+
"@context": "https://schema.org",
|
|
5
|
+
"@type": "WebSite",
|
|
6
|
+
"name": "{{ site.title }}",
|
|
7
|
+
"url": "{{ site.url }}",
|
|
8
|
+
"description": "{{ site.description }}",
|
|
9
|
+
"potentialAction": {
|
|
10
|
+
"@type": "SearchAction",
|
|
11
|
+
"target": {
|
|
12
|
+
"@type": "EntryPoint",
|
|
13
|
+
"urlTemplate": "{{ site.url }}/blog?search={search_term_string}"
|
|
14
|
+
},
|
|
15
|
+
"query-input": "required name=search_term_string"
|
|
16
|
+
},
|
|
17
|
+
"author": {
|
|
18
|
+
"@type": "Person",
|
|
19
|
+
"@id": "{{ site.url }}/#person"
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
</script>
|
|
23
|
+
{% endif %}
|
data/_layouts/blog.html
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
---
|
|
2
|
+
layout: default
|
|
3
|
+
---
|
|
4
|
+
{% assign t = site.data.i18n[site.lang] %}
|
|
5
|
+
<main id="main-content">
|
|
6
|
+
<section class="blog-section">
|
|
7
|
+
<div class="blog-container">
|
|
8
|
+
<div class="blog-header">
|
|
9
|
+
<h1 class="section-title">{{ site.blog.title }}</h1>
|
|
10
|
+
<p class="blog-description">
|
|
11
|
+
{{ site.blog.description }}
|
|
12
|
+
</p>
|
|
13
|
+
</div>
|
|
14
|
+
|
|
15
|
+
<!-- Search Box -->
|
|
16
|
+
<div class="search-container">
|
|
17
|
+
<div class="search-wrapper">
|
|
18
|
+
<svg class="search-icon" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
19
|
+
<circle cx="11" cy="11" r="8"></circle>
|
|
20
|
+
<path d="m21 21-4.35-4.35"></path>
|
|
21
|
+
</svg>
|
|
22
|
+
<input type="search" id="search-input" class="search-input" placeholder="{{ t.blog.search_placeholder }}" aria-label="{{ t.blog.search_aria_label }}">
|
|
23
|
+
<button type="button" id="search-clear" class="search-clear" aria-label="{{ t.blog.clear_search }}" style="display: none;">
|
|
24
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
25
|
+
<line x1="18" y1="6" x2="6" y2="18"></line>
|
|
26
|
+
<line x1="6" y1="6" x2="18" y2="18"></line>
|
|
27
|
+
</svg>
|
|
28
|
+
</button>
|
|
29
|
+
</div>
|
|
30
|
+
<div id="search-results-count" class="search-results-count" style="display: none;"></div>
|
|
31
|
+
</div>
|
|
32
|
+
|
|
33
|
+
<!-- Search Results (hidden by default) -->
|
|
34
|
+
<div id="search-results" class="blog-posts search-results" style="display: none;"></div>
|
|
35
|
+
|
|
36
|
+
<!-- Regular Posts -->
|
|
37
|
+
<div id="regular-posts" class="blog-posts">
|
|
38
|
+
{% for post in paginator.posts %}
|
|
39
|
+
<article class="blog-post-card">
|
|
40
|
+
<div class="post-card-content">
|
|
41
|
+
<time class="post-date" datetime="{{ post.date | date_to_xmlschema }}">
|
|
42
|
+
{{ post.date | localized_date }}
|
|
43
|
+
</time>
|
|
44
|
+
<h2 class="post-card-title">
|
|
45
|
+
<a href="{{ post.url | relative_url }}">{{ post.title }}</a>
|
|
46
|
+
</h2>
|
|
47
|
+
{% if post.excerpt %}
|
|
48
|
+
<p class="post-card-excerpt">{{ post.excerpt | strip_html | truncatewords: 30 }}</p>
|
|
49
|
+
{% endif %}
|
|
50
|
+
<div class="post-card-footer">
|
|
51
|
+
{% if post.categories %}
|
|
52
|
+
<div class="post-categories">
|
|
53
|
+
{% for category in post.categories %}
|
|
54
|
+
<a href="{{ '/categories/' | append: category | relative_url }}" class="post-category">{{ category }}</a>
|
|
55
|
+
{% endfor %}
|
|
56
|
+
</div>
|
|
57
|
+
{% endif %}
|
|
58
|
+
<a href="{{ post.url | relative_url }}" class="read-more">
|
|
59
|
+
{{ t.blog.read_more }}
|
|
60
|
+
</a>
|
|
61
|
+
</div>
|
|
62
|
+
</div>
|
|
63
|
+
</article>
|
|
64
|
+
{% endfor %}
|
|
65
|
+
</div>
|
|
66
|
+
|
|
67
|
+
<!-- Pagination (hidden during search) -->
|
|
68
|
+
{% if paginator.total_pages > 1 %}
|
|
69
|
+
<div id="pagination" class="pagination">
|
|
70
|
+
{% if paginator.previous_page %}
|
|
71
|
+
<a href="{{ paginator.previous_page_path | relative_url }}" class="pagination-link pagination-prev">
|
|
72
|
+
{{ t.blog.previous }}
|
|
73
|
+
</a>
|
|
74
|
+
{% else %}
|
|
75
|
+
<span class="pagination-link pagination-prev disabled">{{ t.blog.previous }}</span>
|
|
76
|
+
{% endif %}
|
|
77
|
+
|
|
78
|
+
<div class="pagination-pages">
|
|
79
|
+
{% for page in (1..paginator.total_pages) %}
|
|
80
|
+
{% if page == paginator.page %}
|
|
81
|
+
<span class="pagination-link pagination-current">{{ page }}</span>
|
|
82
|
+
{% elsif page == 1 %}
|
|
83
|
+
<a href="{{ '/blog/' | relative_url }}" class="pagination-link">{{ page }}</a>
|
|
84
|
+
{% else %}
|
|
85
|
+
<a href="{{ site.paginate_path | relative_url | replace: ':num', page }}" class="pagination-link">{{ page }}</a>
|
|
86
|
+
{% endif %}
|
|
87
|
+
{% endfor %}
|
|
88
|
+
</div>
|
|
89
|
+
|
|
90
|
+
{% if paginator.next_page %}
|
|
91
|
+
<a href="{{ paginator.next_page_path | relative_url }}" class="pagination-link pagination-next">
|
|
92
|
+
{{ t.blog.next }}
|
|
93
|
+
</a>
|
|
94
|
+
{% else %}
|
|
95
|
+
<span class="pagination-link pagination-next disabled">{{ t.blog.next }}</span>
|
|
96
|
+
{% endif %}
|
|
97
|
+
</div>
|
|
98
|
+
{% endif %}
|
|
99
|
+
</div>
|
|
100
|
+
</section>
|
|
101
|
+
</main>
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
---
|
|
2
|
+
layout: default
|
|
3
|
+
---
|
|
4
|
+
{% assign t = site.data.i18n[site.lang] %}
|
|
5
|
+
<main id="main-content">
|
|
6
|
+
<section class="blog-section">
|
|
7
|
+
<div class="blog-container">
|
|
8
|
+
<div class="blog-header">
|
|
9
|
+
<div class="category-breadcrumb">
|
|
10
|
+
<a href="{{ '/blog' | relative_url }}" class="breadcrumb-link">{{ t.categories.breadcrumb_blog }}</a>
|
|
11
|
+
<span class="breadcrumb-separator">/</span>
|
|
12
|
+
<a href="{{ '/categories' | relative_url }}" class="breadcrumb-link">{{ t.categories.breadcrumb_categories }}</a>
|
|
13
|
+
</div>
|
|
14
|
+
<h1 class="section-title">{{ page.category | replace: '-', ' ' | capitalize }}</h1>
|
|
15
|
+
<p class="blog-description">
|
|
16
|
+
{{ page.description | default: t.categories.posts_in_category }}
|
|
17
|
+
</p>
|
|
18
|
+
</div>
|
|
19
|
+
|
|
20
|
+
<div class="blog-posts">
|
|
21
|
+
{% assign posts = site.categories[page.category] %}
|
|
22
|
+
{% if posts.size > 0 %}
|
|
23
|
+
{% for post in posts %}
|
|
24
|
+
<article class="blog-post-card">
|
|
25
|
+
<div class="post-card-content">
|
|
26
|
+
<time class="post-date" datetime="{{ post.date | date_to_xmlschema }}">
|
|
27
|
+
{{ post.date | localized_date }}
|
|
28
|
+
</time>
|
|
29
|
+
<h2 class="post-card-title">
|
|
30
|
+
<a href="{{ post.url | relative_url }}">{{ post.title }}</a>
|
|
31
|
+
</h2>
|
|
32
|
+
{% if post.subtitle %}
|
|
33
|
+
<p class="post-card-excerpt">{{ post.subtitle }}</p>
|
|
34
|
+
{% elsif post.excerpt %}
|
|
35
|
+
<p class="post-card-excerpt">{{ post.excerpt | strip_html | truncatewords: 30 }}</p>
|
|
36
|
+
{% endif %}
|
|
37
|
+
<div class="post-card-footer">
|
|
38
|
+
{% if post.categories %}
|
|
39
|
+
<div class="post-categories">
|
|
40
|
+
{% for category in post.categories %}
|
|
41
|
+
<a href="{{ '/categories/' | append: category | relative_url }}" class="post-category">{{ category }}</a>
|
|
42
|
+
{% endfor %}
|
|
43
|
+
</div>
|
|
44
|
+
{% endif %}
|
|
45
|
+
<a href="{{ post.url | relative_url }}" class="read-more">
|
|
46
|
+
{{ t.categories.read_more }}
|
|
47
|
+
</a>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
</article>
|
|
51
|
+
{% endfor %}
|
|
52
|
+
{% else %}
|
|
53
|
+
<div class="no-posts">
|
|
54
|
+
<p>{{ t.categories.no_posts }}</p>
|
|
55
|
+
</div>
|
|
56
|
+
{% endif %}
|
|
57
|
+
</div>
|
|
58
|
+
|
|
59
|
+
<div class="back-to-categories">
|
|
60
|
+
<a href="{{ '/categories' | relative_url }}" class="btn btn-secondary">
|
|
61
|
+
{{ t.categories.all_categories }}
|
|
62
|
+
</a>
|
|
63
|
+
</div>
|
|
64
|
+
</div>
|
|
65
|
+
</section>
|
|
66
|
+
</main>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
---
|
|
2
|
+
layout: default
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
<!-- Contact Section -->
|
|
6
|
+
<main id="main-content">
|
|
7
|
+
<section class="contact">
|
|
8
|
+
<div class="contact-container">
|
|
9
|
+
<div class="contact-content">
|
|
10
|
+
<h1 class="section-title">{{ site.contact.title }}</h1>
|
|
11
|
+
<p class="contact-description">
|
|
12
|
+
{{ site.contact.description }}
|
|
13
|
+
</p>
|
|
14
|
+
|
|
15
|
+
<div class="contact-links">
|
|
16
|
+
{% for link in site.contact.links %}
|
|
17
|
+
<a href="{{ link.url }}" class="contact-link" target="_blank" rel="noopener noreferrer">
|
|
18
|
+
{% include social-icon.html type=link.type %}
|
|
19
|
+
<span>{{ link.name }}</span>
|
|
20
|
+
</a>
|
|
21
|
+
{% endfor %}
|
|
22
|
+
</div>
|
|
23
|
+
</div>
|
|
24
|
+
</div>
|
|
25
|
+
</section>
|
|
26
|
+
</main>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="it">
|
|
3
|
+
{% include head.html %}
|
|
4
|
+
<body>
|
|
5
|
+
{% include nav.html %}
|
|
6
|
+
|
|
7
|
+
{{ content }}
|
|
8
|
+
|
|
9
|
+
{% include footer.html %}
|
|
10
|
+
|
|
11
|
+
<script src="{{ '/js/main.js' | relative_url }}?v={{ site.time | date: '%s' }}" defer></script>
|
|
12
|
+
</body>
|
|
13
|
+
</html>
|
data/_layouts/home.html
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
layout: default
|
|
3
|
+
---
|
|
4
|
+
{% assign t = site.data.i18n[site.lang] %}
|
|
5
|
+
<!-- Hero Section -->
|
|
6
|
+
<main id="main-content">
|
|
7
|
+
<section id="hero" class="hero">
|
|
8
|
+
<div class="hero-container">
|
|
9
|
+
<div class="hero-content">
|
|
10
|
+
<h1 class="hero-title">
|
|
11
|
+
<span class="hero-name">{{ site.hero.name }}</span>
|
|
12
|
+
<span class="hero-role">{{ site.hero.role }}</span>
|
|
13
|
+
</h1>
|
|
14
|
+
<p class="hero-subtitle">
|
|
15
|
+
{{ site.hero.subtitle }}
|
|
16
|
+
</p>
|
|
17
|
+
<p class="hero-tagline">
|
|
18
|
+
{{ site.hero.tagline }}
|
|
19
|
+
</p>
|
|
20
|
+
<p class="hero-description">
|
|
21
|
+
{{ site.hero.description }}
|
|
22
|
+
</p>
|
|
23
|
+
<div class="hero-cta">
|
|
24
|
+
<a href="{{ '/contact' | relative_url }}" class="btn btn-primary">{{ t.home.contact_me }}</a>
|
|
25
|
+
<a href="{{ '/blog' | relative_url }}" class="btn btn-secondary">{{ t.home.read_blog }}</a>
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
</section>
|
|
30
|
+
</main>
|
data/_layouts/llms.txt
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
---
|
|
3
|
+
{% assign t = site.data.i18n[site.lang] %}# {{ page.title }}
|
|
4
|
+
|
|
5
|
+
> {{ page.subtitle }}
|
|
6
|
+
|
|
7
|
+
## {{ t.llms.metadata }}
|
|
8
|
+
|
|
9
|
+
- **{{ t.llms.author }}**: {{ site.author.name }}
|
|
10
|
+
- **{{ t.llms.published }}**: {{ page.date | localized_date }}
|
|
11
|
+
- **{{ t.llms.url }}**: {{ site.url }}{{ page.url | remove: '/llms.txt' }}
|
|
12
|
+
- **{{ t.llms.categories }}**: {% for category in page.categories %}{{ category }}{% unless forloop.last %}, {% endunless %}{% endfor %}
|
|
13
|
+
|
|
14
|
+
## {{ t.llms.summary }}
|
|
15
|
+
|
|
16
|
+
{{ page.subtitle }}
|
|
17
|
+
|
|
18
|
+
## {{ t.llms.post_full_content }}
|
|
19
|
+
|
|
20
|
+
{{ content | strip_html | normalize_whitespace }}
|
|
21
|
+
|
|
22
|
+
## {{ t.llms.the_author }}
|
|
23
|
+
|
|
24
|
+
{{ site.author.name }} - {{ site.description }}
|
|
25
|
+
|
|
26
|
+
## {{ t.llms.contacts }}
|
|
27
|
+
|
|
28
|
+
- {{ t.llms.web_site }}: {{ site.url }}
|
|
29
|
+
{% for link in site.contact.links %}- {{ link.name }}: {{ link.url }}
|
|
30
|
+
{% endfor %}
|
|
31
|
+
|
|
32
|
+
## {{ t.llms.related_content }}
|
|
33
|
+
|
|
34
|
+
{{ t.llms.visit_blog_prefix }} {{ site.url }}/blog/ {{ t.llms.visit_blog_suffix }}
|