ezfcezfc
// Ferme la div avec la classe "rocky"
echo '';
}
return ob_get_clean(); // Récupère le contenu du tampon de sortie et le nettoie
}
// Enregistre le shortcode
add_shortcode('menu_mobile_shortcode', 'afficher_menu_mobile_shortcode');
// Ajoute une action pour placer le shortcode dans la div "et_pb_menu__wrap"
add_action('et_pb_menu__wrap', 'placer_menu_mobile_dans_et_pb_menu_wrap');
function placer_menu_mobile_dans_et_pb_menu_wrap() {
echo '
';
}
function remove_query_strings() {
if(!is_admin()) {
add_filter('script_loader_src', 'remove_query_strings_split', 15);
add_filter('style_loader_src', 'remove_query_strings_split', 15);
}
}
function remove_query_strings_split($src){
$output = preg_split("/(&ver|\?ver)/", $src);
return $output[0];
}
add_action('init', 'remove_query_strings');
function child_theme_enqueue_styles() {
// Enregistrement et mise en file d'attente de style2.css
wp_enqueue_style( 'child-theme-style2', get_stylesheet_directory_uri() . '/style2.css', array(), filemtime(get_stylesheet_directory() . '/style2.css') );
}
add_action( 'wp_enqueue_scripts', 'child_theme_enqueue_styles' );
function child_theme_enqueue_scripts() {
// Obtenir l'URI du répertoire du thème enfant
$child_theme_uri = get_stylesheet_directory_uri();
// Enregistrer le script
wp_register_script('fly-js', $child_theme_uri . '/fly.js', array(), false, true);
// Mettre le script en file d'attente pour qu'il soit chargé
wp_enqueue_script('fly-js');
}
// Ajouter l'action pour charger les scripts
add_action('wp_enqueue_scripts', 'child_theme_enqueue_scripts');
function check_current_product_stock_status() {
// Vérifie si on est sur une page produit et obtient l'ID du produit
if (is_product()) {
global $product;
// Si le produit est en rupture de stock, retourne une div avec le message
if (!$product->is_in_stock()) {
return '
Victime de son succès
';
}
}
// Ne rien retourner si le produit est en stock ou si nous ne sommes pas sur une page produit
return '';
}
// Enregistre le shortcode dans WordPress
add_shortcode('product_stock_status', 'check_current_product_stock_status');
function remove_version_from_scripts_and_styles($src) {
if (strpos($src, 'ver=')) {
$src = remove_query_arg('ver', $src);
}
return $src;
}
add_filter('script_loader_src', 'remove_version_from_scripts_and_styles', 15, 1);
add_filter('style_loader_src', 'remove_version_from_scripts_and_styles', 15, 1);
/**
* Filtre l'URL canonique pour les catégories, tags et pages produits pour enlever le slash à la fin.
*/
/**
* Ajuste la meta description pour la limiter à 160 caractères, en permettant de dépasser jusqu'au prochain point.
*/
function ajuster_meta_description_yoast($description) {
$longueur_max = 160;
// Si la description est plus longue que la longueur maximale
if (strlen($description) > $longueur_max) {
// Trouver la position du prochain point après 160 caractères
$position_prochain_point = strpos($description, '.', $longueur_max);
// Si un point a été trouvé après la position 160
if ($position_prochain_point !== false) {
// Couper la description au prochain point
$description = substr($description, 0, $position_prochain_point + 1);
} else {
// Si aucun point n'est trouvé après la position 160, couper à 160 caractères
$description = substr($description, 0, $longueur_max);
}
}
return $description;
}
add_filter('wpseo_metadesc', 'ajuster_meta_description_yoast', 10, 1);
function preload_image_on_homepage() {
if (is_front_page()) { // Vérifie si c'est la page d'accueil
echo '' . "\n";
}
}
add_action('wp_head', 'preload_image_on_homepage');
function wpr_increase_action_scheduler_concurrent_batches( $concurrent_batches ) {
return $concurrent_batches * 2;
}
add_filter( 'action_scheduler_queue_runner_concurrent_batches', 'wpr_increase_action_scheduler_concurrent_batches' );
function redirect_non_logged_in_users() {
// Vérifie si l'utilisateur n'est pas connecté et s'il essaie d'accéder à la page Mon Compte
if ( !is_user_logged_in() && is_page('mon-compte') ) {
// Redirige vers la page de connexion
wp_redirect( 'https://www.nosmokingclub.fr/se-connecter/' );
exit;
}
}
add_action( 'template_redirect', 'redirect_non_logged_in_users' );
add_action('my_custom_header_hook', function() {
wp_nav_menu([
'theme_location' => 'marcel',
]);
});
function custom_wpseo_metadesc($description) {
$max_length = 170; // Définit la longueur maximale souhaitée
// Vérifie si la description est plus longue que la longueur maximale autorisée
if (strlen($description) > $max_length) {
// Trouve la dernière occurrence d'un point dans la plage de caractères souhaitée
$last_period_pos = strrpos(substr($description, 0, $max_length), '.');
if ($last_period_pos !== false) {
// Tronque la description au dernier point trouvé
$description = substr($description, 0, $last_period_pos + 1);
} else {
// Si aucun point n'est trouvé, recherche le dernier espace pour éviter de couper en plein mot
$last_space_pos = strrpos(substr($description, 0, $max_length), ' ');
if ($last_space_pos !== false) {
$description = substr($description, 0, $last_space_pos);
} else {
// En dernier recours, tronque simplement à la longueur maximale
$description = substr($description, 0, $max_length);
}
}
}
return $description;
}
// Ajoute le filtre pour ajuster la meta description
add_filter('wpseo_metadesc', 'custom_wpseo_metadesc');
function limiter_titre_produit($title, $id = null) {
// On applique la modification seulement sur les pages d'archive, de catégorie, et de tags de produits
if ((is_archive() || is_product_category() || is_product_tag()) && get_post_type($id) === 'product') {
$mots = explode(' ', $title); // Sépare le titre en mots
if (count($mots) > 6) { // Si le titre contient plus de 5 mots
$title = implode(' ', array_slice($mots, 0, 6)) . '...'; // Limite à 5 mots et ajoute une ellipse
}
}
return $title;
}
// Ajoute le filtre au titre du produit
add_filter('the_title', 'limiter_titre_produit', 10, 2);
add_filter( 'woocommerce_get_image_size_gallery_thumbnail', function( $size ) {
return array(
'width' => 150,
'height' => 150,
'crop' => 1,
);
} );
function nsclub_remove_specific_script() {
if (is_page('nos-boutiques-vente-cigarette-electronique')) {
wp_dequeue_script('et-builder-modules-script-sticky');
}
}
add_action('wp_print_scripts', 'nsclub_remove_specific_script', 1000);
add_action('wp_footer', 'nsclub_remove_specific_script', 1);
add_filter('wp_img_tag_add_decoding_attr', '__return_false');
function add_defer_attribute_to_sticky_elements($tag, $handle) {
if ('sticky-elements' !== $handle) {
return $tag;
}
// Ajoute l'attribut defer à la balise script
return str_replace(' src', ' defer="defer" src', $tag);
}
add_filter('script_loader_tag', 'add_defer_attribute_to_sticky_elements', 10, 2);
function DV_deactive_jetpack() {
wp_dequeue_script( 'devicepx' );
wp_dequeue_script( 'woo-tracks' );
}
add_action( 'admin_enqueue_scripts', 'DV_deactive_jetpack' );
function add_custom_css_to_footer() {
echo '';
}
add_action('wp_footer', 'add_custom_css_to_footer');
function defer_polyfill_scripts($tag, $handle) {
// Liste des handles des scripts à mettre en defer
$scripts_to_defer = array('wp-polyfill', 'regenerator-runtime');
// Vérifie si le script en cours de traitement est dans la liste des scripts à mettre en defer
if (in_array($handle, $scripts_to_defer)) {
// Ajoute l'attribut defer à la balise du script
return str_replace(' src', fezff
add_filter( 'woocommerce_register_post_type_product', 'cinch_add_revision_support' );
function cinch_add_revision_support( $args ) {
$args['supports'][] = 'revisions';
return $args;
}
?>
Warning: Cannot modify header information - headers already sent by (output started at /home/nosmokingclub/public_html/wp-content/themes/Divi-Child/functions.php:1) in /home/nosmokingclub/public_html/wp-includes/pluggable.php on line 1435
Warning: Cannot modify header information - headers already sent by (output started at /home/nosmokingclub/public_html/wp-content/themes/Divi-Child/functions.php:1) in /home/nosmokingclub/public_html/wp-includes/pluggable.php on line 1438