editorial-autogestiva-jekyll-theme 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,76 @@
1
+ ---
2
+ title:
3
+ type: 'string'
4
+ required: true
5
+ label:
6
+ es: 'El nombre del proyecto editorial'
7
+ en: 'Publisher name'
8
+ description:
9
+ type: 'text'
10
+ required: true
11
+ label:
12
+ es: 'Descripción del proyecto'
13
+ en: 'Publisher description'
14
+ logo:
15
+ type: 'image'
16
+ path:
17
+ label:
18
+ es: 'Logo de la editorial'
19
+ en: 'Publisher logo'
20
+ help:
21
+ es: "Resolución recomendada: 1280 pixeles de ancho"
22
+ en: "Recommended resolution: 1280 pixels width"
23
+ description:
24
+ label:
25
+ es: 'Descripción del logo'
26
+ en: 'Logo description'
27
+ help:
28
+ es: Describe el logo para usuaries no videntes y buscadores
29
+ en: |
30
+ Describe the logo for blind or partially sighted users and
31
+ search engines
32
+ content:
33
+ type: 'content'
34
+ label:
35
+ es: 'Acerca del proyecto, historia, etc.'
36
+ en: 'Post content'
37
+ address:
38
+ type: 'string'
39
+ label:
40
+ es: 'La dirección postal'
41
+ en: 'Postal address'
42
+ locality:
43
+ type: 'string'
44
+ label:
45
+ es: 'Localidad'
46
+ en: 'Locality'
47
+ country:
48
+ type: 'string'
49
+ label:
50
+ es: 'País'
51
+ en: 'Country name'
52
+ social_networks:
53
+ type: 'array'
54
+ label:
55
+ es: 'Redes sociales'
56
+ en: 'Social networks'
57
+ help:
58
+ es: 'Vínculo completo a perfiles en redes sociales, por ejemplo: https://twitter.com/SuttyWeb'
59
+ en: 'Full link to social network profiles, ie. https://twitter.com/SuttyWeb'
60
+ draft:
61
+ type: 'boolean'
62
+ label:
63
+ es: 'Borrador'
64
+ en: 'Draft'
65
+ help:
66
+ es: 'Este artículo aun no está listo para publicar'
67
+ en: "This post isn't ready to be published yet"
68
+ order:
69
+ type: 'order'
70
+ label:
71
+ es: 'Orden'
72
+ en: 'Order'
73
+ help:
74
+ es: 'La posición del artículo en la lista de artículos'
75
+ en: 'The post position in the posts list'
76
+ ---
@@ -0,0 +1,113 @@
1
+ ---
2
+ title:
3
+ type: 'string'
4
+ required: true
5
+ label:
6
+ es: 'Título del artículo'
7
+ en: 'Post title'
8
+ help:
9
+ es: '¡Un título que invite a leer el artículo!'
10
+ en: 'A title that invites people to read the post!'
11
+ description:
12
+ type: 'text'
13
+ required: true
14
+ label:
15
+ es: 'Alerta de contenido o descripción del artículo'
16
+ en: 'Content warning or post description'
17
+ help:
18
+ es: |
19
+ Resumen del contenido del artículo, que también usarán redes
20
+ sociales y buscadores. Si el artículo trata de violencias y otros
21
+ temas sensibles, te invitamos a usar este campo como alerta de
22
+ contenido, para que las personas puedan determinar cuándo quieren
23
+ abrirlo.
24
+ en: |
25
+ Summary of the post contents, also used by social media and search
26
+ engines. If the post is about violence and other sensitive
27
+ topics, we invite you to use it as a content warning, so others
28
+ can decide when they want to read it.
29
+ author:
30
+ type: 'array'
31
+ label:
32
+ es: 'Autores'
33
+ en: 'Authors'
34
+ help:
35
+ es: 'Quiénes participaron en la escritura de este artículo'
36
+ en: 'Who collaborated in write this post'
37
+ image:
38
+ type: 'image'
39
+ path:
40
+ label:
41
+ es: 'Imagen principal'
42
+ en: 'Main image'
43
+ help:
44
+ es: |
45
+ Se utiliza para ilustrar el artículo y como previsualización en
46
+ las redes sociales.
47
+ en: |
48
+ It's used to illustrate the article and as preview in social
49
+ networks.
50
+ description:
51
+ label:
52
+ es: 'Descripción de la imagen principal'
53
+ en: 'Main image description'
54
+ help:
55
+ es: |
56
+ Describe la imagen principal para usuaries no videntes y
57
+ buscadores
58
+ en: |
59
+ Describe the main image for blind or partially sighted users and
60
+ search engines
61
+ content:
62
+ type: 'content'
63
+ label:
64
+ es: 'Contenido del artículo'
65
+ en: 'Post content'
66
+ help:
67
+ es: 'Escribe aquí el artículo'
68
+ en: 'Write down your post'
69
+ permalink:
70
+ type: 'string'
71
+ label:
72
+ es: 'Enlace'
73
+ en: 'Permalink'
74
+ help:
75
+ es: |
76
+ Si no quieres utilizar el formato de enlaces general del sitio
77
+ para este artículo, especifica uno aquí.
78
+ en: |
79
+ If you don't want to follow the site's link format for this
80
+ post, change it here.
81
+ categories:
82
+ type: 'array'
83
+ label:
84
+ es: 'Categorías'
85
+ en: 'Categories'
86
+ help:
87
+ es: 'Ayudan a organizar los artículos en temas'
88
+ en: 'Use categories to organize posts by themes'
89
+ tags:
90
+ type: 'array'
91
+ label:
92
+ es: 'Etiquetas'
93
+ en: 'Tags'
94
+ help:
95
+ es: 'Usa etiquetas para resaltar palabras clave'
96
+ en: 'Tags are helpful as keywords'
97
+ draft:
98
+ type: 'boolean'
99
+ label:
100
+ es: 'Borrador'
101
+ en: 'Draft'
102
+ help:
103
+ es: 'Este artículo aun no está listo para publicar'
104
+ en: "This post isn't ready to be published yet"
105
+ order:
106
+ type: 'order'
107
+ label:
108
+ es: 'Orden'
109
+ en: 'Order'
110
+ help:
111
+ es: 'La posición del artículo en la lista de artículos'
112
+ en: 'The post position in the posts list'
113
+ ---
@@ -0,0 +1,35 @@
1
+ <form method="post" action="https://contact.sutty.nl/">
2
+ <input type="hidden" name="site" value="{{ site.name }}" />
3
+ <input
4
+ type="hidden"
5
+ name="redirect"
6
+ value="{{ site.url }}/{{ include.url }}?{{ site.i18n.contact.thanks }}" />
7
+
8
+ {%- for field in site.i18n.contact.form.fields -%}
9
+ <div class="form-group">
10
+ <label for="pronouns">{{ field.label }}</label>
11
+ <input
12
+ type="{{ field.type }}"
13
+ id="{{ field.name }}"
14
+ name="{{ field.name }}"
15
+ value=""
16
+ class="form-control"
17
+ autocomplete="{{ field.autocomplete }}"
18
+ placeholder="{{ field.placeholder }}" />
19
+ </div>
20
+ {%- endfor -%}
21
+
22
+ <div class="form-group">
23
+ <label for="body">{{ site.i18n.contact.form.body }}</label>
24
+ <textarea name="body" id="body" required class="form-control"></textarea>
25
+ </div>
26
+
27
+ <input type="submit" class="btn btn-success" value="{{ site.i18n.contact.form.submit }}" />
28
+
29
+ <div class="form-check form-check-inline">
30
+ <input type="checkbox" name="gdpr" id="gdpr" value="1" required class="form-check-input" />
31
+ <label class="form-check-label" for="gdpr">
32
+ {{ site.i18n.contact.form.gdpr }}
33
+ </label>
34
+ </div>
35
+ </form>
@@ -0,0 +1,72 @@
1
+ <footer>
2
+ <div class="row align-items-end">
3
+ {% comment %}
4
+ XXX: Usamos el primer artículo de tipo Editorial. Hacemos esto
5
+ porque la edición de estos datos desde Sutty solo se puede hacer
6
+ como artículos.
7
+ {% endcomment %}
8
+ {% assign editorial = site.posts | where: 'layout', 'editorial' | first %}
9
+
10
+ <div class="col h-card" itemscope itemtype="https://schema.org/Organization">
11
+ <div class="media">
12
+ <img
13
+ itemprop="logo"
14
+ class="u-photo"
15
+ src="{{ editorial.logo.path | thumbnail: 100 }}"
16
+ alt="{{ editorial.logo.description }}" />
17
+
18
+ <div class="media-body">
19
+ <h1 class="p-name" itemprop="name">{{ editorial.title }}</h1>
20
+ <p class="lead">{{ editorial.description }}</p>
21
+ </div>
22
+
23
+ </div>
24
+
25
+ <div itemprop="location" itemscope itemtype="https://schema.org/PostalAddress">
26
+ {%- if editorial.address -%}
27
+ <p class="p-street-address" itemprop="streetAddress">{{ editorial.address }}</p>
28
+ {%- endif -%}
29
+ {%- if editorial.locality -%}
30
+ <p class="p-locality" itemprop="addressLocality">{{ editorial.locality }}</p>
31
+ {%- endif -%}
32
+ {%- if editorial.country -%}
33
+ <p class="p-country-name" itemprop="addressCountry">{{ editorial.country }}</p>
34
+ {%- endif -%}
35
+ </div>
36
+
37
+ <ul>
38
+ {%- for social in editorial.social_networks -%}
39
+ <li><a rel="me" href="{{ social }}">
40
+ {% comment %}
41
+
42
+ Obtenemos la URL de la red social, eliminamos la www,
43
+ obtenemos el tercer elemento separando por / y el primero
44
+ separando por .
45
+
46
+ https://www.twitter.com/SuttyWeb
47
+ https://twitter.com/SuttyWeb
48
+ twitter.com
49
+ twitter
50
+ Twitter
51
+ {% endcomment %}
52
+ {% assign s = social | remove: 'www.' | split: '/' %}
53
+ {{ s[2] | split: '.' | first | capitalize }}
54
+ </a></li>
55
+ {%- endfor -%}
56
+ </ul>
57
+
58
+ </div>
59
+
60
+ <div class="col text-right">
61
+ <ul class="">
62
+ {%- for link in site.i18n.footer.links %}
63
+ <li>
64
+ <a href="{{ link.url }}">{{ link.text }}</a>
65
+ </li>
66
+ {%- endfor %}
67
+ </ul>
68
+
69
+ {{ site.i18n.footer.made_with_sutty | markdownify }}
70
+ </div>
71
+ </div>
72
+ </footer>
@@ -0,0 +1,29 @@
1
+ <nav class="navbar navbar-expand-lg navbar-light bg-light d-print-block" role="navigation" aria-label="{{ site.i18n.menu.title }}">
2
+ <a class="navbar-brand" href="">
3
+ {{ site.title }}
4
+ </a>
5
+
6
+ {% comment %}
7
+ TODO: Add CSS-only hamburger menu.
8
+ {% endcomment %}
9
+ <ul class="navbar-nav d-print-none">
10
+ {%- for item in site.i18n.menu.items -%}
11
+ {% comment %}
12
+ This makes it hard to just cache the whole navbar, but we prefer
13
+ to mark the active item in code rather than with JS.
14
+ {% endcomment %}
15
+
16
+ <li class="nav-item">
17
+ <a class="nav-link{% if page.url == item.url %} active{% endif %}" href="{{ item.url }}">
18
+ {{ item.text }}
19
+
20
+ {%- if page.url == item.url -%}
21
+ <span class="sr-only">
22
+ {{ site.i18n.menu.active | default: '(current)' }}
23
+ </span>
24
+ {%- endif %}
25
+ </a>
26
+ </li>
27
+ {%- endfor -%}
28
+ </ul>
29
+ </nav>
@@ -0,0 +1,140 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ <article class="h-entry" itemscope itemtype="http://schema.org/Book">
6
+ <header>
7
+ <h1 class="p-name" itemprop="name headline">{{ page.title | escape }}</h1>
8
+
9
+ {%- if page.description -%}
10
+ <p class="lead p-summary" itemprop="description">{{ page.description | escape }}</p>
11
+ {%- endif -%}
12
+
13
+
14
+ <p>
15
+ <time
16
+ class="dt-published"
17
+ datetime="{{ page.date | date_to_xmlschema }}"
18
+ itemprop="datePublished">
19
+ {%- assign date_format = site.i18n.date | default: "%b %-d, %Y" -%}
20
+ {{ page.date | date: date_format }}
21
+ </time>
22
+
23
+ {%- for author in page.author -%}
24
+
25
+ <span itemprop="author" itemscope itemtype="http://schema.org/Person">
26
+ <span class="p-author h-card" itemprop="name">
27
+ {{ author | escape }}
28
+ </span>
29
+ </span>
30
+ {%- endfor -%}
31
+ </p>
32
+ </header>
33
+
34
+ <div class="row">
35
+ <div class="col">
36
+ {%- if page.image.path -%}
37
+ <picture>
38
+ {% for size in site.images.sizes %}
39
+ <source
40
+ srcset="{{ page.image.path | thumbnail: size }}"
41
+ media="(max-width: {{ size }}px)" />
42
+ {% endfor %}
43
+
44
+ <img
45
+ class="img-fluid"
46
+ src="{{ page.image.path | thumbnail: 570 }}"
47
+ alt="{{ page.image.description }}" />
48
+ </picture>
49
+ {%- endif -%}
50
+ </div>
51
+
52
+ <div class="col">
53
+ {% comment %}
54
+ La disponibilidad del libro!
55
+ {% endcomment %}
56
+ <div itemprop="offers" itemscope itemtype="https://schema.org/Offer">
57
+ <h2>
58
+ <span itemprop="price">{{ page.price }}</span>
59
+ <span itemprop="priceCurrency">{{ page.currency }}</span>
60
+ </h2>
61
+
62
+ <dl>
63
+ <dt>{{ site.i18n.book.availability }}</dt>
64
+ {%- if page.availability -%}
65
+ <meta itemprop="availability"
66
+ content="https://schema.org/InStock" />
67
+ <dd>{{ site.i18n.book.in_stock }}</dd>
68
+ {%- else -%}
69
+ <meta itemprop="availability"
70
+ content="https://schema.org/OutOfStock" />
71
+ <dd class="out-of-stock">
72
+ {{ site.i18n.book.out_of_stock }}
73
+ </dd>
74
+ {%- endif -%}
75
+
76
+ <dt>{{ site.i18n.book.payment_methods }}</dt>
77
+ {%- for pm in page.payment_methods -%}
78
+ <dd>{{ site.i18n.book[pm].text }}</dd>
79
+ <meta
80
+ itemprop="acceptedPaymentMethod"
81
+ content="http://purl.org/goodrelations/v1#{{ site.i18n.book[pm].schema }}" />
82
+ {%- endfor -%}
83
+
84
+ <dt>{{ site.i18n.book.delivery_methods }}</dt>
85
+ {%- for dm in page.delivery_methods -%}
86
+ <dd>{{ site.i18n.book[dm].text }}</dd>
87
+ <meta
88
+ itemprop="acceptedPaymentMethod"
89
+ content="http://purl.org/goodrelations/v1#{{ site.i18n.book[pm].schema }}" />
90
+ {%- endfor -%}
91
+ </dl>
92
+ </div>
93
+
94
+ <dl>
95
+ <dt>{{ site.i18n.book.pages }}</dt>
96
+ <dd itemprop="numberOfPages">{{ page.pages }}</dd>
97
+
98
+ <dt>{{ site.i18n.book.size }}</dt>
99
+ <dd>{{ page.size }}</dd>
100
+ </dl>
101
+
102
+ <div class="e-content" itemprop="abstract">
103
+ {{ content }}
104
+ </div>
105
+ </div>
106
+ </div>
107
+
108
+ <div class="row">
109
+ <div class="col">
110
+ {% include contact.html url=page.url %}
111
+ </div>
112
+ </div>
113
+
114
+ <footer>
115
+ <a class="u-url" itemprop="url" href="{{ page.url }}" hidden>
116
+ {{ site.url }}/{{ page.url }}
117
+ </a>
118
+
119
+ {%- if page.uuid -%}
120
+ <span hidden itemprop="identifier">{{ page.uuid }}</span>
121
+ {%- endif -%}
122
+
123
+ {%- if page.license.url -%}
124
+ <p itemprop="license" itemtype="http://schema.org/CreativeWork">
125
+ <a rel="license" itemprop="url" href="{{ page.license.url }}">
126
+ <span itemprop="articleBody">
127
+ {{ page.license.description }}
128
+ </span>
129
+ </a>
130
+ </p>
131
+ {%- endif -%}
132
+
133
+ {%- if page.tags %}
134
+ <span itemprop="keywords" hidden>{{ page.tags | join: ', ' }}</span>
135
+ {%- for tag in page.tags -%}
136
+ <span hidden class="h-category">{{ tag }}</span>
137
+ {%- endfor -%}
138
+ {%- endif -%}
139
+ </footer>
140
+ </article>