Traduction avec le widget microsoft

Eléphanteau du PHP | 39 Messages

09 févr. 2016, 17:51

Bonjour à tous

Je me présente, je ne suis pas un kador en PHP, mais à 76 ans j'essaye encore de me tenir au courant cela m'évite de vieillir et ça fait marcher les neurones ceci m'a permis de mettre un site sur le Web en 1996 www.histoirdefrance.fr
Ce site est construit en frames, mais avec un menu en PHP, mon problème est celui ci
je voudrais ajouter le widget de microsoft pour que les utilisateurs encore nombreux puissent traduire
directement mes pages. J'ai mis le widget sur ma page centrale ça fonctionne mais quand j'ouvre un répertoire de mon menu PHP pour afficher une rubrique......... le widget disparaît.... c'est normal
(je ne peux pas me résoudre à ajouter ce script sur toutes mes pages plus de trois mille)
Merci pour votre aide
Cordialement

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8464 Messages

10 févr. 2016, 20:59

Bonjour et bienvenue sur PHPfrance,

Malheureusement, l'outil de traduction de Microsoft ne peut pas traduire les sites avec des frames, sauf à intégrer leur widget directement dans chaque page HTML.
Vu que tu as 3000 pages HTML, effectivement il n'est pas envisageable de le faire à la main, en revanche, il doit être possible de faire un script PHP qui va traiter toutes tes pages HTML pour intégrer le code du widget par exemple juste avant la balise </body> qui est normalement présente dans toutes tes pages HTML.


Ou sinon une autre approche, peut être d'intégrer l'outil de Google qui lui traduit dans les frames :
https://translate.google.com/translate? ... edit-text=
En revanche, j'ai l'impression qu'il bloque le fonctionnement de ton menu, mais il doit être possible de corriger cela.
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 39 Messages

10 févr. 2016, 21:59

Bonsoir Arthur

D'abord merci pour m'avoir répondu. Je tiens à ce site c’était mon épouse qui l'avait écrit, et je m'étais contenté de le mettre sur le net. J'ai commencé à mettre le script de google, sur chaque page, ça fonctionne mais c'est long (3000 pages)
En ce qui concerne le script PHP pas question d'y penser, comme je le dis dans mon précédent message je suis nul en PHP
Mon menu déroulant est un menu trouvé sur le net "treemenu11"
Je pense que le mieux est d'intégrer l'outil google, je peux te dire que j'ai essayé ça fonctionne sur une page, mais je n'ai pas trouvé le moyen de traduire toutes les frames .
En ce concerne le menu de droite c'est un éphéméride écrit en txt et le moteur de recherche interne de google si il n'y a que cela qui gêne je le supprimerais.
Encore merci
Cordialement

Eléphanteau du PHP | 39 Messages

10 févr. 2016, 22:10

Bonsoir Arthur

Toutes mes excuses , mais l'éphéméride est un fichier javascript
Cordialement

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8464 Messages

11 févr. 2016, 02:16

Mon idée pour la solution de Google n'était pas que tu l'insère sur chaque page mais simplement via un bouton sur ton iframe du menu ou du haut par exemple et que ça traduise directement toutes tes pages.

Ma remarque concernant le menu (de gauche), c'était car j'ai l'impression que lorsqu'on traduit une page avec Google le menu ne fonctionne plus quand on veut déplier un dossier.
En ce qui concerne le script PHP pas question d'y penser, comme je le dis dans mon précédent message je suis nul en PHP
Si ça t'intéresse d'apprendre à le faire, on peut t'aider :)
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 39 Messages

11 févr. 2016, 09:31

Bonjour Arthur

Je veux bien apprendre à faire ce script PHP, ce sera plus facile car je crois qu'avec Google je vais avoir des problèmes
Merci de me l'avoir proposé, mais je répète je suis nul en PHP
Cordialement

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8464 Messages

11 févr. 2016, 15:49

Alors la première étape, c'est d'avoir un serveur PHP en local sur ton ordinateur pour pouvoir tester tes développements.
Par exemple WampServer est un bon point de départ : http://www.wampserver.com

Ensuite et c'est la règle n°1 en informatique, fait une sauvegarde complète de de ton site, afin de toujours pouvoir revenir à une version + ancienne en cas d'erreur.

Puis l'objectif est de développer un script PHP qui va ouvrir tous tes fichiers *.html un par un et insérer le code que tu veux dedans.
On va faire ça en 3 étapes :
1) Lister tous les fichiers d'un répertoire (et éventuellement de ses sous-répertoires) et afficher leurs noms
2) Ouvrir un fichier et injecter un code dedans
3) Fusionner les 2 scripts des étapes 1 et 2.

Pour le 1) tu auras besoin de la fonction glob() de PHP.
Regarde l'exemple dans la documentation, il fait normalement ce qu'on veut à savoir lister tous les fichiers d'une certaine extension :
http://fr.php.net/glob

Si tes fichiers sont aussi dans des sous-répertoires, alors il faudra rendre cette fonction récursive et un gentil utilisateur a posté le code d'une fonction appelée glob_recursive()


Dis moi quand le 1) fonctionnera et on pourra passer à l'étape 2 :)
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 39 Messages

11 févr. 2016, 16:40

Bonjour Arthur

