Alors que je travaillais sur un nouveau thème WordPress premium pour Themeforest, j’avais des problèmes avec mon shortcode de tableau de prix car il continuait d’ajouter un espacement supplémentaire en raison des balises de paragraphe (p) vides qui étaient ajoutées automatiquement par WordPress. En cherchant un peu, j’ai trouvé une excellente solution sur le forum TF.
Nettoyer la fonction des codes courts de WordPress
Copiez et collez simplement le code suivant dans votre fichier functions.php ou partout où vous tenez vos shortcodes. Cette fonction nettoiera la sortie de vos shortcodes, ce qui est particulièrement important pour les shortcodes imbriqués.
if( !function_exists('wpex_fix_shortcodes') ) {
function wpex_fix_shortcodes($content){
$array = array (
'<p>[' => '[',
']</p>' => ']',
']<br />' => ']'
);
$content = strtr($content, $array);
return $content;
}
add_filter('the_content', 'wpex_fix_shortcodes');
}
Ce qu’il fait… Cette pièce récupère essentiellement tout le contenu de la publication avant sa sortie et remplace le code spécifique comme mentionné ci-dessous :
- Toutes les instances de
[
are replaced with [ – Removes opening paragraphs before shortcodes - All instances of ] sont remplacés par ] – Supprime les balises p de fermeture après les shortcodes
- Toutes les instances de ]
sont remplacés par ] – Supprime les pauses après les shortcodes