Vous n'êtes pas identifié(e).
13 février 2024 Sortie de Dotclear 2.29
Pages : 1
Bonjour
Je viens de mettre à jour mon plugin Cartes Google. Celui-ci crée un type de post spécifique, avec des champs post_excerpt et post_content pour en éditer le contenu.
Je souhaiterais que les barres d'édition en syntaxe wiki ou en xhtml avec dcCKEditor ne soient pas actives sur post_excerpt.
J'ai essayé ceci :
$admin_post_behavior = '';
if ($post_editor && !empty($post_editor[$post_format])) {
$admin_post_behavior = $core->callBehavior(
'adminPostEditor', $post_editor[$post_format],
'myGmaps', array('#post_content')
);
}
mais je n'ai plus d'éditeur nulle part. Si je remets post_excerpt dans l'array, j'ai les éditeurs sur les deux textarea
Qu'est-ce que je fais mal ?
Hors ligne
Petite correction, voici la partie mon code qui pose problème :
$admin_post_behavior = '';
if ($post_editor && !empty($post_editor[$post_format])) {
$admin_post_behavior = $core->callBehavior(
'adminPostEditor', $post_editor[$post_format],
'map', array('#post_content')
);
}
L'éditeur dcCKEditor comprend bien cette instruction et ne s'affiche que sur le post_content \o/
En revanche, l'éditeur de la syntaxe wiki ne s'affiche ni sur post_excerpt (normal), ni sur post_content :(
Hors ligne
Qu'inclus-tu dans le head de tes fichiers ?
Pour gallery, le code qui a marché est :
<?php echo dcPage::jsDatePicker().
dcPage::jsToolBar().
dcPage::jsModal().
dcPage::jsMetaEditor().
$admin_post_behavior.
dcPage::jsLoad('js/_post.js').
dcPage::jsConfirmClose('entry-form').
dcPage::jsPageTabs($default_tab);
?>
Et il faut que tes textarea soient dans un div#edit-entry (oui, c'est moche)
Dyslexics have more fnu!
Hors ligne
Oui, le code ajoutant les fichiers javascript est très similaire au tien :
echo
dcPage::jsDatePicker().
dcPage::jsToolBar().
dcPage::jsModal().
dcPage::jsMetaEditor().
$admin_post_behavior.
dcPage::jsLoad('js/_post.js').
dcPage::jsLoad(DC_ADMIN_URL.'?pf=myGmaps/js/element.map.js').
dcPage::jsConfirmClose('entry-form').
# --BEHAVIOR-- adminPostHeaders
$core->callBehavior('adminPostHeaders').
dcPage::jsPageTabs($default_tab).
$next_headlink."\n".$prev_headlink
et les champs sont bien dans un div id="edit-entry"
Ça marche d'ailleurs très bien avec dcCKEditor, mais pas avec la syntaxe wiki
Hors ligne
La version sur laquelle je travaille est sur ce dépôt. Le fichier avec le code donné plus haut est element.map.php
Seule la barre d'édition en wiki sur le champ post_content manque à mon bonheur ;)
Hors ligne
Hors ligne
Je crois avoir trouvé un hack (pas trop sale, j'espère) qui fonctionne :
if ($post_editor && !empty($post_editor[$post_format])) {
if ($post_format == 'xhtml') {
$admin_post_behavior = $core->callBehavior(
'adminPostEditor', $post_editor[$post_format],
'map', array('#post_content')
);
} elseif ($post_format == 'wiki') {
$admin_post_behavior = $core->callBehavior(
'adminPostEditor', $post_editor[$post_format],
'map', array('#post_content','#post_excerpt')
);
}
}
En revanche, ça ne marchera pas avec d'autres syntaxes comme markdown, sauf si j'ajoute une condition supplémentaire.
@nikrou : as-tu une solution plus propre ?
Hors ligne
Je suggère que tu ouvres un fil dédié avec la liste desdits plugins afin que l'on puisse faire l'état des lieux. Ensuite, nikrou ou d'autres (je commence à en être capable ^^) regarderont ce qu'il y a à faire ;)
Hors ligne
Merci Dsls, je suivrai le sujet de près ;)
Hors ligne
J'aurais bien dit dans bugs :P mais je crois que le mieux est ici
Hors ligne
Mince j'avais raté cette discussion. Je regarderai. Il ne faut pas hésiter à me relancer si j'oublie.
Avez-vous noter qu'il y a un joli billet pour adapter un plugin qui ajoute des boutons dans la barre de votre éditeur ?
Je préfère être atteint de parkinson plutôt qu'alzheimer : je prefère renverser un peu de ma bière plutôt qu'oublier de la boire !
Présentez vos photos simplement avec Phyxo !
Hors ligne
Oui, j'avais remarqué, j'ai d'ailleurs un projet pour lequel ça me sera bien utile et je reviendrai en parler en temps voulu, merci :)
Hors ligne
PS : mon hack en #9 ne fonctionne qu'avec dcCKEditor en xhtml et dcLegacyEditor pour la syntaxe wiki. Si je définis mon éditeur comme dcLegacyEditor pour le xhtml, ça ne marche plus.
Pas bien grave, l'éditeur xhtml historique était bien moins fiable que le nouveau :P
Hors ligne
Le problème est avec dcLegacyEditor comme l'a souligné Bruno. Le code n'est pas très propre. Le behavior laisse supposer que seul les identifiants des textarea passés en paramètres sont décores alors que dans le code il manque des tests si jamais ce n'est pas le cas.
Après je ne sais pas s'il faut s'amuser ou prendre du temps pour corriger cela si on met plus en avant le nouvel éditeur.
Je préfère être atteint de parkinson plutôt qu'alzheimer : je prefère renverser un peu de ma bière plutôt qu'oublier de la boire !
Présentez vos photos simplement avec Phyxo !
Hors ligne
Après je ne sais pas s'il faut s'amuser ou prendre du temps pour corriger cela si on met plus en avant le nouvel éditeur.
Nous sommes bien d'accord ;)
Hors ligne
Pages : 1
Vous n'êtes pas identifié(e).