Après avoir lu ceci Ajout de Mathjax à un site Web de Joomla
Je ne sais rien au sujet de l'extension de l'écriture mais basé sur le lien mentionné, je suppose qu'il devrait être facile d'écrire un simple plugin système pour activer à la fois mathjax et latex2html5.
Je viens avec ça
<?php
// no direct access
defined('_JEXEC') or die('Restricted index access');
class plgSystemMathJaxLatex2Html5 extends JPlugin {
public function onContentPrepare($context, &$article, &$params, $page = 0)
{
$doc = JFactory::getDocument();
$doc->addScript("http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML");
$doc->addScript(plugins/system/MathJaxLatex2Html5/assets/js/latex2html5.min.js);
$doc->addStyleSheet(plugins/system/MathJaxLatex2Html5/assets/css/latex2html5.css);
}
}
Lien vers l'installation de latex2html5 http://latex2html5.com/installation.html
Je pense qu'il ne reste plus qu'à inclure la configuration requise pour mathjax dans le plugin.
<script type="text/x-mathjax-config">
// <![CDATA[
MathJax.Hub.Config({
TeX: {extensions: ["AMSmath.js", "AMSsymbols.js"]},
extensions: ["tex2jax.js"],
jax: ["input/TeX", "output/HTML-CSS"],
showProcessingMessages : false,
messageStyle : "none" ,
showMathMenu: false ,
tex2jax: {
processEnvironments: true,
inlineMath: [ ['$','$'], ["\(","\)"] ],
displayMath: [ ['$$','$$'], ["\[","\]"] ],
preview : "none",
processEscapes: true
},
"HTML-CSS": { linebreaks: { automatic:true, width: "latex-container"} }
});
// ]]>
</script>
Quelqu'un peut-il me guider s'il vous plaît à la fin du plugin?
Merci
Bon jeu à vous pour avoir décidé d’utiliser un plugin et d’essayer cela par vous-même, +1.
Vous êtes très proche, mais vous avez oublié d'utiliser des guillemets lors de la définition du chemin d'accès au script et à la feuille de style. Ce qui suit fonctionnera:
$doc->addScript('http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML');
$doc->addScript(JUri::root() . 'plugins/system/MathJaxLatex2Html5/assets/js/latex2html5.min.js');
$doc->addStyleSheet(JUri::root() . 'plugins/system/MathJaxLatex2Html5/assets/css/latex2html5.css');
Notez également que pour le script et la feuille de style que vous importez depuis votre propre serveur, j’ai utilisé JUri::root()
pour définir la racine de votre installation Joomla en tant que référence.
Pour appeler la fonction, vous pouvez utiliser la fonction addScriptDeclaration()
de Joomla qui injectera votre script défini dans la tête et utilisera automatiquement les balises <script>
$js = '
MathJax.Hub.Config({
TeX: {extensions: ["AMSmath.js", "AMSsymbols.js"]},
extensions: ["tex2jax.js"],
jax: ["input/TeX", "output/HTML-CSS"],
showProcessingMessages : false,
messageStyle : "none" ,
showMathMenu: false ,
tex2jax: {
processEnvironments: true,
inlineMath: [ ['$','$'], ["\(","\)"] ],
displayMath: [ ['$$','$$'], ["\[","\]"] ],
preview : "none",
processEscapes: true
},
"HTML-CSS": { linebreaks: { automatic:true, width: "latex-container"} }
});
';
$doc->addScriptDeclaration($js);