/lesprojets création class d'après titre node-site
This commit is contained in:
@@ -949,6 +949,21 @@ $(document).ready(function () {
|
||||
////////////////// end class à view-rows-wrapper ////////////////
|
||||
|
||||
|
||||
//////////////////////// start class site ///////////
|
||||
document.querySelectorAll('.views-field-title h2').forEach(h2 => {
|
||||
const text = h2.textContent.trim();
|
||||
const className = text
|
||||
.toLowerCase()
|
||||
.normalize('NFD') // retire les accents
|
||||
.replace(/[\u0300-\u036f]/g, '') // idem
|
||||
.replace(/[^a-z0-9]+/g, '-') // remplace espaces et ponctuation par des tirets
|
||||
.replace(/(^-|-$)/g, ''); // supprime les tirets en début/fin
|
||||
|
||||
h2.classList.add(className);
|
||||
});
|
||||
////////////////end class site ////////////////////////////
|
||||
|
||||
|
||||
})(jQuery, window);
|
||||
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -891,6 +891,21 @@ $(document).ready(function () {
|
||||
////////////////// end class à view-rows-wrapper ////////////////
|
||||
|
||||
|
||||
//////////////////////// start class site ///////////
|
||||
document.querySelectorAll('.views-field-title h2').forEach(h2 => {
|
||||
const text = h2.textContent.trim();
|
||||
const className = text
|
||||
.toLowerCase()
|
||||
.normalize('NFD') // retire les accents
|
||||
.replace(/[\u0300-\u036f]/g, '') // idem
|
||||
.replace(/[^a-z0-9]+/g, '-') // remplace espaces et ponctuation par des tirets
|
||||
.replace(/(^-|-$)/g, ''); // supprime les tirets en début/fin
|
||||
|
||||
h2.classList.add(className);
|
||||
});
|
||||
////////////////end class site ////////////////////////////
|
||||
|
||||
|
||||
})(jQuery, window);
|
||||
|
||||
|
||||
|
||||
@@ -29,8 +29,12 @@
|
||||
{% if field.wrapper_element %}</{{ field.wrapper_element }}>{% endif %}
|
||||
{% endmacro %}
|
||||
|
||||
{# --- Your single new wrapper just for the 4 fields --- #}
|
||||
<div class="views-field-group">
|
||||
|
||||
{% set raw_title = fields.title.content|striptags|trim %}
|
||||
{% set title_first = raw_title|split(',')|first|trim %}
|
||||
{% set title_slug = title_first|clean_class %}
|
||||
|
||||
<div class="views-field-group {{ title_slug }}">
|
||||
{% for name in main_fields %}
|
||||
{% if fields[name] is defined %}
|
||||
{{ m.render_field(fields[name]) }}
|
||||
@@ -38,9 +42,10 @@
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
{# Render everything else exactly as before #}
|
||||
{% for name, field in fields %}
|
||||
{% if name not in main_fields %}
|
||||
{{ m.render_field(field) }}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user