1 Commits

3 changed files with 158 additions and 112 deletions
+10 -24
View File
@@ -3,7 +3,8 @@
function wp_theme_sen2_setup() { function wp_theme_sen2_setup() {
// Enregistrement des menus // Enregistrement des menus
register_nav_menus(array( register_nav_menus(array(
'sidebar' => __('Menu Latéral', 'wp-theme-sen2') // Menu latéral gauche 'primary' => __('Menu Principal', 'wp-theme-sen2'), // Menu horizontal en haut
'sidebar' => __('Menu Latéral', 'wp-theme-sen2') // Menu latéral gauche
)); ));
// Supports du thème // Supports du thème
@@ -11,39 +12,18 @@ function wp_theme_sen2_setup() {
add_theme_support('title-tag'); add_theme_support('title-tag');
add_theme_support('automatic-feed-links'); add_theme_support('automatic-feed-links');
add_theme_support('html5', array('search-form', 'comment-form', 'comment-list', 'gallery', 'caption')); add_theme_support('html5', array('search-form', 'comment-form', 'comment-list', 'gallery', 'caption'));
// Largeur des images pour le thème
add_theme_support('align-wide');
} }
add_action('after_setup_theme', 'wp_theme_sen2_setup'); add_action('after_setup_theme', 'wp_theme_sen2_setup');
// Chargement des scripts et styles // Chargement des scripts et styles
function wp_theme_sen2_scripts() { function wp_theme_sen2_scripts() {
wp_enqueue_style('wp-theme-sen2-style', get_stylesheet_uri()); wp_enqueue_style('wp-theme-sen2-style', get_stylesheet_uri());
wp_enqueue_style('wp-theme-sen2-google-fonts', 'https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600&display=swap'); wp_enqueue_style('wp-theme-sen2-google-fonts', 'https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600;700&display=swap');
wp_enqueue_style('wp-theme-sen2-font-awesome', 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css'); wp_enqueue_style('wp-theme-sen2-font-awesome', 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css');
// Script pour le menu latéral (si besoin)
wp_enqueue_script('wp-theme-sen2-script', get_template_directory_uri() . '/js/script.js', array(), '1.0.0', true);
} }
add_action('wp_enqueue_scripts', 'wp_theme_sen2_scripts'); add_action('wp_enqueue_scripts', 'wp_theme_sen2_scripts');
// Custom Post Type pour Portfolio // Personnalisation du slogan
function wp_theme_sen2_custom_post_type() {
register_post_type('portfolio', array(
'labels' => array(
'name' => __('Portfolio', 'wp-theme-sen2'),
'singular_name' => __('Projet', 'wp-theme-sen2')
),
'public' => true,
'has_archive' => true,
'supports' => array('title', 'editor', 'thumbnail'),
'rewrite' => array('slug' => 'portfolio'),
));
}
add_action('init', 'wp_theme_sen2_custom_post_type');
// Personnalisation du slogan via Customizer
function wp_theme_sen2_customize_register($wp_customize) { function wp_theme_sen2_customize_register($wp_customize) {
$wp_customize->add_section('wp_theme_sen2_slogan_section', array( $wp_customize->add_section('wp_theme_sen2_slogan_section', array(
'title' => __('Slogan du site', 'wp-theme-sen2'), 'title' => __('Slogan du site', 'wp-theme-sen2'),
@@ -62,4 +42,10 @@ function wp_theme_sen2_customize_register($wp_customize) {
)); ));
} }
add_action('customize_register', 'wp_theme_sen2_customize_register'); add_action('customize_register', 'wp_theme_sen2_customize_register');
// Supprimer le footer TurnKey Linux
function remove_turnkey_footer() {
remove_action('wp_footer', 'turnkey_footer_credit');
}
add_action('init', 'remove_turnkey_footer');
?> ?>
+39 -25
View File
@@ -3,37 +3,51 @@
<head> <head>
<meta charset="<?php bloginfo('charset'); ?>"> <meta charset="<?php bloginfo('charset'); ?>">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600&display=swap" rel="stylesheet"> <link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">
<?php wp_head(); ?> <?php wp_head(); ?>
</head> </head>
<body <?php body_class(); ?>> <body <?php body_class(); ?>>
<div class="site-container"> <div class="site-wrapper">
<!-- Menu latéral gauche --> <!-- Menu horizontal en haut -->
<aside class="sidebar"> <nav class="main-navigation">
<nav class="sidebar-navigation"> <?php
<?php wp_nav_menu(array(
wp_nav_menu(array( 'theme_location' => 'primary',
'theme_location' => 'sidebar', 'container' => false,
'container' => false, 'fallback_cb' => false,
'fallback_cb' => false, 'depth' => 1
'depth' => 1 ));
)); ?>
?> </nav>
</nav>
</aside>
<!-- Contenu principal --> <div class="site-container">
<div class="main-content"> <!-- Menu latéral gauche -->
<header class="site-header"> <aside class="sidebar">
<div class="site-branding"> <div class="sidebar-header">
<h1 class="site-title"> <h2 class="site-author"><?php bloginfo('name'); ?></h2>
<a href="<?php echo home_url(); ?>"><?php bloginfo('name'); ?></a>
</h1>
<?php if (get_theme_mod('wp_theme_sen2_show_slogan', true)) : ?> <?php if (get_theme_mod('wp_theme_sen2_show_slogan', true)) : ?>
<span class="site-slogan"><?php echo esc_html(get_theme_mod('wp_theme_sen2_slogan', 'Moins de bruit, plus d\'âme.')); ?></span> <p class="site-slogan"><?php echo esc_html(get_theme_mod('wp_theme_sen2_slogan', 'Moins de bruit, plus d\'âme.')); ?></p>
<?php endif; ?> <?php endif; ?>
</div> </div>
</header>
<main class="site-main"> <nav class="sidebar-navigation">
<?php
wp_nav_menu(array(
'theme_location' => 'sidebar',
'container' => false,
'fallback_cb' => false,
'depth' => 1
));
?>
</nav>
<div class="sidebar-footer">
<a href="#" class="instagram-icon"><i class="fab fa-instagram"></i></a>
<p class="copyright">&copy; <?php echo date('Y'); ?> <?php bloginfo('name'); ?></p>
</div>
</aside>
<!-- Contenu principal -->
<div class="main-content">
<main class="site-main">
+108 -62
View File
@@ -1,15 +1,15 @@
/* /*
Theme Name: WP Theme SEN2 Theme Name: WP Theme SEN2
Version: 1.4.0 Version: 1.5.0
*/ */
/* Réinitialisation et base */
:root { :root {
--primary-color: #3498DB; --primary-color: #2C3E50;
--secondary-color: #2C3E50; --secondary-color: #3498DB;
--text-color: #333333; --text-color: #333333;
--light-gray: #F9F9F9; --light-gray: #F9F9F9;
--medium-gray: #E0E0E0; --medium-gray: #E0E0E0;
--dark-gray: #7F8C8D;
} }
body { body {
@@ -22,59 +22,94 @@ body {
} }
/* Structure globale */ /* Structure globale */
.site-container { .site-wrapper {
display: grid;
grid-template-columns: 200px 1fr;
min-height: 100vh; min-height: 100vh;
display: flex;
flex-direction: column;
}
.site-container {
display: flex;
flex: 1;
} }
.sidebar { .sidebar {
background-color: #FFFFFF; width: 250px;
padding: 20px 0; background-color: white;
padding: 30px 20px;
position: fixed; position: fixed;
left: 0; left: 0;
top: 0; top: 60px; /* Espace pour le menu horizontal */
bottom: 0; bottom: 0;
width: 200px; overflow-y: auto;
z-index: 100;
border-right: 1px solid var(--medium-gray); border-right: 1px solid var(--medium-gray);
z-index: 10;
} }
.main-content { .main-content {
margin-left: 200px; margin-left: 250px; /* Même largeur que le sidebar */
padding: 20px; flex: 1;
padding: 30px;
} }
.site-header { .main-navigation {
text-align: center; position: fixed;
padding: 20px 0; top: 0;
left: 0;
right: 0;
background-color: white;
padding: 15px 0;
border-bottom: 1px solid var(--medium-gray); border-bottom: 1px solid var(--medium-gray);
margin-bottom: 30px; z-index: 20;
} }
.site-title { .main-navigation ul {
list-style: none;
margin: 0; margin: 0;
font-size: 28px; padding: 0;
display: flex;
justify-content: center;
gap: 30px;
flex-wrap: wrap;
}
.main-navigation a {
color: var(--primary-color);
text-decoration: none;
font-weight: 600; font-weight: 600;
font-size: 16px;
text-transform: uppercase;
letter-spacing: 0.5px;
transition: color 0.3s ease;
}
.main-navigation a:hover {
color: var(--secondary-color); color: var(--secondary-color);
} }
.site-title a { .sidebar-header {
text-decoration: none; margin-bottom: 30px;
color: inherit; text-align: center;
}
.site-author {
margin: 0;
font-size: 24px;
font-weight: 700;
color: var(--primary-color);
} }
.site-slogan { .site-slogan {
display: block; margin: 10px 0 0;
font-size: 14px;
font-weight: 300; font-weight: 300;
font-size: 16px; color: var(--dark-gray);
color: #7F8C8D; font-style: italic;
margin-top: 10px;
} }
/* Menu latéral */ /* Menu latéral */
.sidebar-navigation { .sidebar-navigation {
padding: 0 20px; margin-bottom: 30px;
} }
.sidebar-navigation ul { .sidebar-navigation ul {
@@ -84,67 +119,78 @@ body {
} }
.sidebar-navigation li { .sidebar-navigation li {
margin-bottom: 10px; margin-bottom: 15px;
} }
.sidebar-navigation a { .sidebar-navigation a {
display: block;
color: var(--text-color); color: var(--text-color);
text-decoration: none; text-decoration: none;
padding: 8px 15px; font-weight: 500;
border-radius: 4px; font-size: 16px;
transition: all 0.3s ease; display: block;
padding: 5px 0;
border-bottom: 1px solid var(--medium-gray);
transition: color 0.3s ease;
} }
.sidebar-navigation a:hover, .sidebar-navigation a:hover {
.sidebar-navigation .current-menu-item a { color: var(--secondary-color);
background-color: var(--primary-color); }
color: white;
/* Footer dans le sidebar */
.sidebar-footer {
margin-top: auto;
text-align: center;
padding-top: 20px;
border-top: 1px solid var(--medium-gray);
}
.instagram-icon {
color: var(--primary-color);
font-size: 20px;
margin-bottom: 10px;
display: block;
}
.copyright {
margin: 0;
font-size: 12px;
color: var(--dark-gray);
}
/* Contenu principal */
.site-main {
padding: 20px 0;
} }
/* Responsive */ /* Responsive */
@media (max-width: 768px) { @media (max-width: 768px) {
.site-container { .site-container {
grid-template-columns: 1fr; flex-direction: column;
} }
.sidebar { .sidebar {
position: relative; position: relative;
width: 100%; width: 100%;
top: 60px;
border-right: none; border-right: none;
border-bottom: 1px solid var(--medium-gray); border-bottom: 1px solid var(--medium-gray);
} }
.main-content { .main-content {
margin-left: 0; margin-left: 0;
padding: 20px;
} }
.sidebar-navigation ul { .main-navigation ul {
display: flex; flex-direction: column;
justify-content: center; gap: 15px;
gap: 20px; text-align: center;
padding: 0;
}
.sidebar-navigation li {
margin-bottom: 0;
} }
} }
/* Galerie et contenu */ /* Galerie */
.site-main {
padding: 20px 0;
}
.envira-gallery-wrap { .envira-gallery-wrap {
margin-left: 0; /* Alignement avec le menu latéral */ margin: 0;
} padding: 0;
/* Footer */
.site-footer {
background-color: var(--light-gray);
padding: 30px 0;
text-align: center;
border-top: 1px solid var(--medium-gray);
margin-top: 40px;
} }