Итак, для моего шаблона я создаю блок кода, который запускает пользовательские «Модули».По сути, это пользовательский тип записей с полями, встроенными в ACF.Каждый из этих модулей имеет свой собственный шаблон Blade (например, /resources/views/modules/brandwindow.blade.php).
Я также создал шаблон Blade для пользовательского типа записи, называемого «Модульная страница».В этом шаблоне я обрабатываю все вызовы для каждого модуля, вызываемого в цикле.Однако я хочу иметь возможность обрабатывать этот логин в контроллере.Итак, я создал Контроллер под названием «LoadModules», который будет обрабатывать этот запрос.
У меня возникли трудности с вызовом шаблона Blade из контроллера.В функции GetModules () я перебираю повторитель ACF, чтобы увидеть, какой модуль мне нужно загрузить, и затем снабжаю все соответствующие поля другим контроллером, специфичным для этого модуля (например, если module = 'bwindow', вызывать BrandWindow-> BrandWindowFields).Это возвращает массив, который я могу затем передать в View.
Я добавил класс View в верхнюю часть контроллера (как в Laravel), но я почти уверен, что делаючто-то здесь не так.Я получаю следующую ошибку: класс 'View' не найден в .. \ app \ Controllers \ LoadModules.php в строке 25
Вот мой код контроллера:
public static function GetModules()
{
$brand_window_loader = new BrandWindow;
$module_array = get_sub_field('content_type');
if ($module_array == 'bwindow') {
// Do Brand Window Stuff
$windows = $brand_window_loader->GetBrandWindows();
$output = '';
foreach ( $windows as $window ){
$feild_array = $brand_window_loader->BrandWindowFields($window);
$output .= View::make('modules.brandwindow', $feild_array);
}
return $output;
} elseif ($module_array == 'blogfeed') {
// Do Blog Feed Stuff
return $module_array;
}
}
В строке 25 выдается ошибка:
$output .= View::make('modules.brandwindow', $feild_array);
$ brand_window_loader-> BrandWindowFields ($ window) - это просто массивключевые значения, которые он извлекает из ACF, используя идентификатор сообщения.
'title' => 'Title',
'sub_text' => 'Sub Text',
'url' => 'http://example.com'
ETC.
Ошибка, очевидно, связана с отсутствием класса «Вид», поэтому мне интересно,ve namespaced или класс View не существует с Sage 9 / Bedrock.Если это правда, как лучше всего включить шаблон Blade из контроллера?
Спасибо