[plugin] PLX_EBook : Édition et partage d’e-pub a partir de PluXml

4 mai modifié dans Plugins

Voici un plugin en version Bêta qui permet de sauvegarder tout ou partie de votre site PluXml en 1 ou plusieurs E-pubs.


Edit bêta passée en version 1.0.3 https://github.com/gcyrillus/PLX_EBook/archive/refs/heads/dev-1.0.3.zip 03/2022 Maj 17/04/22

Exemple de Epubs générés par le plugin (par catégories, mode Bande dessinée ou en provenance d'une autre source): http://gcyrillus.alwaysdata.net/epub-gratuit


  • Une page coté visiteur est affichable comme une page statique et listes les e-pubs que vous avez généré avec le plugin et / ou ceux que vous avez téléversé dans le dossier dédier.
  • Coté administration, plusieurs onglets de configuration permettent de renseigner quelques champs utiles au fichier OPF , ainsi que de sélectionner les articles par catégories de différentes manières: du plus récent, du plus ancien, par périodes(mensuelle,trimestrielle,semestrielle,annuelle), par auteur.
  • Des pages annexes peuvent être éditer et ajouter,
  • les pages statiques peuvent être inclues individuellement , ainsi qu'une page "témoignages" reprenant les commentaires d'un seul article au choix ... si il y a des articles commentées.
  • Quelques thèmes avec une image de couverture, police et un fichier de styles sont aussi sélectionnables (un onglet preview permet de voir les thèmes disponibles et éditables. L'onglet ajout de thème vous permet de télécharger de nouvelles couvertures et polices pour vos nouveaux thèmes ou l'édition d'un thème existant.
  • un mode bande dessinée, simplifié et accessible depuis l'onglet "type de publication", permet de générer un e-pub à partir d'images uniquement téléversées au préalable dans un répertoire de votre choix.

Vous trouverez une description un peu plus complète et le plugin en téléchargement sur la page https://github.com/gcyrillus/PLX_EBook Le lien vers l'archive:https://github.com/gcyrillus/PLX_EBook/archive/refs/heads/dev-1.0.3.zip

Le plugin est très proche de l'idée que j'en avait ainsi que les e-pubs générer, la partie configuration et génération n'est pas tout à fait conformes à ce que je souhaitais initialement et quelques fonctions sont (peut-être) encore manquantes ou de trop.
Je vais maintenant espérer trouver des utilisateurs et avoir des retours pour rendre ce plugin presque parfait (ergonomie, options, ...)

cdt


les dernières modif sur cette branche sont :
[+] 04/05/2022
fix wrong mimetype for woff & woff2 (EBook.php)

[+] 28/04/2022
cache temporairement les warnings pour les fonction ZIP (PHP 8) dans epub.ebook.php
arrondis du calcul des dimensions et positions pour la creations des couvertures (PHP8) dans EBook.php
fix , typo sur variable $thi => $thI dans config.php

[-] 20/04/22
Correction affichage en front (test mauvais tableau) (epub.ebook.php)

[~]17/04/22 (config.php)
Maj édition theme
Maj scripts JavaScript (extraction et affichage couleur et fonts du fichier de configuration du thème édité)
renommage des thèmes par nom de dossier

[+] 25/03/2022
Ajout et edition de thème(config.php)
Upload image et polices pour les thèmes(config.php)
upfonts.php Ajout polices en glisser/déposer dans l'edition pour en faire usage avant d'enregistrer le thème en edition ou en création.
ajout scripts javascript.

[+] 10/03/2022
ajout bouton 'delete' sur la page ebook si connecté comme administrateur. (epub.ebook.php)
ajout CSS pour ce bouton.(site.css)
Réarrangement des titres, sous-titres et nom de catégories sur la couverture en fonction de l'option choisie pour le titre principale(nom de site ou catégorie)(EBook.php)
Données onglets crédits Options ajout à la page remerciements.

maj fichiers langues

[+] 08/03/2022
intègre a l’e-pub une image située en dehors du répertoire data/medias via cURL

[+] 07/03/2022
ajout choix du titre de la couverture pour les catégories sélectionnées = nom de catégorie(defaut) ou nom du site

[+] 06/03/2022
Ajout javascript: désactive le bouton de création si des changement sont effectués dans l'onglet configuration et crèation.
Maj fichier fr.php/en.php
warning message if publish mode not yet configured (config.php)
rename: function listdir_by_date -> listdir_by_natsort (epub.ebook.php)
initialisation de $file_array=array(); par defaut si répertoire epubs vide(epub.ebook.php)

[+] 05/03/2022
bug tri sur multi-utilisateur validé si isset() (config.php)

[+] 04/03/2022
cover updates on demand only(config.php)

[+] 03/03/2022
javascript, historique dossier epub, couleurs(config.php)

[+] 11/2/22
reformat le chemin du repertoire de stockage des epubs(config.php)
ajout lien direct dans le menu admin(EBook.php)
valeur $format de la fonction catList() pris en compte(EBook.php)
n'affiche que les auteurs qui ont au moins une publication(config.php)
comptage article par categorie selon l'auteur selectionné (categorie vides non affichées)
ajout du champ description commun aux pages statiques(config.php)
modif mineures du CSS coté admin

♣♣♣♣ <°(((((-{ ~ Mon site avec PluXml: https://re7net.com | Mes plugins : https://github.com/gcyrillus PluXml 5.8.7 sur free ? oui c'est possible : http://gcyrillus.free.fr/new }-))))°> ♣♣♣♣

Mots clés:

Réponses

  • Ce plugin continue d’évoluer doucement , pour le moment accès sur les fonctionnalités. (ergonomie et accessibilité en suspend)
    Les innovations se trouvent dans la branche https://github.com/gcyrillus/PLX_EBook/tree/dev-1.0.3

    Toutes critiques d'éventuels utilisateurs sont bonnes , surtout si elles sont argumentées ;) .
    Autant d'être un plugin à utilisé en ligne, c'est aussi une façon pour les utilisateurs de pluxml de s'en servir comme d'un éditeur d’e-pub en ligne ou en locale.

    ♣♣♣♣ <°(((((-{ ~ Mon site avec PluXml: https://re7net.com | Mes plugins : https://github.com/gcyrillus PluXml 5.8.7 sur free ? oui c'est possible : http://gcyrillus.free.fr/new }-))))°> ♣♣♣♣

  • cpalocpalo Member

    Bonjour,
    Je vais donc le tester.. (d'ici quelques jours car j'ai une autre priorité où je prends du retard)
    Cela pourrait être une solution pour à partir de la doc que je souhaite mettre sur mon blog en faire , sans utiliser un autre outil que ton plugin, en faire un pdf ou un epub, regroupant plusieurs contenus du site.
    C'est bien ça que permet ton plugin?

  • 4 mars modifié

    Oui, c'est l'idée, produire une doc à partir d'une séries d'articles d'une catégorie est l'une de ses options / usage. Mais il ne génere qu'un format epub.
    Il n'est pas compatible avec free et requiert les fonction graphiques de PhP pour la gestion des couvertures. Il requiert aussi cURL au cas ou des images des articles sont hébergées sur un autre serveur ou ont une adresse en http, dans ce cas il tente de rapatriée l'image ... si ce lien comporte une extension.

    L'option de sélectionner que certaines catégories n'est pas encore disponible (sauf conjointement avec plx-gc-catégorie en selectionnant une mère). Dans ce cas il faut désactivé provisoirement les catégories que l'on ne veut pas inclure à l'epub. (L'onglet création est vite un foutoir lorsque l'on a de nombreuses catégories . je suis encore à me demander comment rendre l’administration plus claire avant d'en remettre une couche )

    ♣♣♣♣ <°(((((-{ ~ Mon site avec PluXml: https://re7net.com | Mes plugins : https://github.com/gcyrillus PluXml 5.8.7 sur free ? oui c'est possible : http://gcyrillus.free.fr/new }-))))°> ♣♣♣♣

  • cpalocpalo Member

    Bonjour,
    Je viens de l'installer en ligne (creer-son-theme.plugeek.fr).
    Superbe mise en page de tes pages de configuration. Bravo!
    Mais juste après l'activation et en allant à sa configuration :

    Notice: Undefined index: in/www/tuto-creer-son-theme/plugins/EBook/varEbook.php on line 212
    Notice: Trying to access array offset on value of type null in /www/tuto-creer-son-theme/plugins/EBook/varEbook.php on line 212
    
  • 10 mars modifié

    Merci de ton retour,
    En effet , je redéfinis une variable déjà okay par défaut . sans vérifier que la valeur à extraire existe retropedalage

    Je viens de remodifier cette portion de code en virant verifiant dans le else si la valeur à appliquer est disponible (cas filtrage sur auteur article quand plusieurs dispos) (branche dev-1.0.3). (note à moi même: tester régulièrement les plugins sur une version vierge d'activations antérieurs)

        if($plxAdmin->aUsers  && $plxPlugin->getParam('triAuthors') =='000' ){
            foreach($plxAdmin->aUsers as $_userid => $_user)    { // selectionne tous les auteurs/utilisateurs
                if(in_array($_user['name'],$AuthorPublished))  
                {$AllUsers[]= $_user['name'];}
            }
            $var['author'] = implode(", ", $AllUsers);
        }
        else {// selectionne seulement  l'auteur choisi si parametrer
            if(isset($plxAdmin->aUsers[$plxPlugin->getParam('triAuthors')]['name'])) {$var['author'] = $plxAdmin->aUsers[$plxPlugin->getParam('triAuthors')]['name'];}
        }
    

    Merci pour l'admin, si ce n'est pas trop fouillis, alors cela me rassure ;)

    Cdt

    Edit : Maj fichier epub.ebook.php ligne 27 ajout $file_array=array(); pour initialiser un tableaux vide au cas ou le répertoire des epubs est encore vide.

    ♣♣♣♣ <°(((((-{ ~ Mon site avec PluXml: https://re7net.com | Mes plugins : https://github.com/gcyrillus PluXml 5.8.7 sur free ? oui c'est possible : http://gcyrillus.free.fr/new }-))))°> ♣♣♣♣

  • cpalocpalo Member
    6 mars modifié

    Bonjour,
    J'ai parlé un peu trop vite.. l'admin n'est effectivement pas toujours très pratique quand le contenu est "long" et donc déborde des cadres.
    Je viens de télécharger ta mise à jour, et a-priori je n'ai plus de message d'erreur.
    Je vais essayer de créer un epub pour tester.
    Retour du test:
    Je dois zapper sans doute une étape...
    je vais dans Création et configuration
    Je selectionne 2 catégories et la page de remerciement
    Je fais générer
    Mais aucun epub n'est créé

  • avant de génerer l'epub, il faut enregistrer les modifications pour qu'elles soient effectives. Peut-etre devrais-je grisé le bouton de géneration sitôt une modif faites.

    ♣♣♣♣ <°(((((-{ ~ Mon site avec PluXml: https://re7net.com | Mes plugins : https://github.com/gcyrillus PluXml 5.8.7 sur free ? oui c'est possible : http://gcyrillus.free.fr/new }-))))°> ♣♣♣♣

  • cpalocpalo Member
    6 mars modifié

    Ok j'ai réussi à générer.
    Donc quelques retours :
    Ce qui est vraiment génant dans la configuration-création c'est que toutes les catégories disponibles ne peuvent pas être visibles ( la liste ne déroule pas).
    Comment fait-on pour donner un nom à l'e-pub car il prend automatiquement le nom de la catégorie.
    Comment-fait-on pour générer à partir de pages statiques.. j'ai coché mode livre mais je ne vois pas où sélectionner les pages

  • 6 mars modifié

    Je vient d'ajouter un bout de js pour obliger à sauvegarder avant création.

    Ce qui est vraiment gênant dans la configuration-création c'est que toutes les catégories disponibles ne peuvent pas être visibles ( la liste ne déroule pas).

    Pour le coup, ne sont visible que les catégorie contenant au moins un article ou celles correspondant aux filtres de l'onglet "mode de publication" . Le mode livre sortiras les articles du plus anciens au plus récent.
    Il n'y a qu'une categorie que l'on peut selectionné comme à génerer en epub par ligne.
    Ce qui peut cacher des catégories (à part le fait qu'elles soit vides) . une période ou il n'y a pas eu de publication dans cette catégories ou une catégorie ou l'auteur sélectionné n'y a rien publié.

    Comment fait-on pour donner un nom à l'e-pub car il prend automatiquement le nom de la catégorie.

    En effet c'est un choix que j'ai pris sans qu'il ne soit irrémédiable pour les versions futures (dans la première version, c'était le titre du site avec la catégorie en guise de sous-titre) Que souhaiterait tu ? et à quel endroit cela te semble t-il le plus logique?

    note Le titre est aussi utilisé et réduit à 12 caractères pour générer le nom de fichier de l'epub.

    Comment-fait-on pour générer à partir de pages statiques.. j'ai coché mode livre mais je ne vois pas où sélectionner les pages

    Le mode livre tri les articles par date uniquement.Cela aura une incidence au moment de la création de l'epub.
    La sélection de page annexe ou statiques est faites dans l'onglet configuration.
    Si une page annexe est sélectionnée, à l'enregistrement , une page statique est crée et et un lien apparait pour y accéder et la remplir (ex page Dédicace) Par défaut cette nouvelle page statique n'est pas active en front et sera utiliser seulement par le plugin.

    J'ai parlé un peu trop vite.. l'admin n'est effectivement pas toujours très pratique quand le contenu est "long" et donc déborde des cadres.

    Si tu as un screenshoot, même flouté, je veux bien voir les débordement que tu evoques et sur quel onglet ;)

    Cdt

    ♣♣♣♣ <°(((((-{ ~ Mon site avec PluXml: https://re7net.com | Mes plugins : https://github.com/gcyrillus PluXml 5.8.7 sur free ? oui c'est possible : http://gcyrillus.free.fr/new }-))))°> ♣♣♣♣

  • cpalocpalo Member
    6 mars modifié

    Je n'arrive pas inserer une image dans le post, alors je l'ai mise en ligne :
    http://creer-son-theme.plugeek.fr/index.php?static13/onglet-creation
    Justement la sélection de pages annexes n'est pas visible.
    Pour les titres, dans l'onglet configuration... avec l'option d'ajouter le titre du site comme dans la première version.
    Lorsqu'on a plusieurs ebooks, comment fait-on pour les lister afin de pouvoir le smodifier?

  • 6 mars modifié

    Merci beaucoup, il y a peut-être un télescopage avec une autre feuille de style dans l'admin ou bien ma feuille ne passe pas correctement dans ton navigateur.

    Voici ce que tu devrais avoir (dans FF,Edge et Chrome) :

    Pour inserer une image sur le forum, il faut l'heberger ailleurs et l'inserer en markdown , par exemple pour cette image je l'ai inserer comme ceci en me servant d'un autre forum :anguished: : ![](https://i.stack.imgur.com/4xYIi.jpg "")

    ♣♣♣♣ <°(((((-{ ~ Mon site avec PluXml: https://re7net.com | Mes plugins : https://github.com/gcyrillus PluXml 5.8.7 sur free ? oui c'est possible : http://gcyrillus.free.fr/new }-))))°> ♣♣♣♣

  • 6 mars modifié

    Pour les titres, dans l'onglet configuration... avec l'option d'ajouter le titre du site comme dans la première version.

    okay, il faudra que je vois comment implémenter l'option et la transmettre à la fonction qui génère l'image puis faire en sorte que les textes ne se superposent pas , j'ai peut-etre pas prévue des titres assez long. (la partie generation des couvertures sera à termes modifiée pour laisser la possibilité à chacun de créer son théme, d'ajouter ses propres images, font-family et feuilles de styles, ainsi que de supprimer des thémes qui ne serviront pas.)

    Lorsqu'on a plusieurs ebooks, comment fait-on pour les lister afin de pouvoir les modifier?

    Pour mettre un epub à jour, il suffit de le générer à nouveaux, le nom de l'archive reprend invariablement le nom de la catégorie sélectionnée et remplace le fichier si il existe déjà.(je pense à une option en front pour ajouter des checkbox pour chaque epub et pouvoir les supprimer à partir de là si l'on est connecter en admin, mais je peut aussi voir à faire un listing des e-pubs dispos par répertoire(s) dedié(s))

    Le plugin ne voit pas non plus l'architecture visuelle créer par le plugin subcatégorie, il ne prends que les articles rattachée à la catégorie sélectionnée, si tu as mis en article dans une subcategorie sans le rattachée aussi à la catégorie qui s'affiche comme parente, le plugin ne le verra pas si tu as sélectionner la catégorie parente visuellement.. (le plugin plx_gc_categorie fait cette manip automatiquement exemple d’e-pubs générer en sélectionnant des catégories mères : http://gcyrillus.alwaysdata.net/epub-gratuit )

    ♣♣♣♣ <°(((((-{ ~ Mon site avec PluXml: https://re7net.com | Mes plugins : https://github.com/gcyrillus PluXml 5.8.7 sur free ? oui c'est possible : http://gcyrillus.free.fr/new }-))))°> ♣♣♣♣

  • cpalocpalo Member

    Bonjour
    J'ai regardé le code source de la page, et tout y est. C'est donc bien seulement un problème de css.
    Je regarderai donc un peu plus près les divers css et voir si je trouve.
    Mais en attendant, je vais tester "plus sérieusement" en créant un epub "réel" et ainsi je pourrai faire d'autres retours plus proches de son utilisation.

  • 4 mai modifié

    He bien vraiment merci pour tous ces retours et ton intérêt. @cpalo

    Je viens d'ajouter l'option pour le titre de couverture. (branche dev-1.0.3)
    le sous titre est celui indiqué dans l'onglet "fiche d'identité" , par défaut c'est la description/sous titre du site.
    Cdt


    les dernières modif sur cette branche sont :
    [+] 04/05/2022
    fix wrong mimetype for woff & woff2 (EBook.php)

    [+] 28/04/2022
    cache temporairement les warnings pour les fonction ZIP (PHP 8) dans epub.ebook.php
    arrondis du calcul des dimensions et positions pour la creations des couvertures (PHP8) dans EBook.php
    fix , typo sur variable $thi => $thI dans config.php

    [-] 20/04/22
    Correction affichage en front (test mauvais tableau) (epub.ebook.php)

    [~]17/04/22 (config.php)

    Maj édition theme
    Maj scripts JavaScript (extraction et affichage couleur et fonts du fichier de configuration du thème édité)
    renommage des thèmes par nom de dossier

    [+] 25/03/2022

    Ajout et edition de thème(config.php)
    Upload image et polices pour les thèmes(config.php)
    upfonts.php Ajout polices en glisser/déposer dans l'edition pour en faire usage avant d'enregistrer le thème en edition ou en création.
    ajout scripts javascript.
    

    [+] 10/03/2022

    ajout bouton 'delete' sur la page ebook si connecté comme administrateur. (epub.ebook.php)
    ajout CSS pour ce bouton.(site.css)
    Réarrangement des titres, sous-titres et nom de catégories sur la couverture en fonction de l'option choisie pour le titre principale(nom de site ou catégorie)(EBook.php)
    
    Données onglets crédits Options ajout à la page remerciements.
    
    maj fichiers langues
    

    [+] 08/03/2022

    intègre a l’e-pub une image située en dehors du répertoire data/medias via cURL
    

    [+] 07/03/2022

    ajout choix du titre de la couverture pour les catégories sélectionnées = nom de catégorie(defaut) ou nom du site
    

    [+] 06/03/2022

    Ajout javascript: désactive le bouton de création si des changement sont effectués dans l'onglet configuration et crèation.
    Maj fichier fr.php/en.php
    warning message if publish mode not yet configured (config.php)
    rename: function listdir_by_date -> listdir_by_natsort (epub.ebook.php)
    initialisation de $file_array=array(); par defaut si répertoire epubs vide(epub.ebook.php)
    

    [+] 05/03/2022

    bug tri sur multi-utilisateur validé si isset() (config.php)
    

    [+] 04/03/2022

    cover updates on demand only(config.php)
    

    [+] 03/03/2022

    javascript, historique dossier epub, couleurs(config.php)
    

    [+] 11/2/22

    reformat le chemin du repertoire de stockage des epubs(config.php)
    ajout lien direct dans le menu admin(EBook.php)
    valeur $format de la fonction catList() pris en compte(EBook.php)
    n'affiche que les auteurs qui ont au moins une publication(config.php)
    comptage article par categorie selon l'auteur selectionné (categorie vides non affichées)
    ajout du champ description commun aux pages statiques(config.php)
    modif mineures du CSS coté admin
    

    ♣♣♣♣ <°(((((-{ ~ Mon site avec PluXml: https://re7net.com | Mes plugins : https://github.com/gcyrillus PluXml 5.8.7 sur free ? oui c'est possible : http://gcyrillus.free.fr/new }-))))°> ♣♣♣♣

Connectez-vous ou Inscrivez-vous pour répondre.