Добрый день.
- код темы копирую в папку themes/views/layouts/,
Правильней будет сделать структуру такой:
themes/name_theme/layouts -> шаблон темы (main.php), с меню, шапкой и подвалом.
themes/name_theme/site -> виды темы
themes/name_theme/assets -> ресурсы (css, js и т.д.)
themes/name_theme/img -> изображения
Создаёте отдельный файл, MyTheme (например), который наследуется от AssetBundle и подключаете в нём файлы ресурсов. Указываете путь к Вашим ресурсам
public $sourcePath = '@app/themes/portfolio/assets';
Кладёте рядом с AssetBundle. В шаблоне темы подключаете этот файл.
use app\assets\MyTheme;
MyTheme::register($this);
В файле конфигурации подключаете свою тему:
'view' => [
'theme' => [
'basePath' => '@app/themes/name_theme',
'baseUrl' => '@web/themes/name_theme',
'pathMap' => [
'@app/views' => '@app/themes/name_theme'
]
]
],
Проблем не должно возникать с подключением bootstrap или скриптов. Но если Вы не используете в своей теме bootstrap, то лучше вообще убрать эту зависимость.