it-swarm-vi.com

Thêm Mathjax vào trang web Joomla

Tôi muốn thêm chức năng MathJax vào trang web của mình nhưng tôi không biết làm thế nào để làm điều đó.

  • Điều này có yêu cầu sử dụng một mẫu cụ thể hoặc sửa đổi một mẫu hiện có không? (Tôi hiện đang sử dụng AllRounder nếu câu trả lời là mẫu cụ thể.)
  • Tôi có cần sử dụng một trình soạn thảo khác không? (Tôi hiện đang sử dụng JCE Editor)?

Hiện tại, việc quản lý nội dung trang web được tôi thực hiện riêng về mặt hành chính, mặc dù tôi không biết điều đó có quan trọng không. (Có lẽ có một tình huống mà một trang web muốn hạn chế sử dụng MathJax cho một số người dùng đặc quyền nhất định?)

6
bobthechemist

Tất cả bạn cần là một plugin. Bạn có thể viết một plugin nội dung bằng cách thêm phương thức 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");
    }

hoặc bạn có thể sử dụng plugin jexbox .

Chỉnh sửa:

Theo câu trả lời @Anibal, bạn có thể chỉnh sửa tệp mẫu. Tôi đang cải thiện câu trả lời @Anibal để hỗ trợ mã của bạn $\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

Có một số cách:

A. Ở cấp độ mẫu : Truy cập mẫu của bạn và thêm dòng cdn Mathjax trong vùng đầu. Ví dụ. Trong mẫu beez3:

mẫu/beez3/index.php, dòng 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. Với mô-đun HTML tùy chỉnh : Bạn có thể thêm một vài dòng PHP dòng mã nguồn trong mô-đun kịch bản tùy chỉnh Theo cách này, bạn có thể gán tập lệnh cdn Mathjax cho các menu cụ thể. Ví dụ: với 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

Tôi đã sao chép và dán

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

ngay trước </head> tag trong tệp trang chính của mẫu PHP.

Sau đó, nó là đủ để tôi sử dụng các dấu phân cách MathJaX bên trong các bài viết .

Nó chỉ hoạt động, và theo cách Nice thông thường.

Phụ lục: Tôi đã không nhận thấy trước ngày hôm nay rằng, kể từ những tháng gần nhất, một số thay đổi xảy ra và phải được xem xét bởi người dùng muốn chọn cách thực hiện đơn giản này.

Chuyển đổi https://c328740.ssl.cf1.rackcdn.com/ đến https://cdn.mathjax.org/ trong liên kết ở trên sẽ - Tôi đã xác minh - giữ câu trả lời này thực tế.

3
MattAllegro