Wyvern

Introduction

Wyvern is built to provide the best content entry workflow possible. It is the first and only editor that integrates seemlessly with all of these popular modules: Structure, Pages, Taxonomy, NavEE*, SafeCracker/Channel Form, and Assets. It was the first ExpressionEngine editor to include a visual editing mode to see separations in your content blocks so your editors do not get confused and mangle the content.

Features

Support

Documentation versions

Installation

Prerequisites

Make sure your system meets the minimum requirements:

Installation Instructions

Update instructions

Update to EE3

Updating to EE3 requires some manual handling due some structure change. EE3 comes with a new concept of creating toolbars, which differ from EE2.

No data will be touched by the updater

EE2

The development for EE2 has been stopped per v2.0.0 The docs for EE2 can be found here

License

For every paid addon you need to validate your license in order to activate the module.

On a local environment, like *.dev *.local *.localhost *.test the license is valid for testing and building a new or existing sites. For every other domain, you need to have a valid license.

Process of validating

Once installed, you will asked to enter your license key. When you entered a valid license you can hit the "Save license" button. This will start validating your license and will redirect you to addons.reinos.nl to login into your account. You can also register a new account in this process.

Control panel overview

Once logged in, you are asked to use your current account or to login with another one.

Control panel overview

Using the current logged in account, the server will check all info related to your license and once valid, it will redirect you back to your site where you see either a success message or an error message.

Control panel overview

License field

This module is using a license field to check if the license for the module is valid or not. On addons.reinos.nl you can check your license and add your valid domains.

Control panel overview

In the Module CP you can enter then your license Control panel overview

When you enter a wrong license, the module will not work and it shows you an warning Control panel overview

Invalid license

Sometimes it happens that the license system says you have an invalid license. When this happens, make sure you have entered your domain url in your account, next to your license on addons.reinos.nl.

If this will not fix your license problem, please contact us on https://addons.reinos.nl/support

Global Settings

Path to custom CSS file

This is the path to the CSS file used to define custom styles used within the CKEditor field. If you define a CSS file, a JavaScript file is required below.

The default location is: /themes/user/wyvern/wysiwyg/wysiwyg.css

Path to custom CSS file

This is the path to the JavaScript file used to create the select menu in the toolbar. It will normally contain definitions to the styles defined in the CSS file above.

The default location is: /themes/user/wyvern/wysiwyg/wysiwyg.js

Obfuscate email addresses

This will obfuscate (encode) email addresses when used within Wyvern fields. This will automatically link email addresses too.

Enable display blocks by default

This will add dashed borders and visual markers to HTML containers.

Extra CKEditor Config Options

Set any additional CKEditor configuration options here. A list of possible options can be found in the CKEditor API. Set the options in the following format, one option per line and no quotes (the module will handle that for you). You can also use {site_url} or {base_url} as a variable to link extra files.

File Manager

Select which file manager to use. You can use the native EE File Manager, or Assets.

Linkable Templates

Select which templates you want to display in the Link Dialog Template list. Options are all templates template group custom range

Settings

Settings per field

Display Height

Height in px of the field

Is resizable

This makes the field resizable by default

Auto grow

This will make the field grow as you type

Toolbar

Select per membergroup the toolbar you want to show

Text direction

Set the text direction for the field

Specify the upload directory

Select the upload folder.

This will turn url and email into a link

Allow image URLs in Wyvern fields?

Allow image url in the field or not.

Enter mode

What is the tag for the enter

Custom CSS

In this field you can add your css that will only loaded for this field.

Merge custom css

By default the field CSS will load both the custom CSS as also the Global style (defined in the Module CP). By setting this setting to off it will only load the custom CSS that is defined for this field only.

Settings

Adding buttons to the toolbar

By default, Wyvern intentionally comes with 3 sets of CKEditor buttons.

Toolbar overview

However, you can create as many toolbars you want via the smart toolbar manager.

Toolbar manager

Template tags

Word limit

word_limit
Optional: Limit the content to a specific number of words.

suffix
Optional: If using the limit parmeter this allows you to add a string of text after the limited text, such as a "Read More" link.

{field_name word_limit="50" suffix="..."}

Character limit

character_limit
Optional: Limit the content to a specific number of words.

suffix
Optional: If using the limit parmeter this allows you to add a string of text after the limited text, such as a "Read More" link.

{field_name word_limit="50" suffix="..."}

Strip tags

strip_tags
Optional: Strip al tags for the wyvern field

allowable_tags
Optional: which tags are allowed

{field_name strip_tags="yes" allowable_tags="<p><a>"}

