Вопрос или проблема
Я пытаюсь создать стандартный блок Gutenberg для WordPress, но не могу пройти первый шаг. Я очистил кеш npm, но все равно получаю ту же ошибку: ‘wp-scripts’ не распознается как внутренняя или внешняя команда, исполняемая программа или пакетный файл.
Папка node_modules создается со всеми зависимостями wp-scripts, но все папки пустые? Очень странно, и я не уверен, что мне здесь делать.
PS C:\Users\MyPath> npx @wordpress/create-block@latest
Давайте настроим ваш плагин WordPress с блоками:
? Вариант шаблона, который использовать для этого блока: динамический
? Слаг блока, используемый для идентификации (также имя выходной папки): myblocks
? Внутреннее пространство имен для названия блока (что-то уникальное для ваших продуктов): myblocks
? Отображаемое название для вашего блока: Мои Блоки
? Краткое описание вашего блока (по желанию): Пример блока, созданного с помощью инструмента Create Block.
? Дашикон, чтобы упростить идентификацию вашего блока (по желанию): смайлик
? Название категории, чтобы помочь пользователям просматривать и находить ваш блок: тема
? Хотите ли вы настроить плагин WordPress? Нет
Создание нового плагина WordPress в директории myblocks.
Создание файла "block.json".
Создание файла "package.json".
Установка пакета `@wordpress/scripts`. Это может занять несколько минут...
Форматирование файлов JavaScript.
C:\Users\User\AppData\Local\npm-cache\_npx\9444c7de6ab42aae\node_modules\execa\lib\error.js:59
error = new Error(message);
^
Ошибка: Команда завершилась с кодом 1: npm run format
'wp-scripts' не распознается как внутренняя или внешняя команда,
исполняемая программа или пакетный файл.
> [email protected] формат
> wp-scripts формат
at makeError (C:\Users\User\AppData\Local\npm-cache\_npx\9444c7de6ab42aae\node_modules\execa\lib\error.js:59:11)
at handlePromise (C:\Users\User\AppData\Local\npm-cache\_npx\9444c7de6ab42aae\node_modules\execa\index.js:114:26)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async module.exports (C:\Users\User\AppData\Local\npm-cache\_npx\9444c7de6ab42aae\node_modules\@wordpress\create-block\lib\init-wp-scripts.js:25:2)
at async module.exports (C:\Users\User\AppData\Local\npm-cache\_npx\9444c7de6ab42aae\node_modules\@wordpress\create-block\lib\scaffold.js:156:4)
at async Command.<anonymous> (C:\Users\User\AppData\Local\npm-cache\_npx\9444c7de6ab42aae\node_modules\@wordpress\create-block\lib\index.js:194:6) {
shortMessage: 'Команда завершилась с кодом 1: npm run format',
command: 'npm run format',
exitCode: 1,
signal: undefined,
signalDescription: undefined,
stdout: '\n> [email protected] формат\n> wp-scripts формат\n',
stderr: "'wp-scripts' не распознается как внутренняя или внешняя команда,\r\n" +
'исполняемая программа или пакетный файл.',
failed: true,
timedOut: false,
isCanceled: false,
killed: false
}
Node.js v20.15.0
Ответ или решение
Если вы столкнулись с ошибкой 'wp-scripts' is not recognized as an internal or external command
при создании блока для Gutenberg в WordPress, это может быть вызвано несколькими причина. Давайте рассмотрим шаги, которые могут помочь вам решить эту проблему.
Шаг 1: Убедитесь, что у вас установлен Node.js и npm
Проверьте, установлены ли у вас Node.js и npm, а также корректные версии:
node -v
npm -v
Для работы с @wordpress/scripts
вам нужно использовать Node.js версии 14 или выше.
Шаг 2: Убедитесь, что пакет установлен корректно
Иногда пакет @wordpress/scripts
может быть установлен некорректно. Попробуйте выполнить следующие команды в каталоге вашего плагина:
-
Удалите папку
node_modules
и файлpackage-lock.json
(если он существует):rm -rf node_modules package-lock.json
-
Установите зависимости заново:
npm install
Шаг 3: Проверьте конфигурацию окружения
Убедитесь, что вы правильно настроили переменные окружения для командной строки. Для Windows добавьте путь к npm в PATH:
- Найдите, где установлен npm. Это может быть в папке типа
C:\Program Files\nodejs\
. - Перейдите в "Панель управления" -> "Система" -> "Дополнительные параметры системы" -> "Переменные среды".
- В разделе "Системные переменные" найдите переменную
Path
и добавьте путь к вашей папке npm.
Шаг 4: Установка глобально
Если ошибка остается, попробуйте установить @wordpress/scripts
глобально:
npm install -g @wordpress/scripts
После установки глобально воспробуйте снова выполнить npx @wordpress/create-block@latest
.
Шаг 5: Проверка версий зависимостей
Иногда ошибки могут быть вызваны конфликтующими версиями зависимостей. Убедитесь, что все пакеты актуальны, и вы используете совместимые версии.
Шаг 6: Обновление npm
Обновите npm до последней версии:
npm install -g npm
Шаг 7: Проверка исполняемых файлов
Возможно, некоторые исполняемые файлы были удалены или повреждены. Чтобы убедиться в их наличии, выполните:
npx wp-scripts --version
Если команда выполнится без ошибок и выдаст версию, значит wp-scripts
установлен правильно.
Если все вышеперечисленные шаги не помогли решить вашу проблему, рассмотрите возможность создания нового проекта и пошагового выполнения команды создания блока, чтобы исключить конфликты и ошибки с предыдущими настройками.
Надеюсь, эти шаги помогут вам решить вашу проблему с wp-scripts
и успешно создать блок для Gutenberg. Если у вас есть дополнительные вопросы, пожалуйста, дайте знать!