dimayakovlev.ru


Функция для получения значения поля страницы в GetSimple CMS

Возможность прямого редактирования XML-документов страниц GetSimple CMS была рассмотрена ранее. При этом важное значение имеет не только возможность добавления собственных элементов в XML-документы страниц, но и получение значений таких элементов.

В качестве примера для получения значения нестандартных элементов XML-документов в шаблонах оформления страниц, была использована функция retunPageField(), использующая при своей работе кэшированные данные страниц. Для получения значения элемента XML-документа текущей страницы напрямую, без использования кэша, как это реализовано в стандартных функциях, предназначенных для использования в шаблонах оформления, можно использовать собственную функцию.

/**
 * Возвращает значение поля страницы
 *
 * @uses $data_index
 *
 * @param string $field Имя поля страницы
 * @param bool $echo Управляет результатом выполнения функции: true - печать, false - возврат результата. Значение по умолчанию true
 * @return string Печатает или возвращает результат в зависимости от значения $echo
 */
function get_page_field($field, $echo = true)
{
  global $data_index;
  $field = (string)$field;
  if (!$field) return '';
  $val = strip_decode($data_index->$field);
  if ($echo) {
    echo $val;
  } else {
    return $val;
  }
}

Рассмотренная функция get_page_field() возвращает значение запрашиваемого элемента непосредственного из глобальной переменной $data_index, содержащей XML-документ текущей страницы.

Для использования приведённой функции, её следует объявить в файле functions.php текущей темы оформления веб-сайта.