Image Class

Add a class to your images in your Wyvern field

{field_name image_class="img-responsive"}

CKeditor

Wyvern is powered by CKeditor 4.x.x. Also Wyvern will try to ship the latests release on every release of the module.

There are a lot of modules that are used with CKeditor and I will not document this here (of course ;-)) To find the right documentation you can navigate to this page where you can find all modules that are used inside the CKeditor

Switching from RTE

Wyvern support migration from (and to) RTE fieldtype. However, if you are coming from the RTE fieldtype you have the save the field settings twice.

Update from EE2

If you are updating a site from EE2 to EE3 you probably run into some trouble with Wyvern. To fix the issues, you will have to follow the following steps if you have some kind of PHP errors.

  1. Navigate to the following url http://yourdomain.com/system/index.php?/cp/addons/settings/wyvern/uninstall[?s=......] this wil uninstall only the addon tables and does not remove or change any of your entries.
  2. After you uninstall the module, you will be automatically return to the Addons overview page. From here, install Wyvern as you did with any module in EE
  3. Fill your license in the settings page to activate the Module
  4. Open your custom fieldtypes and resave every Wyvern field so the settings will be applied with the new format.

If this does not work, you can contact us via http://addons.reinos.nl/support

Javascript API

With the Javascript API, you are able to set the content for an wyvern instance.

Ready

Execute a callback function when the Wyvern editor is ready

REINOS_WYVERN.ready(id, function(){
    // you callback code
});

SetContent

Set the content of a Wyvern instance

REINOS_WYVERN.setContent({
    id: 'id-of-the-instance',
    content: 'override content',
    defaultContent: 'Some default text',
});

Practical use case for channel form, setting a default value

{exp:channel:form id="wyvern" channel="wyvern" return="site/channel-form" include_assets="yes"}
   <input name="title" type="text">
   <input name="url_title" type="text">

   <div class="wyvern-channel-form">{field:wyvern}</div>

   <input type="submit" value="Submit">
{/exp:channel:form}


<script>
    window.onload = function(){
        var id = document.querySelector('.wyvern-channel-form textarea').dataset.id;
        REINOS_WYVERN.ready(id, function(){
            REINOS_WYVERN.setContent({
                id: id,
                content: 'override content',
                defaultContent: 'Some default text',
            });
        });
    }
</script>

Changelog

5.3.3 (19-01-2022)

5.3.2 (21-09-2021)

5.3.1 (17-09-2021)

5.3.0 (03-08-2021)

5.2.0 (23-04-2021)

5.1.5 (17-03-2021)

5.1.4 (09-03-2021)

5.1.3 (17-02-2021)

5.1.2 (10-02-2021)

5.1.1 (22-01-2021)

5.1.0 (19-01-2021)

5.0.4 (31-12-2020)

5.0.3 (30-12-2020)

5.0.2 (22-12-2020)

5.0.1 (18-12-2020)

Breaking changes

5.0.0 (08-12-2020)

4.2.1 (06-10-2020)

4.2.0 (23-09-2020)

4.1.13 (05-08-2020)

4.1.12 (28-01-2020)

4.1.11 (12-12-2019)

4.1.10 (09-11-2019)

4.1.9 (04-11-2019)

4.1.8 (30-10-2019)

4.1.7 (13-10-2019)

4.1.6 (18-09-2019)

4.1.5 (16-09-2019)

4.1.4 (03-09-2019)

4.1.3 (22-07-2019)

4.1.2 (10-07-2019)

4.1.1 (08-07-2019)

4.1.0 (12-06-2019)

4.0.0 (08-04-2019)

*Note: There is a change you will have to validate the license again

3.5.0 (06-03-2019)

3.4.2 (12-01-2019)

3.4.1 (24-12-2018)

3.4.0 (19-12-2018)

3.3.0 (05-12-2018)

3.2.2 (31-10-2018)

3.2.1 (29-08-2018)

3.2.0 (03-08-2018)

3.1.2 (13-06-2018)

3.1.1 (09-06-2018)

3.1.0 (17-04-2018)

*Note: you need to add your license key and license email from addons.reinos.nl in order to validate your license and add a valid domain url in your license field on addons.reinos.nl/profile/licenses or the module will not work on a live site. Also make sure you have read the license section in the documentation

3.0.0 (04-12-2017)

2.2.0 (10-11-2017)

2.1.2 (09-10-2017)

2.1.1 (02-10-2017)

2.1.0 (29-09-2017)

2.0.1 (26-07-2017)

2.0.0b (18-02-2017)

1.8.0 (13-01-2017)