ti-enxame.com

Adicionando Mathjax a um site do Joomla

Gostaria de adicionar a funcionalidade MathJax ao meu site, mas não tenho idéia de como fazê-lo.

  • Isso requer o uso de um modelo específico ou a modificação de um existente? (No momento, estou usando AllRounder se a resposta for específica do modelo.)
  • Preciso usar um editor diferente? (Atualmente estou usando o JCE Editor)?

Atualmente, o gerenciamento de conteúdo do site é feito exclusivamente por mim no lado administrativo, embora eu não saiba se isso importa. (Talvez exista uma situação em que um site queira restringir o uso do MathJax a determinados usuários privilegiados?)

6
bobthechemist

Tudo que você precisa é de um plugin. Você pode escrever um plug-in de conteúdo adicionando o método onContentPrepare:

    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");
    }

ou você pode usar o plugin jexbox .

Editar:

Como resposta @Anibal, você pode editar o arquivo de modelo. Estou melhorando a resposta @Anibal para dar suporte ao seu código $\frac{a}{b}$

...
    <script type="text/x-mathjax-config">
        MathJax.Hub.Config({
            tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}
        });
    </script>
    <script type="text/javascript"
        src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
    </script>

</head>
<body id="shadow">
....
6
csbenjamin

Existem várias maneiras:

A. No nível do modelo : Acesse o seu modelo e adicione a linha cdja do Mathjax na área principal. Por exemplo. No modelo beez3:

templates/beez3/index.php, linha 85

...
    <script type="text/javascript"
      src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
    </script>

    </head>
    <body id="shadow">
....

B. Com um módulo HTML personalizado : Você pode adicionar algumas PHP linhas de código-fonte em um módulo de script personalizado) Dessa maneira, você pode atribuir o script cdja do Mathjax a menus específicos, por exemplo, com NoNumber Sourcerer http://www.nonumber.nl/extensions/sourcerer

{source}
<?php

    $doc = JFactory::getDocument();
    $doc->addScript('http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML', 'text/javascript');

?>
{/source}
4
Anibal

Eu copiei e colei

<script type="application/javascript" src="https://c328740.ssl.cf1.rackcdn.com/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>

pouco antes de </head> tag no arquivo de página principal do modelo PHP $.

Então, foi o suficiente para eu usar delimitadores MathJaX dentro de artigos .

Simplesmente funciona, e da maneira agradável de sempre.

Adendo: Não notei até hoje que, desde os últimos meses, algumas alterações ocorreu e deve ser considerado pelos usuários que desejam escolher essa maneira simples de implementação.

Alternando https://c328740.ssl.cf1.rackcdn.com/ para https://cdn.mathjax.org/ no link acima, eu verifiquei, manteria essa resposta real.

3
MattAllegro