Redactor: Opción o gancho para eliminar "Enlace a la entrada" del menú desplegable

Creado en 12 jun. 2019  ·  3Comentarios  ·  Fuente: craftcms/redactor

Sería bueno si pudiéramos eliminar la opción "Enlace a la entrada" del menú desplegable. Lo mismo ocurre con "Enlace a la categoría".

Ω 2019-06-12 at 12 49 47 PM

Ni siquiera me importa _cómo_ está implementado (si es una opción de campo, configuración de Redactor o requiere un enlace de módulo). Pero sería bueno tener un poco más de control sobre lo que los usuarios pueden vincular.

Vale la pena señalar que esta no es una solicitud nueva ...

https://craftcms.stackexchange.com/questions/17567/how-to-remove-link-to-category-from-redactor

Comentario más útil

¡Dulce, funcionó a las mil maravillas!

use craft\redactor\events\RegisterLinkOptionsEvent;
use craft\redactor\Field as RedactorField;
use yii\base\Event;

// Remove "Link to..." Redactor links
Event::on(
    RedactorField::class,
    RedactorField::EVENT_REGISTER_LINK_OPTIONS,
    function(RegisterLinkOptionsEvent $event) {

        // Only apply to a specific Redactor config
        if ('Message.json' == $event->sender->redactorConfig) {

            // Remove Craft's injected links
            $event->linkOptions = [];

        }

    }
);

Usé $event->sender->redactorConfig para identificar la configuración específica de Redactor a la que quería apuntar.

Si solo desea eliminar _una fuente específica_, puede seleccionarla manualmente. Como referencia, así es como Craft configura esos enlaces adicionales ...

[
    0 => [
        'optionTitle' => 'Link to an entry'
        'elementType' => 'craft\\elements\\Entry'
        'refHandle' => 'entry'
        'sources' => [
            0 => 'section:19870dc1-a51e-4134-bd5c-de55b11ddf2c'
            1 => 'section:eca834a6-d8a1-4797-a552-e310f946eafb'
            2 => 'section:128d6e4e-d02f-4247-83eb-a3841ca7ade5'
            3 => 'section:c422ed50-9844-4531-854f-f8c505d92a05'
        ]
    ]
    1 => [
        'optionTitle' => 'Link to a category'
        'elementType' => 'craft\\elements\\Category'
        'refHandle' => 'category'
        'sources' => [
            0 => 'group:95e58ebd-aba6-48b8-adaf-ebae28ffbb7a'
            1 => 'group:9bd9e19d-e53a-46eb-af47-2ce9a12a0ade'
        ]
    ]
]

¡Gracias @ andris-sevcenko! 🍺

Todos 3 comentarios

Hablando de ganchos de módulo, ya puede usar el evento REGISTER_LINK_OPTIONS y simplemente eliminar algunas de las opciones de la matriz $event->linkOptions . (https://github.com/craftcms/redactor/blob/v2/src/Field.php#L563)

¡Dulce, funcionó a las mil maravillas!

use craft\redactor\events\RegisterLinkOptionsEvent;
use craft\redactor\Field as RedactorField;
use yii\base\Event;

// Remove "Link to..." Redactor links
Event::on(
    RedactorField::class,
    RedactorField::EVENT_REGISTER_LINK_OPTIONS,
    function(RegisterLinkOptionsEvent $event) {

        // Only apply to a specific Redactor config
        if ('Message.json' == $event->sender->redactorConfig) {

            // Remove Craft's injected links
            $event->linkOptions = [];

        }

    }
);

Usé $event->sender->redactorConfig para identificar la configuración específica de Redactor a la que quería apuntar.

Si solo desea eliminar _una fuente específica_, puede seleccionarla manualmente. Como referencia, así es como Craft configura esos enlaces adicionales ...

[
    0 => [
        'optionTitle' => 'Link to an entry'
        'elementType' => 'craft\\elements\\Entry'
        'refHandle' => 'entry'
        'sources' => [
            0 => 'section:19870dc1-a51e-4134-bd5c-de55b11ddf2c'
            1 => 'section:eca834a6-d8a1-4797-a552-e310f946eafb'
            2 => 'section:128d6e4e-d02f-4247-83eb-a3841ca7ade5'
            3 => 'section:c422ed50-9844-4531-854f-f8c505d92a05'
        ]
    ]
    1 => [
        'optionTitle' => 'Link to a category'
        'elementType' => 'craft\\elements\\Category'
        'refHandle' => 'category'
        'sources' => [
            0 => 'group:95e58ebd-aba6-48b8-adaf-ebae28ffbb7a'
            1 => 'group:9bd9e19d-e53a-46eb-af47-2ce9a12a0ade'
        ]
    ]
]

¡Gracias @ andris-sevcenko! 🍺

Hola,

En el enlace a una entrada, ¿sabría cómo filtrar las entradas de la sección según la categoría etiquetada del usuario? Solo quiero ver todas las entradas que están etiquetadas en esa categoría.

Muchísimas gracias.

¿Fue útil esta página
0 / 5 - 0 calificaciones