Bonjour,
dans le cadre d'un test je dois implémenter un plugin wordpress permettant d'avoir dans le back office un menu "Analytics" permettant d'ajouter sur le front un code de tracking script/js qui se placera soit dans le header soit dans le footer selon un selecteur.
Je vous montre l'image pour voir à quoi ça ressemble :
J'ai jusqu'à présent réussi à implémenter le menu et son contenu :
wp-content/themes/customizr-enfant/function.php
PHP
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 add_action('admin_menu', 'my_analytics'); function my_analytics() { add_menu_page('Analytics', 'Analytics', 'administrator', 'analytics.php', '', 'images/generic.png', 50); }
wp-admin/analytics.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 <?php require_once('admin.php'); include_once('./admin-header.php'); ?> <div class="wrap nosubsub"> <?php screen_icon('edit'); ?> <h2><?php echo esc_html($title); ?></h2> <br /> <form> <div> <label for="select">Select</label> <select> <option id="header" value="header">Header</option> <option id="footer" value="footer">Footer</option> </select> </div> <div> <label for="code">Code</label> <textarea name="code" id="" cols="100" rows="3"></textarea> </div> <button">Click me</button> </form> </> <?php include('./admin-footer.php');
Jusque la tout va bien mais maintenant je dois envoyer un code de tracking en choisissant un selecteur. J'ai créé un champ textarea mais comment faire pour que ce champ puisse accepter et lire des balises de scripts ?
Quel action je dois spécifier dans mon formulaire pour traiter les données ?
Aussi, j'ai vu qu'il existait la fonction wp_enqueue_script() mais je ne sais pas si c'est indispensable pour moi içi :s
Je pense qu'il faudra également que j'écrive du javascript pour écrire une condition en fonction du sélecteur choisi. Ou est-ce que j'écris le javascript ? sur le function.php de mon thème enfant, à l'intérieur de la balise <script> ... </script> ?
Merci pour votre aide !
Partager