user/themes/default文件夹里的index.php,有this->pagenav,而widget_archive里也有pagenav,当index.php里执行this->pagenav时,会执行widget_archive里的pagenav
请问,为什么会这样执行呢? 我在Widget_Archive里只看到有:
require_once $this->_themeDir . $this->_themeFile;
这样一句话。难道是require进来了,就能在前台的index.php文件里,执行后台的pageNav函数?
user/themes/default/index.php里的pageNav代码:
< "?php $this->pageNav('« 前一页', '后一页 »'); ?>"
Widget_Archive里的pageNav代码:
立即学习“PHP免费学习笔记(深入)”;
/** * 输出分页 * * @access public * @param string $prev 上一页文字 * @param string $next 下一页文字 * @param int $splitPage 分割范围 * @param string $splitWord 分割字符 * @param string $template 展现配置信息 * @return void */ public function pageNav($prev = '«', $next = '»', $splitPage = 3, $splitWord = '...', $template = '') { if ($this->have()) { $hasNav = false; $default = array( 'wrapTag' => 'ol', 'wrapClass' => 'page-navigator' ); if (is_string($template)) { parse_str($template, $config); } else { $config = $template; } $template = array_merge($default, $config); $total = $this->getTotal(); $this->pluginHandle()->trigger($hasNav)->pageNav($this->_currentPage, $total, $this->parameter->pageSize, $prev, $next, $splitPage, $splitWord); if (!$hasNav && $total > $this->parameter->pageSize) { $query = Typecho_Router::url($this->parameter->type . (false === strpos($this->parameter->type, '_page') ? '_page' : NULL), $this->_pageRow, $this->options->index); /** 使用盒状分页 */ $nav = new Typecho_Widget_Helper_PageNavigator_Box($total, $this->_currentPage, $this->parameter->pageSize, $query); echo '<' . $template['wrapTag'] . (empty($template['wrapClass']) ? '' : ' class="' . $template['wrapClass'] . '"') . '>'; $nav->render($prev, $next, $splitPage, $splitWord, $template); echo '</' . $template['wrapTag'] . '>'; } }
user/themes/default文件夹里的index.php,有this->pagenav,而widget_archive里也有pagenav,当index.php里执行this->pagenav时,会执行widget_archive里的pagenav
请问,为什么会这样执行呢? 我在Widget_Archive里只看到有:
require_once $this->_themeDir . $this->_themeFile;
这样一句话。难道是require进来了,就能在前台的index.php文件里,执行后台的pageNav函数?
user/themes/default/index.php里的pageNav代码:
< "?php $this->pageNav('« 前一页', '后一页 »'); ?>"
Widget_Archive里的pageNav代码:
立即学习“PHP免费学习笔记(深入)”;
/** * 输出分页 * * @access public * @param string $prev 上一页文字 * @param string $next 下一页文字 * @param int $splitPage 分割范围 * @param string $splitWord 分割字符 * @param string $template 展现配置信息 * @return void */ public function pageNav($prev = '«', $next = '»', $splitPage = 3, $splitWord = '...', $template = '') { if ($this->have()) { $hasNav = false; $default = array( 'wrapTag' => 'ol', 'wrapClass' => 'page-navigator' ); if (is_string($template)) { parse_str($template, $config); } else { $config = $template; } $template = array_merge($default, $config); $total = $this->getTotal(); $this->pluginHandle()->trigger($hasNav)->pageNav($this->_currentPage, $total, $this->parameter->pageSize, $prev, $next, $splitPage, $splitWord); if (!$hasNav && $total > $this->parameter->pageSize) { $query = Typecho_Router::url($this->parameter->type . (false === strpos($this->parameter->type, '_page') ? '_page' : NULL), $this->_pageRow, $this->options->index); /** 使用盒状分页 */ $nav = new Typecho_Widget_Helper_PageNavigator_Box($total, $this->_currentPage, $this->parameter->pageSize, $query); echo '<' . $template['wrapTag'] . (empty($template['wrapClass']) ? '' : ' class="' . $template['wrapClass'] . '"') . '>'; $nav->render($prev, $next, $splitPage, $splitWord, $template); echo '</' . $template['wrapTag'] . '>'; } }
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号