Так что я решил дать codeigniter шанс и преобразовать свой существующий сайт, который полностью настроен на php, в среду codeigniter.Но пытаясь выяснить, как сделать это лучше всего в codeigniter, что я делал со своего оригинального сайта.На оригинальном сайте человек посетит страницу, такую как index.php.В коде index.php он разбит на следующие разделы (это очень простой пример):
index.php:
<html>
<head></head>
<body>
<div id="top">{$SECTION1}</div>
<div id="main">{$SECTION2}</div>
<div id="bottom">{$SECTION3}</div>
</body>
</html>
Затем в моем основном php-файле, который включенна каждой странице я запускаю запрос, который захватывает все «модули», которые назначены каждому разделу выше для страницы index.php.Итак, дайте мне все модули, которые назначены для {$ SECTION1}, {$ SECTION2} и {$ SECTION3} для index.php.Модуль в моей исходной системе - это просто php-файл, который выполняет определенную работу, поэтому у меня может быть модуль latest_story.php, и в сценарии он получает последние 10 историй из базы данных и отображает результаты.
latest_story.php
include('class/story/story_class.php');
$story = new Story($databaseconn);
$latest_story = $story->findLatestStory(10);
//If results back from $latest_story loop through it
//and display it however I want
Затем, используя буферизацию вывода, я выполняю каждый модуль, затем беру выводимую информацию из каждого модуля, назначенного каждому разделу, и заменяю этот раздел выводимыми данными.
Может ли это бытьсделано в codeigniter?Если так, то может ли кто-нибудь указать мне правильное направление при выполнении этого в codeigniter?
РЕДАКТИРОВАТЬ
Чтобы дать более четкое представление о том, что я делаю в исходной системе Iвыполнить запрос на каждой странице, чтобы определить, какие «модули» нужно захватить для текущей страницы, которую просматривает человек, затем выполнить этот код
foreach($page_modules AS $curr_module)
{
$module_section = intval($curr_module->section);
$module_file = $global_function->cleanData($curr_module->modfile);
$module_path = MODS .$module_file;
if(is_file($module_path))
{
ob_start();
include($module_path);
${'global_pagemod' .$module_section} .= ob_get_contents();
ob_end_clean();
}
}
Затем я просто беру каждую переменную, созданную для каждого раздела, и заменяю {$РАЗДЕЛ [n]} с этой переменной в шаблоне.
ДОПОЛНИТЕЛЬНОЕ РЕДАКТИРОВАНИЕ
Я пытаюсь создать "модули", которые выполняют конкретные задачи изатем в бэкэнде можно будет динамически размещать эти модули в разных разделах сайта.Я думаю, вы можете сказать, что это как WordPress, но более простой подход.В Wordpress вы можете добавить модуль, а затем назначить его своим страницам в левом, среднем или правом столбце.Я пытаюсь сделать то же самое.