Installing TinyMCE with Composer

Install TinyMCE using the Composer package manager

TinyMCE 6 is a powerful and flexible rich text editor that can be embedded in web applications. This quick start covers how to add a TinyMCE editor to a web page using the Composer package manager.

To add TinyMCE to a PHP project using Composer, run the following on a command line:

composer require tinymce/tinymce

The location of the main TinyMCE script will be: vendor/tinymce/tinymce/tinymce.min.js. Ensure the tinymce directory containing the tinymce.min.js file is accessible for the target page or application by either:

  • Using a webserver route, or

  • Copying the tinymce directory to a public folder using a build tool.

To deploy TinyMCE from a .zip archive:

  1. Download TinyMCE.

  2. Unzip the archive into a public folder of your webserver, such as:

    unzip tinymce_latest.zip -d /path/to/webserver/public/

    The location of the main TinyMCE script will be: /path/to/webserver/public/tinymce/js/tinymce/tinymce.min.js.

Include the TinyMCE script

Include the following line of code in the <head> of an HTML page.

<script src="/path/or/uri/to/tinymce.min.js" referrerpolicy="origin"></script>

Initialize TinyMCE as part of a web form

Initialize TinyMCE 6 on any element (or elements) on the web page by passing an object containing a selector value to tinymce.init(). The selector value can be any valid CSS selector.

For example: To replace <textarea id="mytextarea"> with a TinyMCE 6 editor instance, pass the selector '#mytextarea' to tinymce.init().

For example:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <script src="/path/or/uri/to/tinymce.min.js" referrerpolicy="origin"></script>
    <script>
      tinymce.init({
        selector: '#mytextarea'
      });
    </script>
  </head>

  <body>
    <h1>TinyMCE Quick Start Guide</h1>
    <form method="post">
      <textarea id="mytextarea">Hello, World!</textarea>
    </form>
  </body>
</html>

Adding this content to an HTML file and opening it in a web browser will load a TinyMCE editor, such as:

  • TinyMCE

  • HTML

  • JS

  • Edit on CodePen

<textarea id="default">Hello, World!</textarea>
tinymce.init({
  selector: 'textarea#default'
});

Save the content from the editor

To retrieve content from the editor, either process the content with a form handler or use the getContent API.

If you use a form handler, once the <form> is submitted, TinyMCE 6 will POST the content in the same way as a normal HTML <textarea>, including the HTML elements and inline CSS of the editor content. The host’s form handler can process the submitted content in the same way as content from a regular <textarea>.

Next Steps

For information on: