Avoir un Wordpress sur clef portable

Bonjour

Me servant essentiellement du blog et de l'envoi de fichier, je me suis inspiré de l'entbox pour créer une sorte d' entbox fonctionnant sur clef usb.
Il est basé sur xampp portable
Il comprend un wordpress dernière version 4.9.4 avec les modules H5p comme dans l'entbox configuré avec le theme unite et quelques ajouts ( editeur permettant l'insertion de tableaux et plugin permettant l'import massif de compte utilisateurs ) module spécial pour les ecoles primaires ( cf ab50 )
La clef usb permet une souplesse de fonctionnement qui évite que sons et images soient rattachées à une ip ou une machine hôte particulière .

A chaque démarrage de l'ent un script php avec une requête sql met à jour la nouvelle adresse ip dans tous les articles du blog ce qui fait que l'ent est réellement portable et copiable

Cela démarre en moins d'une minute
lancement du fichier setup xamp pour modification eventuelle (liée à l'attribution du lecteur de clef usb ) temps de résolution 10 secondes
lancement de xampp control 5 secondes
lancement apache et mysql à partir du xampp control 10 secondes
lancement du fichier avec le script php et la requete sql sur le navigateur de la machine hote ( 10 secondes )
Ensuite l'ent avec le wordpress est fonctionnel pour tout matériel connecté sur la même plage réseau

Une fois la séance terminée, on ferme apache mysql avec xamppcontrol que l'on ferme aussi ensuite et on éjecte proprement la clef en 20 sec
Quand on arrive dans une autre classe ou chez soi avec un autre ordinateur il suffit de brancher sa clef usb et de refaire la manip pour accéder à tout ce qu'ont déposé les élèves ...et de gérer le contenu comme si on gérait le blog.
Si cela intéresse quelqu'un, n'hésitez pas à me contacter

Alain
«1

Commentaires

  • Yep :) je suis vraiment tenté par le test sans installation de cet outil
    Quelles sont les conditions pour son obtention?
  • C'est là
    https://www.sfrcloud.sfr.fr/web/app/share/invite/Tc7JZ7WJhM
    Zip de 200 mégas
    une fois dézippé bien lire les fichier lisezmoi et webseveur.odt
    merci de me faire part de vos remarques
  • Merci, super! je vais faire une "installation" de test dans la semaine et je vous livre un retour d'expérience :)
  • Bonjour
    Voulant utiliser en demonstration l’ENTBOX.
    Pouvez-vous m’autoriser à télécharger votre version portable ?
    Je suis Enseignant en élémentaire et je fais prochainement des rencontres numériques basées sur l’ENTBOX.

    Merci d’avance
  • Bonjour, je suis enseignante en GS/CP et votre version portable m'intéresse beaucoup, mais le lien vers l'ien de Lannion est cassé.
  • Merci beaucoup.
  • Bonjour, votre application m'intéresse et je souhaiterais l'utiliser sur smartphone android, cela fonctionne sur une ip fixe seulement et je voudrais connaître votre script php avec requete sql pour mise à jour de l'adresse ip merci
  • edited June 2020
    Bonjour
    c'est bien sur un poste windows que vous installez le systeme ?
    Pour acceder à partir d'un smartphone, on peut y acceder quelque soit l'ip du poste windows.

    avec windows 10 on peut connecter jusqu'à 8 péripheriques (même sans reseau en classe ) à condition que le poste ait celui ci ait préalablement été connecté à un reseau wifi cela peut etre votre smartphone ...

    l'application penguin mysql testée dans un sujet n'est pas asse fiable pour être utilisée sur android

    Autrement
    le debut du script se trouve dans le fichier index de ab2/sl


    en gros cela se passe comme cela
    <?php
    error_reporting(E_ALL ^ E_NOTICE);
    header('Content-Type: text/html; charset=ISO-8859-1'); // écrase l'entête utf-8 envoyé par php
    ini_set( 'default_charset', 'ISO-8859-1' );

    $serveur = "localhost";
    $base = "wordpress";
    $user = "root";
    $pass = "";

    /*
    $mysqli est une nouvelle instance de la classe mysqli
    prédéfinie dans php et hérite donc de ses propriétés et méthodes
    connexion à la base de données
    */
    $mysqli = new mysqli($serveur, $user, $pass, $base);
    // si la connexion se fait en UTF-8, sinon ne rien indiquer
    $mysqli->set_charset("utf8");
    /*
    utilisation de la méthode connect_error
    qui renvoie un message d'erreur si la connexion échoue
    */
    if ($mysqli->connect_error) {
    die('Erreur de connexion ('.$mysqli->connect_errno.')'. $mysqli->connect_error);
    }
    else{
    $requete = "SELECT option_value FROM `wp_options` WHERE option_name=\"siteurl\" ";
    $resultat = $mysqli->query ($requete);
    $ligne = $resultat->fetch_assoc();
    // echo $ligne["option_value"] ;
    $ipancienne = $ligne["option_value"] ;

    $ipnew_Address = gethostbyname($_SERVER['REMOTE_ADRESS']);
    //echo $ipnew_Address;
    $ipnouvelle= "http://".$ipnew_Address."/wordpress";



    $mysqli->close();



    /*
    $mysqli est une nouvelle instance de la classe mysqli
    prédéfinie dans php et hérite donc de ses propriétés et méthodes
    connexion à la base de données
    */
    $mysqli1 = new mysqli($serveur, $user, $pass, $base);
    // si la connexion se fait en UTF-8, sinon ne rien indiquer
    $mysqli1->set_charset("utf8");
    /*
    utilisation de la méthode connect_error
    qui renvoie un message d'erreur si la connexion échoue
    */
    if ($mysqli1->connect_error) {
    die('Erreur de connexion ('.$mysqli1->connect_errno.')'. $mysqli1->connect_error);
    }

    $requete = "SELECT option_value FROM `wp_options` WHERE option_name=\"siteurl\" ";
    $resultat = $mysqli1->query ($requete);
    $ligne = $resultat->fetch_assoc();
    // echo $ligne["option_value"] ;
    $ipancienne = $ligne["option_value"] ;


    # Changer l'URL du site
    $req= "UPDATE `wp_options` SET `option_value` = '$ipnouvelle' WHERE `wp_options`.`option_id` = 1";
    #$req ="UPDATE wp_options SET option_value = replace(option_value,'$ipancienne', '$ipnouvelle') WHERE option_name = 'home' ; " ;
    $req0= "UPDATE `wp_options` SET `option_value` = '$ipnouvelle' WHERE `wp_options`.`option_id` = 2";

    $result= $mysqli1->query ($req);
    sleep(1);
    $result0= $mysqli1->query ($req0);
    sleep(1);

    $mysqli1->close();


    }
    //....
    ?>
    donc il faut que ipnouvelle soit votre ip fixe...
    normalerment le script la detecte grâce à la ligne $ipnew_Address = gethostbyname($_SERVER['REMOTE_ADRESS']);

    Alain
  • Merci pour ces infos, je vais regarder car je souhaites installer le système sur mon smartphone android, j'utilise l'appli "icode go", voici une video pour installer wordpress en local sur smartphone :
    Cela fonctionne bien, on peut également activer le point d'accès wifi du tel sans connexion internet et partager avec 8 périphériques, il suffirais donc de pouvoir injecter le script pour obtenir une portabilité et partager wordpress, j'ai essayé avec cela : https://wpfr.net/support/sujet/adresse-wp_home-et-wp_siteurl-changement-automatique/
    résultat à la fin du fichier wp-config.php, ca marche mais il manque le port :8080, je n'arrive pas à configurer !
    j'y suis presque...mais n'étant pas un expert...peut être que cela va être plus simple du coup pour vous, merci de me tenir au courant ! cela doit être possible...
  • Petite précision, j'utilise une partie de l'ENTBOX lite !! pour l’échange de fichiers vu ici http://entbox.ticedu.fr/forums/discussion/179/un-entbox-ultra-lite-sur-android
    pour partager wordpress il faut mettre l'ip fixe dans les réglages wordpress ! c'est cool mais il n'est pas portable ...
  • edited June 2020
    Bonsoir
    A mon avis il ne faut rien faire dans wp-config.php sauf si vous changez les prefixes de la base de donnees ou le nom de la base de donnees
    C'est dans la table wp-options que cela se passe et il faut utiliser buddy pour y acceder

    Je n'ai pas regarde le script mais cela me semble faisable si vous partez d'un wordpress vierge
    J'ai installe icode et icode web sur mon telephone portable en utilisant le rewau wifi de la maison
    Quand je demarre le serveur icode et les services php mysql , il me met sur la plage wifi de la box
    J'ai installé wordpress 5.4 sur le serveur avec l'installation en 5 min
    J'ai ensuite utilisé buddy l'equivalent de php myadmin pour aller voir les 2 premiers enregistremnts de wp_options
    Ils sont bien notes avec le port 192.168.1.94:8080 ma box est sur 192.168.1.1
    J'ai demarre le wordpress vierge et j'ai pu m'y connecter avec un autre peripherique
    J'ai ferme icode et je me suis deconnecte de mon reseau wifi
    J'ai active mon partage de connexion sans etre connecte a quoi que ce soit
    J'ai demarre le icode , la il m'indique une autre adresse reseau 192.168.43.1:8080
    Je vais sur budy et je modifie les 2 premiers enregistrements de wp_options en mettant la nouvelle adresse et le port 8080
    Je prends un autre peripherique et je me connecte au reseau créé par le partage de connexion sur 192.168.1.43:8080 et j'ai acces au wordpress
    Donc c'est possible

    Mais par contre la qualite du partage de connexion est faible et je n'ai pas reussi à importer mon systeme tout fait
    Si j'ai le temps je regarderai plus attentivement dans la semaine...
  • Bonjour,

    D'abord merci pour la qualité de votre recherche...
    En effet, il doit bien avoir un moyen pour que cela fonctionne, j'ai essayé d'injecter dans wp-config.php sans les "
    }
    //....
    ?>"
    à la fin...
    cela permet de conserver le port :8080, à chaque connexion cela fonctionne avec la bonne adresse sur le navigateur, mais j'ai la page blanche de wordpress ! erreur 500 !
    je vais donc regarder du coté de wp-options et buddy cette semaine...et je vous redis !
    Thierry
  • Bonjour,
    Je viens de trouver une alternative, tout d'abord à la première connexion sur le réseau wifi de la maison par exemple, je lance icode go puis dans les paramètres généraux de wordpress je mets mon adresse ip, j’enlève donc localhost pour 192.168.xx.xx:8080 puis j'enregistre

    je me déconnecte du réseau wifi de la maison puis active mon point wifi tel, et maintenant je lance icode go puis je rentre la valeur donnée de l'ip dans wp-options "les 2 premières lignes" et la cela fonctionne avec un wordpress complet ! quand je me connecte avec un autre périphérique.

    Quand je vérifie dans les réglage de wordpress j'ai bien le changement des url qui ont été effectuées alors quand laissant localhost de base dans les réglages de wordpress le changement ne se faisait pas même après avoir saisi les ip dans buddy.

    Je pense que c'est localhost de base qui en est la cause !

    Reste à trouver pour automatiser ce changement dans buddy a chaque lancement de icode go! et ce sera parfait !

    Thierry
  • edited June 2020
    Bonsoir
    J'ai regardé un peu plus...
    Je ne sais pas si le localhost de base est la cause
    Le problème n' apparait pas si au lieu de wordpress/ seul, tu rajoutes le fichier wp-login.php dans l'adresse.
    Concernant le script c'est un peu compliqué car autant sous windows la detection de l'ip locale est
    automatique en php, et que sous linux et raspberry, j'y arrive avec un script bash tout de suite aprés le lancement de apache ou nginx, autant là, sous android je cale.
    Le script sh qui marche sous linux m'est refusé par icode go..

    Dans mes essais j'ai fait un script en php qui marche avec une seule saisie manuelle de l'adresse ip donnée par icode go et qui evite d'aller dans buddy.
    Cela marche aussi sur l'adresse localhost cas où on n'a ni reseau wifi ni activation du partage de connexion (tablette standard non liée à un reseau )

    Le gros problème est que pour le moment je n'arrive pas à importer ma base de donnees qui contient toute la configuration avec h5p et limport des utilisateurs que cela soit avec des outils sql ou avec des plugins speciaux lies a wordpress ( duplicator)

    Pourtant cela me semble indispensable si l'on veut que l'utilisation d'un wordpress à vocation pedagogique sur android ait de l'avenir
    Une configuration totale à refaire systematiquement est beaucoup trop chronophage
    Demander plus que l'installation de icode et d'un wordpress avec une base de donnes preconfiguree un peu comme celle de l'entbox n'est pas realiste si on veut convaincre des collegues d'utiliser l'outil...
    Mais peut etre que des outils plus actuels que mon telephone wiko lenny 4 qui me sert pour experimenter et qui n'a qu'un giga de ram seraient capables d'importer avec buddy ou phpmyadmin ( que j'ai egalement installé en complement)
    Je testerai cela plus cet été ...
    Je peux t'envoyer le script que j'ai fait et qui t'evitera de rentrer dans buddy

  • Merci pour ces infos, oui en effet cela reste complexe, je continue à regarder avec l'export du web_serveur cle usb puis l'import dans le wordpress et plugin Wordpress Importer, en consultant le buddy j'ai bien importé les wp_h5p, 14 au total mais avec (0), je continue de creuser ! oui merci pour le script je veux bien voir comment tu as fais...
  • edited June 2020
    c'est là
    https://abotrel-drive.mytoutatice.cloud/public?sharecode=PmoCYG82aYgW
    mettre le repertoire init_wp sous www
    se connnecter sur localhost:8080/init_wp et rentrer l'adresse ip donnée par icode sans le port .
    si pas d'adresse mettre localhost
  • ok merci je vais tester !
Sign In or Register to comment.