EMLOG学院

为不同的作者输出单独的页面

摘要: 相信大家有时候会看到情侣模板,一般设...

相信大家有时候会看到情侣模板,一般设计的不错的情侣模板有这么一个特点,当用户点击男用户的时候,样式是男用户的样式,点击女用户的时候又是一个单独的样式,那么这是怎么做到的呢,这篇文章小编就给大家说一说。

上述所说的根据用户的ID载入不同的主题,小编想到的是根据通过当前用户页面的url获取get值,大家可以随便打开一个作者的专栏页面,其url是 “http://域名/?author=1”,其中这个author后面的数字既是相应作者的ID,所以我们只需要用GET方式取得这个值并在list_log.php页面加以判断并根据获取的值的不同载入相应的页面即可。当然,小编的这个方法貌似不支持url重写的情况,重写url之后恐怕又要用其他的方式获取作者ID了。

下面说说通过判断作者ID载入不同的页面的方法,先来看看代码

<?php 
/**
 * 站点首页模板
 */
if(!defined('EMLOG_ROOT')) {exit('error!');} 
?>
<?php // 通过这个语句来判断当前页面是否是作者专栏
    //我们暂时把这个判断定为(判断一),以方便后续分析
    if(isset($_GET['author'])): ?>

<!--如果条件成立,则进入下一个判断,判断作者的具体ID-->
<?php
    //此判断为(判断二)
    //如果当前页面作者ID是1,则载入user1.php
    $user = $_GET['author'];if($user=='1'):?>
<?php  include View::getView('user1');?>
<?php 
    //如果当前页面作者ID是2,则载入user2.php
    $user = $_GET['author']; elseif($user=='2'):?>
<?php  include View::getView('user2');?>
<?php 
    //如果作者ID不是1,也不是2,则载入list.php
    else: ?>
<?php  include View::getView('list');?>
<?php
    //这里是(判断二)的结束。
    //判断作者ID结束,注意,
    endif; ?>


<!--这里是(判断一)的分支判断,如果条件不成立,
也就是当前页面不是作者专栏,则继续判断-->
<?php
    //如果当前页面不是作者专栏页面,则
    //继续判断当前页面是不是首页,如果是首页则载入index
    elseif(blog_tool_ishome()==true): ?>
<?php  include View::getView('index');?>
<?php
    //如果不是首页则载入list.php
    else: ?>
<?php  include View::getView('list');?>
<?php
    //这里是(判断一)的结束
    // 判断当前页面是否为作者专栏页面结束
     endif; ?>

上述代码是放在log_list.php中的,事实上为了方便起见,log_list.php中只放入上述代码即可。其他的直接按条件调用,这样代码的复用性会比较强。接下来小编来简单的说一说上面的代码,从上往下看,其中第一条if语句就不多说了,是为了安全起见做的判断。

然后是


<?php // 判断当前页面是否为作者专栏页面
	if(isset($_GET['author'])): ?>
<?php
这句话就是整个文件最重要的,通过GET方式获取url后面的作者ID。当然,这里不是获取,而是判断,通过判断author变量是否被定义,如果定义了,则表示当前页面是作者的专栏页面,否则就不是作者专栏页面,需要注意的是这里的else if语句必须结束语句endif,为了便于大家理解,上述的源代码几乎全部都做了注释,另外,小编还画了一个图帮助大家理解


log_list.jpg

评论(0)