Emlog常用日志列表页的判断-站长杂谈下载

Emlog常用日志列表页的判断

开通本站Svip会员,全站资源免费下
  Emlog 用得久了,emer 们就难免会折腾一下自己的模板,谁让 Emlog 这么简单实用呢?除了折腾外观及各种特效,当然还有实用的功能,日志列表页的判断应该就属于此类。我们可以根据日志列表页面的各种类型(位置?),实现不同的功能。下面是我在论坛里面收集的一些常见而实用的日志列表页面的判断,基本上可以满足大多数 EMER 的需要了吧。如果你还什么更好的代码,也不防拿出来分享一下。
  好了,闲话到此,下面才是正题。
日志列表页 (包括各种情况下的日志列表页及其翻页,如:首页、分类、TAG.html" target="_blank" class="relatedlink">标签、归档、作者……等等)
  1. <?php if($curpage == CURPAGE_HOME): ?>/ T' l) K0 k6 B/ D
  2. 内容代码;' ^: `: e1 G9 f2 {, ?. B) m
  3. <?php endif; ?>
复制代码
  Emlog 默认的“首页”链接即属于此种情况。要注意的是,EM5.0 由于取消了 $curpage 变量,此判断不再有效。关于 EM5.0 日志列表页的判断,奇遇 大神给出的代码如下,有兴趣的 emer 不妨试一下:
  1. <?php if (!isset($logid) && empty($tws)): ?>
      |, {' r7 n' E& o2 R* ?
  2. 内容代码;
    / x' }8 k9 k3 @: V" X1 g
  3. <?php endif; ?>
复制代码
  下面再列出一些常见的日志列表页的判断。
首页日志列表及其翻页
  1. <?php if($pageurl == Url::logPage()): ?>
    6 Y# ?% f) l% e
  2. 内容代码;! Y6 n: A. @  N: q- x, v: |
  3. <?php endif; ?>
复制代码
分类日志列表及其翻页
  1. <?php if(isset($sortName)): ?>% D) F( {" K$ r7 a8 h% X0 [6 ^
  2. 内容代码;- y+ ]% W4 J; f4 _
  3. <?php endif; ?>
复制代码
标签日志列表及其翻页
  1. <?php if(isset($tag)): ?>* D# j0 e+ m3 H& n* L7 Z
  2. 内容代码;
    ( }7 n/ s3 p9 H% b- o. v  v
  3. <?php endif; ?>
复制代码
纯首页(不包含除首页外的各种日志列表页及其翻页)
* J! b4 {+ _, A( {: X
  1. <?php if("http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == BLOG_URL): ?>
    " f' \6 N2 P/ h6 |  \
  2. 内容代码;
    # V2 S$ u% ]+ a, R( ^
  3. <?php endif; ?>
复制代码

+ e$ P! j* O, ]4 i. }0 ^2 z
  如果能够灵活使用上面的判断,就会实现一些你意想不到的功能了。举个例子,如果你只想在日志首页显示一些内容,而在其它非首页页面(包括各种日志列表页)显示另一些内容,则只需在纯首页判断的基础上加一个 else 分支就可以了:
  1. <?php if("http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == BLOG_URL): ?>& G$ C7 A& H! C- _$ g9 r
  2. 内容代码1;
    6 \+ |# l" q! g  S; S
  3. <?php else: ?>
    3 p3 s; ~) c) M5 i! Q# x
  4. 内容代码2;5 k2 E+ a# ^3 ?- \. U  a" q
  5. <?php endif; ?>
复制代码
  不过要注意的是,有些IIS平台下这个纯首页的判断会失效。Emlog 从 5.2.0 版本开始,在默认模板中引入了一个判断纯首页的函数:
  1. <?php
    $ B: V( r) S; U
  2. //blog-tool:判断是否是纯首页0 q" \4 W- U3 j# S" S$ e9 A
  3. function blog_tool_ishome(){6 ?3 i7 ]6 c5 E
  4.     if (BLOG_URL . trim(Dispatcher::setPath(), '/') == BLOG_URL){
    ( ?& J) q! w; N1 ~# C$ k. `
  5.         return true;( P2 h. g* J! N. c' [; |# @7 X$ a& b
  6.     } else {( {( H! u0 ~7 Z/ Q% A3 d8 L4 K
  7.         return FALSE;8 c( g; C) {1 k7 v: S4 _+ X
  8.     }% w* n& h5 i  O% [" B& O5 S
  9. }- q* Z7 s, }  ^
  10. ?>
复制代码
  要判断纯首页的时候,只需要使用该函数就可以了:
  1. <?php if(blog_tool_ishome()): ?>
    0 t3 {! }/ k2 z) V" Q
  2. 内容代码;
    / D, {" W+ d0 L& w% U, z
  3. <?php endif; ?>
复制代码
  怎么,够简单吧,自己找个模板试一试吧。什么,不知道在哪里使用?一般用在 log_list.php 以及 module.php 中的侧边栏代码,当然,header.php 据说也可以用,side.php 据说也行。。。总之,可以用在你想用的地方。

; O% e  O( q/ [" ^. ]; L
+ H. w5 Y7 F2 y5 v& o

全部评论 0

您需要登录后才可以回帖 立即登录
登录
0
0
0
返回顶部