settings.html
Panoramica
Il file settings.html è l'unico della cartella views a non essere utilizzato nel front-end, infatti fa riferimento ai contenuti della sezione impostazioni tema del pannello. Questo file è completamente personalizzabile ad eccezione della dicitura {% extends 'cms::admin.themes.settings' %}
, necessaria per il suo corretto funzionamento.
Solitamente contiene un form con delle opzioni personalizzabili dall'amministratore che possono essere richiamate in front-end dal designer, inoltre queste opzioni possono essere diverse per ogni lingua.
Il CSS di questa sezione viene in genere gestito con il file admin.css e le etichette con i file admin.php, in italiano ed inglese.
Esempio di file settings.html
In questo esempio viene creato nelle impostazioni tema un form che gestisce l'inserimento di un'immagine (logo), la scelta di un colore e un elenco di URL per le icone dei social network.
- settings.html
{% extends 'cms::admin.themes.settings' %} {% block admin_styles %} {{ parent() }} {{ theme.style('css/admin.css') }} {% endblock %} {% block settings_body %} <div class="row"> <div class="col-md-8 col-md-offset-2"> <div class="page-header"> <h3 id="theme_name" class="text-center">{{ theme.info.name }}</h3> </div> {{ form_model(theme.settings, { class: 'form-horizontal' }) }} <div class="panel panel-default"> <div class="panel-heading"> <h3 class="panel-title">{{ lang_get('theme::admin.appearance') }}</h3> </div> <div class="panel-body"> {{ form_group('theme::admin.fields.color_details', form_color('color_details')) }} {{ form_group('theme::admin.fields.logo', form_picture('logo')) }} <div class="row"> <div class="col-md-10 col-md-offset-3 col-lg-offset-2"> <div class="picture-preview" data-field="logo"></div> </div> </div> </div> </div> <div class="panel panel-default"> <div class="panel-heading"> <h3 class="panel-title">{{ lang_get('theme::admin.social_icons') }}</h3> </div> <div class="panel-body"> {{ form_group('theme::admin.fields.social_facebook', form_text('social_links[facebook]')) }} {{ form_group('theme::admin.fields.social_twitter', form_text('social_links[twitter]')) }} {{ form_group('theme::admin.fields.social_google_plus', form_text('social_links[google_plus]')) }} {{ form_group('theme::admin.fields.social_linkedin', form_text('social_links[linkedin]')) }} {{ form_group('theme::admin.fields.social_vimeo', form_text('social_links[vimeo]')) }} {{ form_group('theme::admin.fields.social_youtube', form_text('social_links[youtube]')) }} </div> </div> {{ form_save() }} {% if theme.settings %} {{ form_submit('cms::admin.themes.delete_settings', { name: 'delete', class: 'btn btn-danger', 'data-confirm': 'generic' }) }} {% endif %} {{ form_close() }} </div> </div> {% endblock %}