Pourquoi des scripts js et css présents dans le répertoire ne sont pas trouvés.
Le code fonctionne en php sans wordpress mais pas avec cette derniere.Failed to load resource: the server responded with a status of 404 (Not Found)
Merci.
Pourquoi des scripts js et css présents dans le répertoire ne sont pas trouvés.
Le code fonctionne en php sans wordpress mais pas avec cette derniere.Failed to load resource: the server responded with a status of 404 (Not Found)
Merci.
Bonjour,
ça peut peut-être t'aider : https://woofrance.fr/comment-ajouter...son-wordpress/
Comment faire pour un lien
J'ai lu vite fait https://wpformation.com/ajouter-code...ipt-wordpress/. Ca a l'air de répondre à ton besoin. Notamment le plugin https://wordpress.org/plugins/simple-embed-code/
Et c'est moins imbuvable que le code que tu montres![]()
Comment utiliser l'appel ajax en sachant que j'ai une page enregistreritineraire sur wordpress
Le resultat est toujour alors qu'en php normal en appelant enregistreritineraire.php cela fonctionne ???
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
28
29
30 $.ajax({ type: "POST", url: "enregistreritineraire", <- page php exixtante et appelée enregistreritineraire dans wordpresse. cache : false, data: { depart: villedepart, arrive: villearrive, participation : participation, datedepart : datedepart, datearrive : datearrive, latDepart : departMarkerlatlng.lat(), longDepart : departMarkerlatlng.lng(), latArrive : arriveMarkerlatlng.lat(), longArrive : arriveMarkerlatlng.lng() }, dataType: "text", "success": function (data, textStatus, jqXHR) { console.log("L'appel Ajax est une réussite."); // alert("longArrive " + longArrive); $("#resultat").html("<p>L ajout a ete effectuer avec succes ! </p><br><p>Vous allez etre rediriger sur la liste des activite"); setTimeout(function() {$('#resultat').fadeOut(2000,traitement_callback("hello world"));document.location.href = 'indexdate'}, 3000); // $('#resultat').fadeOut(2000,traitement_callback("hello world")); }, "error": function (jqXHR, textStatus, errorThrown) { console.log("L'appel Ajax est un échec."); $("#resultat").html("<p>Erreur lors de la connexion...</p>"); } });
$("#resultat").html("<p>Erreur lors de la connexion...</p>");
J'ai pris le temps de lire mais Google me donne https://capitainewp.io/formations/de...ordpress-ajax/
Merci pour le lien mais je n'envois pas de formulaire, j'ai juste
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
28
29
30 $.ajax({ method: "POST", url: adminAjax, <====> que mettre là ? cache : false, data: { depart: villedepart, arrive: villearrive, participation : participation, datedepart : datedepart, datearrive : datearrive, latDepart : departMarkerlatlng.lat(), longDepart : departMarkerlatlng.lng(), latArrive : arriveMarkerlatlng.lat(), longArrive : arriveMarkerlatlng.lng() }, dataType: "text", "success": function (data, textStatus, jqXHR) { console.log("L'appel Ajax est une réussite."); // alert("longArrive " + longArrive); $("#resultat").html("<p>L ajout a ete effectuer avec succes ! </p><br><p>Vous allez etre rediriger sur la liste des activite"); setTimeout(function() {$('#resultat').fadeOut(2000,traitement_callback("hello world"));document.location.href = 'indexdate'}, 3000); // $('#resultat').fadeOut(2000,traitement_callback("hello world")); }, "error": function (jqXHR, textStatus, errorThrown) { console.log("L'appel Ajax est un échec."); $("#resultat").html("<p>Erreur lors de la connexion...</p>"); } });
D'apres https://stackoverflow.com/questions/...th-in-ajax-url
il faut dans functions
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 add_action('wp_ajax_enregistreritineraire', 'enregistreritineraire'); add_action('wp_ajax_nopriv_enregistreritineraire', 'enregistreritineraire'); function enregistreritineraire(){ // code à executé }Là il n'y a pas de success ni fail
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
28
29
30
31 $.ajax({ url: myAjax.ajaxurl, method: "POST", cache : false, data: { action: 'enregistreritineraire', depart: villedepart, arrive: villearrive, participation : participation, datedepart : datedepart, datearrive : datearrive, latDepart : departMarkerlatlng.lat(), longDepart : departMarkerlatlng.lng(), latArrive : arriveMarkerlatlng.lat(), longArrive : arriveMarkerlatlng.lng() }, dataType: "text", "success": function (data, textStatus, jqXHR) { console.log("L'appel Ajax est une réussite."); // alert("longArrive " + longArrive); $("#resultat").html("<p>L ajout a ete effectuer avec succes ! </p><br><p>Vous allez etre rediriger sur la liste des activite"); setTimeout(function() {$('#resultat').fadeOut(2000,traitement_callback("hello world"));document.location.href = 'indexdate'}, 3000); // $('#resultat').fadeOut(2000,traitement_callback("hello world")); }, "error": function (jqXHR, textStatus, errorThrown) { console.log("L'appel Ajax est un échec."); $("#resultat").html("<p>Erreur lors de la connexion...</p>"); } });
J'ai un peu modifier le code
Et l'appel du fichier dans functions.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
28
29
30
31
32
33
34
35
36
37
38
39
40if (villedepart&&villearrive&&participation&&datedepart&&datearrive) { var ajaxurl = '<?php echo admin_url('admin-ajax.php'); ?>'; $.ajax({ url: ajaxurl, method: "POST", cache : false, data: { action: 'enregistreritineraire', depart: villedepart, arrive: villearrive, participation : participation, datedepart : datedepart, datearrive : datearrive, latDepart : departMarkerlatlng.lat(), longDepart : departMarkerlatlng.lng(), latArrive : arriveMarkerlatlng.lat(), longArrive : arriveMarkerlatlng.lng() }, dataType: "text", "success": function (data, textStatus, jqXHR) { console.log("L'appel Ajax est une réussite."); // alert("longArrive " + longArrive); $("#resultat").html("<p>L ajout a ete effectuer avec succes ! </p><br><p>Vous allez etre rediriger sur la liste des activite"); setTimeout(function() {$('#resultat').fadeOut(2000,traitement_callback("hello world"));document.location.href = 'indexdate'}, 3000); // $('#resultat').fadeOut(2000,traitement_callback("hello world")); }, "error": function (jqXHR, textStatus, errorThrown) { console.log("L'appel Ajax est un échec."); $("#resultat").html("<p>Erreur lors de la connexion...</p>"); } }); } else {alert("Veuilliez saisir tout les champs");} }
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88 add_action('wp_ajax_enregistreritineraire', 'enregistreritineraire'); add_action('wp_ajax_nopriv_enregistreritineraire', 'enregistreritineraire'); function enregistreritineraire(){ // echo "fail"; if(isset($_POST["depart"], $_POST["arrive"],$_POST["participation"],$_POST["datedepart"], $_POST["datearrive"], $_POST["latDepart"], $_POST["longDepart"] , $_POST["latDepart"], $_POST["longArrive"])) { $lieuDepart = $_POST["depart"]; $lieuArrive = $_POST['arrive']; $participation = $_POST['participation']; // $lieuDepart = "Paris"; // $lieuArrive = "Bordeaux"; // $participation = "50.0"; $datedepart = $_POST['datedepart']; $datearrive = $_POST['datearrive']; $latDepart = $_POST["latDepart"]; $longDepart = $_POST["longDepart"]; $latArrive = $_POST["latArrive"]; $longArrive = $_POST["longArrive"]; try { $PDO = new PDO('mysql:host=localhost;dbname=philippe','root',''); $PDO->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING); $PDO->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_OBJ); $sql = "INSERT INTO trajet (depart, arrive, latDepart, longDepart, latArrive, longArrive) VALUES (:depart,:arrive,:latDepart, :longDepart, :latArrive, :longArrive)"; // $sql = "INSERT INTO trajet (depart, arrive) VALUES (:depart,:arrive)"; $req = $PDO->prepare($sql); $req->execute(array( "depart" => $lieuDepart, "arrive" => $lieuArrive, "latDepart" => $latDepart, "longDepart" => $longDepart, "latArrive" => $latArrive, "longArrive" => $longArrive )); $PDO = new PDO('mysql:host=localhost;dbname=philippe','root',''); $PDO->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING); $PDO->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_OBJ); $sql = "INSERT INTO orders (conducteur, lieudepart, lieuarrive, participation, datedepart, datearrive) VALUES (:conducteur,:lieudepart,:lieuarrive,:participation,:datedepart,:datearrive)"; // $sql = "INSERT INTO orders (conducteur, lieudepart, lieuarrive, participation) VALUES (:conducteur,:lieudepart,:lieuarrive,:participation)"; $req = $PDO->prepare($sql); $req->execute(array( "conducteur" => "anatta", "lieudepart" => $lieuDepart, "lieuarrive" => $lieuArrive, "participation" => $participation, "datedepart" => $datedepart, "datearrive" => $datearrive )); } catch(PDOException $e){ die("Erreur d'insertion :".$e->getMessage()); } } else {throw new Exception('Erreur '); echo "ERREUR";} }
Bonjour. J'ai l'arborescence suivant
javascripts/
jquery.js
J'essail de charger jquery de cette maniere.
MAIS LA CONSOLE indique
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <script type="text/javascript" src="javascripts/jquery.js"></script>Avez vous une idée ? MerciFailed to load resource: the server responded with a status of 404 (Not Found)
ou bien*
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 wp_register_script('bootstrap',THEME_ROOT.'/contact-form-fr/javascripts/jquery.js');
ou dans functions
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <script type="text/javascript" src="get_template_directory_uri() ./javascripts/jquery.js"></script>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 wp_register_script('bootstrap',get_template_directory_uri() ./javascripts/jquery.js');
Avec un plugin, peut-être (pas testé) : https://wordpress.org/plugins/custom-css-js/
Sur mon site de test, le thème est OceanWP qui embarque jQuery (c'est rare pour un thème)
JQUERY fait partie de manière native de WORDPRESS, depuis fort longtemps.
Il y a parfois un décalage de version avec la dernière version de JQUERY.
Son utilisation est "assez simple" pour les habitués de JS...
Un article anglais explique assez bien les procédures d'appel en particulier avec le raccourci "$".
https://wpengine.com/resources/jquery-wordpress/
Tu me l'apprends
Sur mon site de test, j'ai un thème enfant.
J'ai essayé de suivre les instructions de ton tuto en anglais.
Je te dis ce que j'ai fait, et merci de me dire si c'est correct.
1- Dans le répertoire du thème enfant (oceanwp-child), j'ai créé un sous-répertoire js.
2- Dans le répertoire js, j'ai mis un fichier script.js :3- Dans functions.php, j'ai ajouté
Code js : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $.noConflict(); jQuery(document).ready(function(){ jQuery("button").click(function(){ jQuery("p").text("jQuery is still working!"); }); });
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 /* Enter Compatibility Mode */ function my_theme_scripts() { wp_enqueue_script( 'my-great-script', get_template_directory_uri() . '/js/script.js', array( 'jquery' ), '1.0.0', true ); } add_action( 'wp_enqueue_scripts', 'my_theme_scripts' );
Voici mon code ajax.
Et dans functions.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
28
29
30
31 $.ajax({ url: ajaxurl, method: "POST", cache : false, data: { action: 'enregistreritineraire', depart: villedepart, arrive: villearrive, participation : participation, datedepart : datedepart, datearrive : datearrive, latDepart : departMarkerlatlng.lat(), longDepart : departMarkerlatlng.lng(), latArrive : arriveMarkerlatlng.lat(), longArrive : arriveMarkerlatlng.lng() }, dataType: "text", "success": function (data, textStatus, jqXHR) { console.log("L'appel Ajax est une réussite."); // alert("longArrive " + longArrive); $("#resultat").html("<p>L ajout a ete effectuer avec succes ! </p><br><p>Vous allez etre rediriger sur la liste des activite"); setTimeout(function() {$('#resultat').fadeOut(2000,traitement_callback("hello world"));document.location.href = 'indexdate'}, 3000); // $('#resultat').fadeOut(2000,traitement_callback("hello world")); }, "error": function (jqXHR, textStatus, errorThrown) { console.log("L'appel Ajax est un échec."); $("#resultat").html("<p>Erreur lors de la connexion...</p>"); } });
Il n'y a aucune réponse.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 include get_template_directory() . '/includes/enregistreritineraire.php'; add_action( 'wp_ajax_enregistreritineraire', 'enregistreritineraire' ); add_action('wp_ajax_nopriv_enregistreritineraire', 'enregistreritineraire');alors quand php normale l'enregistrement fonctionne
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 wp_register_script('bootstrap','https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js'); wp_register_script('bootstrap','https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js'); wp_register_script('bootstrap','http://openlayers.org/api/OpenLayers.js'); wp_register_script('bootstrap','https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js'); wp_register_script('bootstrap','https://getbootstrap.com/docs/5.2/examples/sign-in/'); wp_register_script('bootstrap','https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js'); wp_register_script('bootstrap','http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js'); wp_register_script('bootstrap',get_template_directory_uri().'/i18n/datepicker-fr.js'); wp_register_script('bootstrap',get_template_directory_uri().'/javascripts/jquery.simple-dtpicker.js'); wp_register_script('bootstrap',get_template_directory_uri().'/javascripts/jquery.googlemap.js'); wp_register_script('bootstrap',get_template_directory_uri().'/javascripts/jquery.js'); wp_register_script('bootstrap',get_template_directory_uri().'/jquery.googlemap.js'); wp_register_script('bootstrap',get_template_directory_uri().'/datepicker-fr.js'); wp_register_script('bootstrap',get_template_directory_uri().'/jquery.simple-dtpicker.js'); wp_register_script('bootstrap','https://cdn.jsdelivr.net/npm/bootstrap@5.2.2/dist/js/bootstrap.bundle.min.js'); wp_register_script('bootstrap','https://getbootstrap.com/docs/5.2/examples/sign-in/'); wp_register_script('bootstrap','"https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js"'); wp_register_script('bootstrap','https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js'); wp_enqueue_script('bootstrap');
Ton code me semble correct, mais j'essaierai celui-ci. Un point important si tu as des variables à passer est wp_localize_script...
dans functions.php appel de mes scripts:
Le script lui même:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 function asaScripts() { wp_enqueue_script( 'asaScripts', get_stylesheet_directory_uri() . '/scripts/ASAscript.js', array( 'jquery' ), '1.0', true );// array( 'jquery' signale à WP la necessité de charger jQuery pour ce script!! // Envoyer une variable de PHP à JS proprement wp_localize_script( 'asaScripts', 'ajaxurl', admin_url( 'admin-ajax.php' ) ); } add_action( 'wp_enqueue_scripts', 'asaScripts' );
Par la suite pour le débogage utiliser la console et le débogueur du navigateur, avec points d'arrêts.... comme d'habitude.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 / initialisation des variables var username=""; ..... //fin initialisation des variables des parcelles jQuery(document).ready(function($) { if (document.getElementById(...... ...
Espérant t'avoir été utile.
Merci
Mon code donne ça.
Je dois laiser les ces liens scr sinon la page de la carte ne fonctionne pas.
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 <meta charset="utf-8"> <script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/i18n/datepicker-fr.js"></script> <script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/javascripts/jquery.js"></script> <script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/javascripts/jquery.simple-dtpicker.js"></script> <script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/javascripts/jquery.googlemap.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="https://maps.googleapis.com/maps/api/js?key=&libraries=geometry&sensor=false"></script> <script src="http://openlayers.org/api/OpenLayers.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <!--Requirement jQuery--> <!--Load Script and Stylesheet --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css"> <link type="text/css" href="get_template_directory_uri()./javascripts/jquery.simple-dtpicker.css" rel="stylesheet" />
Le query
functions
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
28
29
30
31
32
33
34
35
36 jQuery('#enregistreritineraire').click(function () { $.ajax({ url: ajaxurl, method: "POST", cache : false, data: { action: 'enregistreritineraire', depart: villedepart, arrive: villearrive, participation : participation, datedepart : datedepart, datearrive : datearrive, latDepart : departMarkerlatlng.lat(), longDepart : departMarkerlatlng.lng(), latArrive : arriveMarkerlatlng.lat(), longArrive : arriveMarkerlatlng.lng() }, dataType: "text", "success": function (data, textStatus, jqXHR) { console.log("L'appel Ajax est une réussite."); // alert("longArrive " + longArrive); $("#resultat").html("<p>L ajout a ete effectuer avec succes ! </p><br><p>Vous allez etre rediriger sur la liste des activite"); setTimeout(function() {$('#resultat').fadeOut(2000,traitement_callback("hello world"));document.location.href = 'indexdate'}, 3000); // $('#resultat').fadeOut(2000,traitement_callback("hello world")); }, "error": function (jqXHR, textStatus, errorThrown) { console.log("L'appel Ajax est un échec."); $("#resultat").html("<p>Erreur lors de la connexion...</p>"); } }); }
Il n'y a aucun message.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ect.. include get_template_directory() . '/includes/enregistreritineraire.php'; ect..
Une idée?
Bonjour, de prime abord, dans ce code:
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 <script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/i18n/datepicker-fr.js"></script> <script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/javascripts/jquery.js"></script> <script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/javascripts/jquery.simple-dtpicker.js"></script> <script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/javascripts/jquery.googlemap.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="https://maps.googleapis.com/maps/api/js?key=&libraries=geometry&sensor=false"></script> <script src="http://openlayers.org/api/OpenLayers.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <!--Requirement jQuery--> <!--Load Script and Stylesheet --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css"> <link type="text/css" href="get_template_directory_uri()./javascripts/jquery.simple-dtpicker.css" rel="stylesheet" />
l'indispensable pour afficher une carte me semble être:
<script src="http://openlayers.org/api/OpenLayers.js"></script> sans oublier de charger le css correspondant.
En ne regardant que cette partie du code tu as 2 appels à la même librairie:
"https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js" et "https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"
Personnellement je commencerai par une carte simple à laquelle j'intégrerai progressivement tous les scripts, pour voir ce qui fonctionne et ce qui cloche.
Quand tu lances tes programmes utilise F12, pour voir ceux qui se chargent ou non.
Bon Courage.
C'est besogneux, mais je ne sais pas faire mieux...
Partager