本文整理汇总了PHP中Pages::get_pages方法的典型用法代码示例。如果您正苦于以下问题:PHP Pages::get_pages方法的具体用法?PHP Pages::get_pages怎么用?PHP Pages::get_pages使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Pages
的用法示例。
在下文中一共展示了Pages::get_pages方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: init
/**
*
*
*/
public static function init()
{
self::$ci =& get_instance();
// Models
self::$ci->load->model(array('article_model', 'page_model', 'url_model'), '', TRUE);
// Helpers
self::$ci->load->helper('text');
// Pages, Page
self::register('pages', Pages::get_pages());
self::register('page', self::get_current_page());
// Current page
$page = self::registry('page');
// Last option : Even the 404 wasn't found...
if (empty($page['id_page'])) {
echo 'Not found';
die;
}
if (!empty($page['link'])) {
// External redirect
if ($page['link_type'] == 'external') {
redirect($page['link']);
die;
} else {
self::$ci->load->helper('array_helper');
// Page
if ($page['link_type'] == 'page') {
if ($page = array_get(self::registry('pages'), $page['link_id'], 'id_page')) {
redirect($page['absolute_url']);
}
}
// Article
if ($page['link_type'] == 'article') {
if (count(self::get_uri_segments()) == 1) {
redirect($page['absolute_url']);
}
}
}
}
// Can we get one article from the URL ?
$entity = self::get_entity();
if ($entity['type'] == 'article') {
$article = self::$ci->article_model->get_by_id($entity['id_entity'], Settings::get_lang());
$articles = array($article);
TagManager_Article::init_articles_urls($articles);
$article = $articles[0];
}
if (!empty($article)) {
self::register('article', $article);
}
// Event : On before render
$event_data = array('entity' => $entity, 'article' => self::registry('article'));
Event::fire('Page.render.before', $event_data);
self::$view = self::_get_page_view($page);
self::render();
}
示例2: tag_navigation
/**
* Navigation tag definition
* @usage
*
*/
public static function tag_navigation(FTL_Binding $tag)
{
$cache = $tag->getAttribute('cache', TRUE);
// Tag cache
if ($cache == TRUE && ($str = self::get_cache($tag)) !== FALSE) {
return $str;
}
// Final string to print out.
$str = '';
// Helper / No helper ?
$helper = $tag->getAttribute('helper');
// Get the asked lang if any
$lang = $tag->getAttribute('lang');
// Menu : Main menu by default
$menu_name = $tag->getAttribute('menu', 'main');
$id_menu = 1;
foreach (self::registry('menus') as $menu) {
if ($menu_name == $menu['name']) {
$id_menu = $menu['id_menu'];
}
}
// Navigation level. FALSE if not defined
$asked_level = $tag->getAttribute('level', FALSE);
// Display hidden navigation elements ?
$display_hidden = $tag->getAttribute('display_hidden', FALSE);
// Current page
$current_page = self::registry('page');
// Attribute : active CSS class
$active_class = $tag->getAttribute('active_class', 'active');
if (strpos($active_class, 'class') !== FALSE) {
$active_class = str_replace('\'', '"', $active_class);
}
// Pages : Current lang OR asked lang code pages.
$global_pages = !is_null($lang) && Settings::get_lang() != $lang ? Pages::get_pages($lang) : self::registry('pages');
// Add the active class key
$id_current_page = !empty($current_page['id_page']) ? $current_page['id_page'] : FALSE;
$active_pages = Structure::get_active_pages($global_pages, $id_current_page);
foreach ($global_pages as &$page) {
$page['title'] = $page['nav_title'] != '' ? $page['nav_title'] : $page['title'];
// Add the active_class key
$page['active_class'] = in_array($page['id_page'], $active_pages) ? $active_class : '';
$page['is_active'] = in_array($page['id_page'], $active_pages);
$page['id_navigation'] = $page['id_page'];
}
// Filter by menu and asked level : We only need the asked level pages !
// $pages = array_filter($global_pages, create_function('$row','return ($row["level"] == "'. $asked_level .'" && $row["id_menu"] == "'. $id_menu .'") ;'));
$pages = array();
$parent_page = array();
// Only conserve the menu asked pages
foreach ($global_pages as $key => $p) {
if ($p['id_menu'] != $id_menu) {
unset($global_pages[$key]);
}
}
// Asked Level exists
if ($asked_level !== FALSE) {
foreach ($global_pages as $p) {
if ($p['level'] == $asked_level && $p['id_menu'] == $id_menu) {
$pages[] = $p;
}
}
} else {
foreach ($global_pages as $p) {
// Child pages of id_subnav
if ($p['id_parent'] == $current_page['id_subnav']) {
$pages[] = $p;
}
// Parent page is the id_subnav page
if ($p['id_page'] == $current_page['id_subnav']) {
$parent_page = $p;
}
}
}
// Filter on 'appears'=>'1'
if ($display_hidden == FALSE) {
$pages = array_values(array_filter($pages, array('TagManager_Page', '_filter_appearing_pages')));
}
// Get the parent page from one level upper
if ($asked_level > 0) {
$parent_pages = array();
foreach ($global_pages as $p) {
if ($p['level'] == $asked_level - 1) {
$parent_pages[] = $p;
}
}
foreach ($parent_pages as $p) {
if ($p['active_class'] != '') {
$parent_page = $p;
}
}
}
// Filter the current level pages on the link with parent page
if (!empty($parent_page)) {
$o_pages = $pages;
$pages = array();
//.........这里部分代码省略.........
示例3: init
/**
*
*
*/
public static function init()
{
// parent::init('Page');
self::$ci =& get_instance();
// Article model
self::$ci->load->model('article_model');
self::$ci->load->model('page_model');
// Helpers
self::$ci->load->helper('text');
$uri = preg_replace("|/*(.+?)/*\$|", "\\1", self::$ci->uri->uri_string);
self::$uri_segments = explode('/', $uri);
// Get pages and add them to the context
self::$context->globals->pages = Pages::get_pages();
// Pagination URI
// $uri_config = self::$ci->config->item('special_uri');
// $uri_config = array_flip($uri_config);
// self::pagination_uri = $uri_config['pagination'];
// Set self::$context->globals->page
self::add_globals();
// Current page
$page = self::$context->globals->page;
if (!empty($page['link'])) {
// External redirect
if ($page['link_type'] == 'external') {
redirect($page['link']);
die;
} else {
self::$ci->load->helper('array_helper');
// Page
if ($page['link_type'] == 'page') {
if ($page = array_get(self::$context->globals->pages, $page['link_id'], 'id_page')) {
redirect($page['absolute_url']);
}
}
// Article
if ($page['link_type'] == 'article') {
if (count(self::$uri_segments) == 1) {
redirect($page['absolute_url']);
}
/*
$rel = explode('.', $page['link_id']);
if ($article_page = array_get(self::$context->globals->pages, $rel[0], 'id_page'))
{
$articles = self::$ci->article_model->get_lang_list
(
array('id_article' => $rel[1]),
Settings::get_lang()
);
self::init_articles_urls($articles);
$article = array_shift($articles);
if ($article['url'] != current_url())
{
redirect($article['url']);
}
}
*/
}
}
}
// Can we get one article from the URL ?
$article = self::get_article_from_url();
if (!empty($article)) {
self::$_article = $article;
$page['view'] = $page['view_single'] != false ? $page['view_single'] : $page['view'];
}
self::$view = $page['view'] != false ? $page['view'] : Theme::get_default_view('page');
self::render();
}
示例4: tag_navigation
/**
* Navigation tag definition
* @usage
*
*/
public static function tag_navigation($tag)
{
$cache = isset($tag->attr['cache']) && $tag->attr['cache'] == 'off' ? FALSE : TRUE;
$error_message = '';
// Tag cache
if ($cache == TRUE && ($str = self::get_cache($tag)) !== FALSE) {
return $str;
}
// Final string to print out.
$str = '';
// Helper / No helper ?
// $tag->attr['no_helper'] : Will disapear in next versions... replaced by $tag->attr['helper']
$no_helper = isset($tag->attr['no_helper']) ? TRUE : FALSE;
$helper = isset($tag->attr['helper']) ? $tag->attr['helper'] : 'navigation';
// Get the asked lang if any
$lang = isset($tag->attr['lang']) ? $tag->attr['lang'] : FALSE;
if ($helper == 'false' or $no_helper == TRUE) {
$helper = FALSE;
}
// Menu : Main menu by default
$menu_name = isset($tag->attr['menu']) ? $tag->attr['menu'] : 'main';
$id_menu = 1;
foreach ($tag->globals->menus as $menu) {
if ($menu_name == $menu['name']) {
$id_menu = $menu['id_menu'];
}
}
// Navigation level. FALSE if not defined
$asked_level = isset($tag->attr['level']) ? $tag->attr['level'] : FALSE;
// Display hidden navigation elements ?
$display_hidden = isset($tag->attr['display_hidden']) ? TRUE : FALSE;
// Current page
$current_page =& $tag->locals->page;
// Attribute : active CSS class
$active_class = isset($tag->attr['active_class']) ? $tag->attr['active_class'] : 'active';
if (strpos($active_class, 'class') !== FALSE) {
$active_class = str_replace('\'', '"', $active_class);
}
/*
* Getting menu data
*
*/
// Pages : Current lang OR asked lang code pages.
$global_pages = $lang !== FALSE && Settings::get_lang() != $lang ? Pages::get_pages($lang) : $tag->globals->pages;
// Add the active class key
$id_current_page = !empty($current_page['id_page']) ? $current_page['id_page'] : FALSE;
$active_pages = Structure::get_active_pages($global_pages, $id_current_page);
foreach ($global_pages as &$page) {
// Add the active_class key
$page['active_class'] = in_array($page['id_page'], $active_pages) ? $active_class : '';
}
// Filter by menu and asked level : We only need the asked level pages !
// $pages = array_filter($global_pages, create_function('$row','return ($row["level"] == "'. $asked_level .'" && $row["id_menu"] == "'. $id_menu .'") ;'));
$pages = array();
$parent_page = array();
// Asked Level exists
if ($asked_level !== FALSE) {
foreach ($global_pages as $p) {
if ($p['level'] == $asked_level && $p['id_menu'] == $id_menu) {
$pages[] = $p;
}
}
} else {
foreach ($global_pages as $p) {
// Child pages of id_subnav
if ($p['id_parent'] == $tag->locals->page['id_subnav']) {
$pages[] = $p;
}
// Parent page is the id_subnav page
if ($p['id_page'] == $tag->locals->page['id_subnav']) {
$parent_page = $p;
}
}
}
// Filter on 'appears'=>'1'
if ($display_hidden == FALSE) {
$pages = array_values(array_filter($pages, array('TagManager_Page', '_filter_appearing_pages')));
}
// Get the parent page from one level upper
if ($asked_level > 0) {
// $parent_pages = array_filter($global_pages, create_function('$row','return $row["level"] == "'. ($asked_level-1) .'";'));
$parent_pages = array();
foreach ($global_pages as $p) {
if ($p['level'] == $asked_level - 1) {
$parent_pages[] = $p;
}
}
// $parent_page = array_values(array_filter($parent_pages, create_function('$row','return $row["active_class"] != "";')));
// $parent_page = ( ! empty($parent_page)) ? $parent_page[0] : FALSE;
foreach ($parent_pages as $p) {
if ($p['active_class'] != '') {
$parent_page = $p;
}
}
}
//.........这里部分代码省略.........