carhop__dynamiques-theme__P.../includes/init.php

163 lines
4.7 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/* ----------------------------------------------------------------
##### Theme setup.
------------------------------------------------------------------*/
function dynamiques_setup()
{
// ##### Setup 🡒 Navigation
// register_nav_menus(
// array(
// 'dynamiques-menu' => __('Dynamiques Menu', 'dynamiques'),
// )
// );
// ##### Setup 🡒 Ajout des themes supports
add_theme_support(
'html5',
array(
'search-form',
'comment-form',
'comment-list',
'gallery',
'caption',
)
);
add_theme_support('title-tag');
add_theme_support('custom-logo');
add_theme_support('post-thumbnails');
add_theme_support('align-wide');
add_theme_support('wp-block-styles');
add_theme_support('editor-styles');
add_editor_style('css/editor-style.css');
add_theme_support('widgets');
// add_post_type_support( 'page', 'excerpt' );
}
add_action('after_setup_theme', 'dynamiques_setup');
// ##### Menu Walker
// if (!function_exists('register_navwalker')) :
// function register_navwalker() {
// require('includes/navwalker.php');
// }
// endif;
// add_action('after_setup_theme', 'register_navwalker');
/* ----------------------------------------------------------------
##### Enqueue Theme assets 🡒 Front
------------------------------------------------------------------*/
function dynamiques_enqueue_scripts()
{
$theme = wp_get_theme();
// Enqueue parent theme styles
$parent_style = get_template_directory_uri() . '/css/app.css';
if (file_exists(get_template_directory() . '/css/app.css')) {
wp_enqueue_style('parent-style', $parent_style, array(), $theme->get('Version'));
}
wp_enqueue_script_module('carhop-js', get_template_directory_uri() . '/js/app.js', array(), $theme->get('Version'));
// Enqueue child theme styles
wp_enqueue_style('carhop-main-css', dynamiques_asset('css/app.css'), array('parent-style'), $theme->get('Version'));
wp_enqueue_script('carhop-main-js', dynamiques_asset('js/app.js'), array(), $theme->get('Version'));
}
/* ----------------------------------------------------------------
##### Enqueue Theme assets 🡒 Back
------------------------------------------------------------------*/
function dynamiques_enqueue_gutenberg_back_styles()
{
$theme = wp_get_theme();
$parent_style = get_template_directory_uri() . '/css/app.css';
if (file_exists(get_template_directory() . '/css/app.css')) {
wp_enqueue_style('parent-style', $parent_style, array(), $theme->get('Version'));
}
wp_enqueue_style('tailpress_back', dynamiques_asset('css/app.css'), array('parent-style'));
}
add_action('enqueue_block_editor_assets', 'dynamiques_enqueue_gutenberg_back_styles');
add_action('wp_enqueue_scripts', 'dynamiques_enqueue_scripts');
/* ----------------------------------------------------------------
##### Get assets path
------------------------------------------------------------------*/
function dynamiques_asset($path)
{
if (wp_get_environment_type() === 'production') {
return get_stylesheet_directory_uri() . '/' . $path;
}
return add_query_arg('time', time(), get_stylesheet_directory_uri() . '/' . $path);
}
/* ----------------------------------------------------------------
##### Adds option 'li_class' to 'wp_nav_menu
------------------------------------------------------------------*/
function dynamiques_nav_menu_add_li_class($classes, $item, $args, $depth)
{
if (isset($args->li_class)) {
$classes[] = $args->li_class;
}
if (isset($args->{"li_class_$depth"})) {
$classes[] = $args->{"li_class_$depth"};
}
return $classes;
}
add_filter('nav_menu_css_class', 'dynamiques_nav_menu_add_li_class', 10, 4);
/* ----------------------------------------------------------------
##### Adds option 'submenu_class' to 'wp_nav_menu'
------------------------------------------------------------------*/
function dynamiques_nav_menu_add_submenu_class($classes, $args, $depth)
{
if (isset($args->submenu_class)) {
$classes[] = $args->submenu_class;
}
if (isset($args->{"submenu_class_$depth"})) {
$classes[] = $args->{"submenu_class_$depth"};
}
return $classes;
}
add_filter('nav_menu_submenu_css_class', 'dynamiques_nav_menu_add_submenu_class', 10, 3);
add_action('admin_init', function () {
$page_id_cible = 47; // Remplace 42 par lID réel de ta page
$screen = get_current_screen();
if (is_admin() && isset($_GET['post']) && (int) $_GET['post'] === $page_id_cible) {
remove_post_type_support('page', 'editor');
remove_post_type_support('page', 'thumbnail');
remove_post_type_support('page', 'excerpt');
remove_post_type_support('page', 'custom-fields'); // optionnel
}
});