Bonjour,
Je me suis créer un petit plugin qui va me permetre de minifier mon code html sur cakephp 3. J'ai suivi le petit didacticiel sur la documentation sur comment créer un plugin Le problème est qui ne réussit pas à charger la classe Helper dans ma class MinifyHelper de mon plugin Cake3MinifyHtml

Fatal error: [Cake\View\Exception\MissingHelperException] Helper class MinifyHelper could not be found. 

Voci mon code source de ma classe MinifyHelper

<?php
namespace Cake3MinifyHtml\View\Helper;

use Cake\View\Helper;
use Cake\View\View;

/**
 * Minify helper
 */
class MinifyHelper extends Helper
{

    /**
     * Default configuration.
     *
     * @var array
     */
    protected $_defaultConfig = [

    ];

    public function __construct(View $View, array $config = [])
    {
        parent::__construct($View, $config);
    }

}

Je charge le Helper comme ceci dans mon application :`

$this->loadHelper('Cake3MinifyHtml.Minify');

Je ne comprend pasd'où vient cette erreur.

Merci

6 réponses


lakamark
Auteur
Réponse acceptée

Merci Finalement j'ai réussit avec ceci :

Plugin::loadAll([
    'Cake3MinifyHtml' => ['bootstrap' => false, 'routes' => true],
]);

Bonsoir.
Pourrais-tu donner un peu plus de précisions ?
Ton plugin, est-il situé dans le dossier plugins de ton application ?
Si oui, l'as-tu chargé dans ton fichier bootstrap.php et as-tu bien fait un dumpautoload/dump-autoload avec Composer comme il est précisé/conseillé sur la documentation de CakePHP ?

lakamark
Auteur

Bonjour
J'ai bien charger mon plugin dans le bootstap.php de mon application :

Plugin::loadAll([
    'Media' => ['bootstrap' => false, 'routes' => true],
    'Cake3MinifyHtml' => ['routes' => true]
]);

Le dumpautoload je fait sur mon application ou dans mon plugin?

Le dumpautoload je fait sur mon application ou dans mon plugin?

Dans l'application, à la racine du projet.

lakamark
Auteur

J'ai refait le plugin, ensuit j'ai fait un dumpautoload à la racine de mon application. Cakephp me retourne toujours la même erreur.

Hello,
Et avec ceci ?

Plugin::load('Cake3MinifyHtml', ['autoload' => true]);