Sanitizer
Date de création : 2021/06/14 12:31
Il peux être parfois nécessaire de sanitizer des listes de mots et pour cela Wordpress à déja des fonctions étudiées pour.
Grace à ce plugin il est possible de se service de wordpress pour le faire de manière plus rapide que ligne par ligne ou à la main.
installation
Pour installer Sanitizer il faut télécharger le fichier puis dans wordpress ajouter une extensions.
En haute de la page cliquer sur Téléverser une extension et choisir le fichier ZIP. enfin il ne reste plus qu'a l'activer.
Si l'installation ne fonctionne pas il faudra déposer directement le fichier sanitizer.php dans votre dossier wp-contents.
📦wordpress ┣ 📂wp-contents ┃ ┣ 📂plugins ┃ ┃ ┗ 📜sanitizer.php
ensuite dans le menu activer et un nouveau choix apparaît :
il suffit de clique dessus pour accéder au plugin :
voila bonne Sanitization.
<?php /** * @package Sanitize * @version 1.0.0 */ /* Plugin Name: Sanitize Plugin URI: http://wiki.johnben.fr/doku.php?id=informatique:programmation:wordpress:plugin:sanitizer Description: sanitization de mots. Author: John Ben Version: 1.0.0 Author URI: http://johnben.ch/ */ add_action( 'admin_menu', 'menuSanitize' ); function menuSanitize (){ add_menu_page( 'Sanitizer', 'Sanitizer', 'manage_options', 'sanitize_Plugin', 'my_plugin_options' ); } add_action( 'wp_enqueue_scripts','stylesSanitizer'); function stylesSanitizer() { wp_register_style('sanitizer', plugins_url('sanitizer/style.css')); wp_enqueue_style('sanitizer'); } function my_plugin_options() { // control option manager ok if ( !current_user_can( 'manage_options' ) ) { wp_die( __( 'You do not have sufficient permissions to access this page.' ) ); } echo '<div class="wrap">'; echo '<h1> Sanitizer </h1>'; echo '<p>Coller ici le texte à Sanitizer.</p>'; echo '</div>'; ?> <form action="#" method="post"> <textarea name="texte" type="textarea" rows=10 cols=100 require></textarea> <h2>Réglage d'entrée</h2> <h2>Séparateur de mots</h2> <div> <input type="radio" id="virgule" name="inputSeparateur" value="," checked> <label for="virgule"> ,</label> </div> <div> <input type="radio" id="pointVirgule" name="inputSeparateur" value=";"> <label for="pointVirgule"> ;</label> </div> <div> <input type="radio" id="point" name="inputSeparateur" value="."> <label for="point"> .</label> </div> <h2>Choix du délimiteur de mots</h2> <div> <input type="radio" id="guillemet" name="inputDelimite" value='"' checked> <label for="guillemet">"maValeur"</label> </div> <div> <input type="radio" id="apostrophe" name="inputDelimite" value="'"> <label for="apostrophe">'maValeur'</label> </div> <div> <input type="radio" id="rien" name="inputDelimite" value=''> <label for="guillemet"></label> </div> <h2>Selection du mode de Sanitization :</h2> <div> <input type="radio" id="Sanitize_title" name="ouputMode" value="Sanitize_title" checked> <label for="Sanitize_title">Titre => http-lien-com-et-text-pour-voir</label> </div> <div> <input type="radio" id="sanitize_file_name" name="ouputMode" value="sanitize_file_name"> <label for="sanitize_file_name"> Nom de Fichier => lien.com-et-Text-pOur-voir</label> </div> <div> <input type="radio" id="sanitize_key" name="ouputMode" value="sanitize_key"> <label for="sanitize_key">Clé => liencomettextpourvoir</label> </div> <div> <input type="radio" id="sanitize_text_field" name="ouputMode" value="sanitize_text_field"> <label for="sanitize_text_field"> Champ de Text => http://lien.com et text pour voir</label> </div> <h2>Choix du séparateur de mots</h2> <div> <input type="radio" id="pointVirgule" name="ouputSeparateur" value=";" checked> <label for="pointVirgule"> ;</label> </div> <div> <input type="radio" id="virgule" name="ouputSeparateur" value=","> <label for="virgule"> ,</label> </div> <div> <input type="radio" id="point" name="ouputSeparateur" value="."> <label for="point"> .</label> </div> <h2>Choix du délimiteur de mots</h2> <div> <input type="radio" id="guillemet" name="ouputDelimite" value='"' checked> <label for="guillemet">"maValeur"</label> </div> <div> <input type="radio" id="apostrophe" name="ouputDelimite" value="'"> <label for="apostrophe">'maValeur'</label> </div> <div> <input type="radio" id="rien" name="ouputDelimite" value=''> <label for="guillemet"></label> </div> <br> <input type="hidden" name="formaction" value="default" /> <p><input type="submit" value="OK" name="submit"></p> </form> <?php if(isset($_POST['submit'])) { sanitize($_POST['texte'], $_POST['inputSeparateur'],$_POST['inputDelimite'], $_POST['ouputMode'], $_POST['ouputSeparateur'], $_POST['ouputDelimite']); } } function sanitize($post) { if (empty($post)) { echo 'Pas de mots à convertir !'; exit; } $result [] = $post; for ($i=0; $i < count($result); $i++) { $tableauDeMots = explode($_POST['inputSeparateur'].$_POST['inputDelimite'], $result[$i]); } // Message d'information. echo "Il y a : " . count($tableauDeMots) . " mots au format : " . stripslashes($_POST['ouputDelimite']) . "monMots" . stripslashes($_POST['ouputDelimite']) . $_POST['ouputSeparateur'] ."<br>"; // Sanitize chaque mots du tableau for ($i=0 ; $i < count($tableauDeMots); $i++) { $tableauDeMotsSanitize [] = $_POST['ouputMode']($tableauDeMots[$i]); } // Affiche tout les mots du tableau dans un TextArea ?><textarea name="texte" type="textarea" cols="100" rows="10"><?php //echo implode($_POST['ouputSeparateur'], $tableauDeMotsSanitize); for ($i=0; $i < count($tableauDeMotsSanitize); $i++) { // Mise en forme // stripcslashes supprime le back slash devant " ou ' echo stripslashes($_POST['ouputDelimite']); echo $tableauDeMotsSanitize[$i] ; echo stripslashes($_POST['ouputDelimite']); // pour enlever la derniere séparation if ($i < count($tableauDeMotsSanitize)-1) { echo $_POST['ouputSeparateur']; } } ?></textarea><?php }
Page dans la catégorie: