Функция сохранения вывода компонента в переменную для GetSimple CMS
В GetSimple CMS 3.3.x для вывода компонента в шаблоне оформления страницы используется функция get_component()
. Но в ряде случаев вместо вывода может потребоваться сохранение содержания компонента в переменной. Если такая задача встречается более одного раза, то удобнее использовать собственную функцию.
Для этого разместите следующий фрагмент PHP кода в файле functions.php вашей темы оформления.
/**
* Return Component
*
* Returns a components output
*
* @param string $id component id
* @return string component buffered output
*/
function return_component($id) {
ob_start();
get_component($id);
return ob_get_clean();
}
Теперь содержание компонента может быть сохранено в переменной для дальнейшего использования следующим образом.
$out = return_component('my-component');
// Обработка вывода компонента my-component
$out = strtolower($out);
echo $out;
Следует иметь в виду, что в GetSimple CMS 3.4.x существует стандартная функция return_component()
, работающая аналогично рассмотренной. Поэтому для обеспечения переносимости кода темы оформления между различными версиями GetSimple CMS, перед определением функции следует произвести проверку существования функции.
if (!function_exists('return_component')) {
function return_component($id) {}
}