/** * * @param \RokSprocket_ItemCollection $items * * @return string the html to be rendered */ public function render(RokSprocket_ItemCollection $items) { // get the layout $layout_name = $this->params->get('layout'); $layout_service = $this->container[sprintf('roksprocket.layouts.%s.service', $layout_name)]; // add the layout classpath $layout_lib_path = $this->container[sprintf('roksprocket.layouts.%s.library.paths', $layout_name)]; foreach ($layout_lib_path as $lib_path) { RokCommon_ClassLoader::addPath($lib_path); } /** @var $i18n RokCommon_I18N */ $layout_lang_paths = $this->container[sprintf('roksprocket.layouts.%s.paths', $layout_name)]; foreach ($layout_lang_paths as $lang_path) { if (defined('ABS_PATH')) { rs_load_plugin_textdomain('wp_roksprocket_layout_' . $layout_name, $lang_path . '/language'); $i18n->addDomain('wp_roksprocket_layout_' . $layout_name); } } /** @var $layout RokSprocket_Layout */ $layout = $this->container->{$layout_service}; $layout->initialize($items, $this->params); $this->renderGlobalHeaders(); $layout->renderLayoutHeaders(); $layout->renderInstanceHeaders(); ob_start(); echo $layout->renderBody(); return ob_get_clean(); }
protected function loadLayoutLanguage($layout) { $container = RokCommon_Service::getContainer(); /** @var $i18n RokCommon_I18N_Wordpress */ $i18n = $container->i18n; $layout_lang_paths = $container[sprintf('roksprocket.layouts.%s.paths', $layout)]; foreach ($layout_lang_paths as $lang_path) { if (is_dir($lang_path . '/language')) { rs_load_plugin_textdomain('wp_roksprocket_layout_' . $layout, $lang_path . '/language'); } } $i18n->addDomain('wp_roksprocket_layout_' . $layout); }