Merci de m'aider pour le PHP en local, mon site est sur une clé USB et fonctionne avec Miniguppy est-ce que ça va ?
Dans mon menu déroulant, il y a un fichier demomenu.txt qui comporte toutes les adresses URL de mon site
Voici un exemple du début de mon menu
.Accueil|about.html|main
.A propos du site|../../divers/introduction.htm|main
.La Chronologie|../../divers/chronologie_des_rois_et_des_presidents.htm|main
.La Préhistoire|../../histoire/la prehistoire_1.htm|main
.La Gaule|../../histoire/vercingetorix.htm|main
.La Gaule romaine|../../histoire/la_gaule_romaine.htm|main
.Les invasions|../../histoire/les_grandes_invasions.htm|main
.Les Huns|../../histoire/invasion_des_huns.htm|main
.Histoire de France|../../accueil/introduction_sur_l'histoire_de_france.htm|main
..Chroniques royales|../../chroniques/chroniques.htm|main
...Les Capétiens|../../chroniques/capetiens/capeti.htm|main
....Louis 6|../../chroniques/capetiens/louis6/louis6.htm|main
....Louis 7|../../chroniques/capetiens/louis7/louis7-1.htm|main
....Philippe II|../../chroniques/capetiens/philippe-auguste/page1.htm|main
....Louis VIII|../../chroniques/capetiens/louis8/page1.htm|main
....Saint Louis|../../chroniques/capetiens/louis9/page1.htm|main
....Philippe III|../../chroniques/capetiens/philippe3/page1.htm|main
....Philippe IV|../../chroniques/capetiens/philippe4/page1.htm|main
....Louis X|../../chroniques/capetiens/louis10/page1.htm |main
....Philippe V|../../chroniques/capetiens/philippe5/page1.htm|main
....Charles IV|../../chroniques/capetiens/charles4/page1.htm|main
J'attends ta réponse avant de commencer

Eléphanteau du PHP | 39 Messages

11 févr. 2016, 17:20

J'avais oublié que je possède un fichier googlemap
Voici un exemple
<?xml version="1.0" encoding="utf-8"?>
<urlset xmlns="http://www.google.com/schemas/sitemap/0.84">
<url>
<loc>http://www.histoirdefrance.fr/</loc>
</url>
<url>
<loc>http://www.histoirdefrance.fr/ficphp/tr ... .html</loc>
</url>
<url>
<loc>http://www.histoirdefrance.fr/ficphp/tr ... .html</loc>
</url>
<url>
<loc>http://www.histoirdefrance.fr/ficphp/tr ... .html</loc>
</url>
<url>
<loc>http://www.histoirdefrance.fr/ficphp/tr ... .html</loc>
</url>
<url>
<loc>http://www.histoirdefrance.fr/accueil/arcadie.htm</loc>
</url>
<url>
<loc>http://www.histoirdefrance.fr/accueil/astro.htm</loc>
</url>
<url>
<loc>http://www.histoirdefrance.fr/accueil/b ... s.htm</loc>
</url>
<url>
<loc>http://www.histoirdefrance.fr/accueil/bourbons.htm</loc>
</url>
J'attends ta réponse pour commencer
Cordialement

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8464 Messages

11 févr. 2016, 19:11

Merci de m'aider pour le PHP en local, mon site est sur une clé USB et fonctionne avec Miniguppy est-ce que ça va ?
Oui, normalement ça ne devrait pas poser de problème.
Mais attention à bien faire une copie de sauvegarde ailleurs :)

Dans mon menu déroulant, il y a un fichier demomenu.txt qui comporte toutes les adresses URL de mon site
Le but est d'utiliser la fonction glob() en PHP pour refaire en quelque sorte cette même liste.

Donc crée un nouveau fichier par exemple modif_traduction.php et insères-y l'exemple 1 de la fonction glob() de la documentation : http://fr.php.net/glob
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 39 Messages

11 févr. 2016, 19:21

C'est fait le fichier modif_traduction.php est dans le répertoire de mon site

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8464 Messages

11 févr. 2016, 20:12

C'est fait le fichier modif_traduction.php est dans le répertoire de mon site
Et est-ce qu'il liste bien tous les fichiers html de ton site ?

Y compris ceux qui sont dans des sous-répertoires ?
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 39 Messages

11 févr. 2016, 20:37

Un petit soucis Arthur, où dois-je insérer le fichier sur ma clé guppy, et comment savoir si il liste bien tous mes fichiers
Excuse mon ignorance, mais même la clé USB avec mon site Guppy a été construite par Papinou sur le site miniguppy
je n'ai pas honte à mon âge d'avouer que je me débrouille grâce aux aides internet

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8464 Messages

12 févr. 2016, 10:23

Malheureusement je ne sais pas comment fonctionne miniguppy donc je ne pourrai pas trop te guider là dessus.

Sinon la solution est d'installer Wampserver sur ton ordinateur comme indiqué plus haut, ensuite il faudra créer un répertoire dans C:\wamp\www (par exemple histoirdefrance)
Et créer ton fichier modif_traduction.php dans le répertoire C:\wamp\www\histoirdefrance\

Ensuite pour l'exécuter, tu lances un navigateur internet à l'adresse :
http://localhost/histoirdefrance/modif_traduction.php
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 39 Messages

12 févr. 2016, 10:47

désolé ca me répond erreur 404 non trouvé
j'ai installé wampserver il a reconnu mon navigateur firefox, j'ai crée un repertoire siteweb dans www puis j'ai ajouté mon site ainsi que le fichier modif_traduction.php
quand je me rend dans firefox et que j'entre http://localhost/siteweb/modif_traduction.php
j'ai erreur 404