Comments (28)
attention je viens de changer la manière de charger le json des structures de la galerie,
pas encore comité mais permet d'éviter la requête ajax ligne 205 dans mp_gallery_plugin.js, et notamment le chargement ajax synchrone qui fige la page (je pense qu'on aura un problème si il y a beaucoup de galeries)
from multipublisher.
ça y est j'ai fait le commit de la mise à jour du système de chargement de la structure de la galerie.
La partie logique se situe à partir de la ligne 550 de mp.class.php
wp_register_script( 'gallerie_handle', plugins_url( '/tinymce_js/mp_gallery_plugin.js', __FILE__ ));
// Localize the script with new data
$gallerie_json = array(
'default' => MultiPublisher::get_gallery_json()
);
wp_localize_script( 'gallerie_handle', 'gallerie_data', $gallerie_json );
// Enqueued script with localized data.
wp_enqueue_script( 'gallerie_handle' );
ça permet de récupérer le code de la galerie dans la variable JS galerie_data.default
from multipublisher.
le système est en place, le php récupère les légendes mais cela interfère avec le get_spot sur la data "txt" (correspondant à 'a', 'b' ...) je l'ai donc commenter pour le moment afin de trouver une solution.
from multipublisher.
Salut Arman,
merci pour le retour, j'essaye de jeter un oeil, pour voir si je trouve une solution
Loïc
—
www.loichorellou.net
[email protected]
+33 6 84 70 19 67
Le 28 févr. 2016 à 01:52, Arman Mohtadji [email protected] a écrit :
le système est en place, le php récupère les légendes mais cela interfère avec le get_spot sur la data "txt" (correspondant à 'a', 'b' ...) je l'ai donc commenter pour le moment afin de trouver une solution.
—
Reply to this email directly or view it on GitHub #1 (comment).
from multipublisher.
ok la gallery fonctionne pour les images, je suis en train de régler le souci sur la légende (qui est récupérée dans le shortcode txt). Faut-il aussi s'attarder sur la taille des images ? seront-elles redimensionnables dans l'éditeur ?
from multipublisher.
C'est super, je regarde ça. Les images ne seront pas éditables dans le champ texte, par contre elles ont des dimensions en fonction de la boite dans laquelle elles se trouvent. Du coup il y a 4 variantes de dimensions (ce sont des dimensions maximales, donc pas de recadrage mais un redimentionnement au maximum de la dimension la plus grande) :
- 1x1 : 64 x 64 mm (756 x 756 px à 300dpi)
- 1x2 : 64 x 155 mm (756 x 1831 px)
- 2x1 : 132 x 64 mm (1559 x 756 px)
- 2x2 : 132 x 155 mm (1559 x 1831 px)
from multipublisher.
la galerie fonctionne avec l'ensemble des boutons !
Il ne reste plus qu'à gérer le positionnement des icônes, et de trouver une astuce pour les tailles des images.
from multipublisher.
https://developer.wordpress.org/reference/functions/add_image_size/
from multipublisher.
cf MultiPublisher::get_gallery_json pour récupérer le json des galeries
from multipublisher.
Bon pour le shortcode côté front-office, on devrait y arriver avec quelque chose du genre :
$gallery = new Dom\Html();
$gallery
->body()
->html("<table><tr><td class=\"a\">a</td><td class=\"b\">b</td></tr><tr><td class=\"c\">c</td><td class=\"d\">d</td></tr></table>");
$gallery->find('.a')->html('<img id="a" />');
$gallery->find('.b')->html('<img id="b" />');
$gallery->find('.c')->html('<img id="c" />');
$gallery->find('.d')->html('<img id="d" />');
echo $gallery->find('body')->children();
from multipublisher.
Avec la librairie suivante :
https://github.com/volux/dom
use volux\Dom;
require_once('vendor/autoload.php');
à installer avec composer :
~ composer require volux/dom
from multipublisher.
Ok, merci !
J'ai mis en place la boucle pour add_image_size, mais je n'arrive pas à récupérer et appliquer les dimensions.
Sur certain forum add_image_size
est suivie de
add_filter('image_size_names_choose', 'my_image_sizes');
ici
mais je crois bien (si mes notes sont correctes) qu'on ne passe pas par l'uploader pour les tailles d'images mais par leurs places dans les tables galeries ?
Si 'est bien ça, je pensais utiliser une fonction wordpress :
wp_get_attachment_image($attachment_id, 'my_custom_thumbnail_name');
Mais pour produire les images dans le backOffice j'utilise :
wp_prepare_attachment_for_js(id)['url']
aurais-tu une idée pour me débloquer ?
Pour la partie front office dans quel fichier travailles tu ?
from multipublisher.
Galerie en place avec les tailles et url icone fixé. J'ai néanmoins un souci avec le css qui ne redimensionne pas la galerie à la fenêtre tinymce editor. Si tu as une idée :)
Je souhaiterais passer à la partie front, dans quel fichier travailles tu ?
from multipublisher.
J'ai installé la librairie volux/Dom
Lorsque que j'utilise
$gallery = new Dom\Html();
J'obtient une erreur alors qu'avec la manière suivante cela marche :
$doc = new DOMDocument();
$doc->loadHTML("<html><body>Test<br></body></html>");
echo $doc->saveHTML();
http://phpcodex.com/manual/domdocument.loadhtml.html
Peux-tu tester de ton coté ? j'ai peut être encore un problème de config.
from multipublisher.
voici l'erreur :
Warning: Declaration of volux\Dom\Document::loadHTML($source, &$result = false) should be compatible with DOMDocument::loadHTML($source, $options = NULL) in /multi-publisher/vendor/volux/dom/src/volux/Dom/Document.php on line 662
from multipublisher.
il existe une autre gallery de parser :
http://simplehtmldom.sourceforge.net/
from multipublisher.
oui je l'avais essayé, je n'avais pas réussi à faire ce que je voulais de manière aussi simple ;-)
from multipublisher.
ok, parce que j'essaie d'utiliser :
$xpath = new DOMXPath($doc);
et je commence à me dire qu'il serait plus simple d'utiliser volux/dom
from multipublisher.
hahaha, bon je vais essayer de voir ce qui cloche…
from multipublisher.
yeepecaye
ça fonctionne avec : https://github.com/tburry/pquery
peut être se référer au wiki https://code.google.com/archive/p/ganon/ pour certains détails
testé dans mp_class :
$gallery = "<table><tr><td class=\"a\">a</td><td class=\"b\">b</td></tr><tr><td class=\"c\">c</td><td class=\"d\">d</td></tr></table>";
$dom = pQuery::parseStr($gallery);
$dom->query('.a')->html('<img id="a" />');
$dom->query('.b')->html('<img id="b" />');
$dom->query('.c')->html('<img id="c" />');
$dom->query('.d')->html('<img id="d" />');
return $dom->html();
from multipublisher.
job done.
🎱
Je dois juste régler les légendes.
Est ce que j'adapte la taille des images (en css) dans l’aperçu de la publication ?
from multipublisher.
oui pour l'adaptation :-) 👍
from multipublisher.
J'ai un bug
Notice: Undefined index: pict2x1 in /Users/loic/Sites/Site_CDF/wp-content/plugins/multi-publisher/inc/mp.class.php on line 385
from multipublisher.
J'ai testé avec diffrentes images, à mon avis c'est que ton image n'existe pas dans cette taille là. J'ai le même souci avec des image plus petite qui ont été uploadée seulement en 1x1. je peut mettre une condition pour éviter ce genre d'erreur et simplement mettre l'image full_size à la place. Qu'en penses tu ?
from multipublisher.
ah oui bien vu, j'avais oublié ce problème. Je vais voir si on peut forcer le calcul d'une image de dimension supérieure même si on n'a pas la résolution. Je teste avec des images de bonne taille et te tiens au courant.
from multipublisher.
J'ai posé la question sur le forum wordpress https://wordpress.org/support/topic/force-large-images-sizes?replies=1
from multipublisher.
Je n'arrive pas à faire réapparaître le bug sur l'éditeur de galerie, je vais néanmoins m'occuper de l'édition du contenu d'une galerie existante
from multipublisher.
il ne reste que :
- la galerie qui ne charge pas automatiquement dans tinymce (va et viens "texte"<->"éditeur")
- le possible bug dans le module de création de galerie (qui apparaît avec une manip particulière)
- css de la légende des galeries
from multipublisher.
Related Issues (2)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from multipublisher.