Яндекс.Спеллер

Подключение к TinyMCE

Как подключить Яндекс.Спеллер к HTML-редактору TinyMCE.

TinyMCE - это кроссплатформенный WYSIWYG HTML-редактор с открытым кодом, который легко встраивается в любую HTML-страницу.

Чтобы подключить Яндекс.Спеллер к TinyMCE, выполните следующие действия:

  1. Подключите плагин spellchecker в скрипте инициализации. Для TinyMCE 4.x сделаем это на примере http://www.tinymce.com/tryit/basic.php. Внесите следующие изменения:

    <script type="text/javascript">
      tinymce.init({
        selector: "textarea",
        plugins: [ ...,
          "... spellchecker"],
        toolbar: "insertfile undo redo | spellchecker | styleselect ...",
        // Spellchecker
        spellchecker_languages: "Russian=ru,Ukrainian=uk,English=en",
        spellchecker_rpc_url: "http://speller.yandex.net/services/tinyspell"
      });
    </script>

    Для TinyMCE 3.x настройки отличаются:

    <script type="text/javascript">
      tinyMCE.init({
        // General options
        mode : "textareas",
        theme : "advanced",
        plugins : "...,spellchecker,...",
        theme_advanced_buttons3 : "...,spellchecker,...",
        // Spellchecker
        spellchecker_languages : "+Russian=ru,Ukrainian=uk,English=en",
        spellchecker_rpc_url : "http://speller.yandex.net/services/tinyspell",
        spellchecker_word_separator_chars : '\\s!"#$%&()*+,./:;<=>?@[\]^_{|}\xa7\xa9\xab\xae\xb1\xb6\xb7\xb8\xbb\xbc\xbd\xbe\u00bf\xd7\xf7\xa4\u201d\u201c'
      });
    </script>
  2. Переадресуйте запросы к спеллеру с вашего сайта на Яндекс.

    На шаге 1 мы настроили TinyMCE для выполнения кросс-доменных запросов с вашего сайта на сайт Яндекса. Такое решение работает в большинстве современных браузеров (Chrome, Firefox 5, Opera 11, Safari 5). Если ваш сайт рассчитан на работу в таких браузерах – можно сразу переходить к шагу 3.

    Чтобы спеллер работал со всеми браузерами – потребуется переадресовать запросы спеллера сначала на ваш сайт, а потом – с вашего сайта на Яндекс. Для этого в файле words.html в параметре spellchecker_rpc_url укажите URL на вашем сайте, например, так:

    spellchecker_rpc_url : "/speller/tinyspell",

    а затем, переадресуйте запросы от /speller/tinyspell на http://speller.yandex.net/services/tinyspell. Сделать это можно различными способами.

    Например, если используется web-сервер Apache, то настроить переадресацию можно в файле httpd.conf с помощью инструкции ProxyPass:

    ProxyPass /speller/tinyspell http://speller.yandex.net/services/tinyspell

    Кроме того, для переадресации можно воспользоваться скриптами tinyspell.* из архива серверных скриптов server-scripts.zip. Разместите скрипт (например, tinyspell.php) на вашем сайте и укажите его URL в параметре spellchecker_rpc_url : "/tinyspell.php".

  3. Подключение Яндекс.Спеллера завершено.

    После обновления страницы basic.html появится кнопка проверки правописания. Если ее нажать, слова с ошибками будут подчеркнуты красной волнистой линией. Если щелкнуть левой кнопкой мыши по слову с ошибкой, то в контекстном меню будут предложены подсказки с вариантами правильного написания.

Совет. 

При подключении к TinyMCE настройки Яндекс.Спеллера можно передавать в URL-параметре options. Так, например, в запросе, отправленном на URL

http://speller.yandex.net/services/tinyspell?options=514

будут проигнорированы ошибки капитализации и не будут проверяться слова с цифрами (514 — это сумма опций IGNORE_CAPITALIZATION и IGNORE_DIGITS).