分享

实现emlog的友情链接只在首页显示/按三十天输出热门文章

 大灿文化 2014-05-09


  有经验的站长们可能会了解,做博客seo优化的时候,友情链接的整站链接和只在首页链接是有很大区别的。很多常见Emlog主题模板,都是设置全站显示友情链接的,这样会分散权重,个人也觉得友情链接,首页显示就足够了,沒必要全站显示链接,一般也只有首页权重高,对 SEO方面也有好处。

 今天抽空弄了下博客,想让博客友情链接只在首页显示。由于是新手,什么都不懂,见emlog有个官方模板手册,下载回来看了下,说要要用“$curpage == CURPAGE_HOME”来判断首页,$curpage == CURPAGE_LOG 判断日志页。类似代码为
<?php if($curpage == CURPAGE_LOG): ?>
显示要调用的代码
<?php endif; ?>

但是测试后发现,用$curpage == CURPAGE_HOME来判断输出,不单单是首页,还有分类页,TAG页等。开始以为是可能是主题的问题,换回官方默认主题,依然如此,让人有点小郁 闷。看来只要是log_list.php输出的页面都会包括在内,类似的还有$curpage == CURPAGE_LOG,判断的不止是日志页面,还包括page页面,根本与它的命名不符合啊。

上网找了下,没有发现目前相关的插件,只找了个判断首页的方法,判断首页URL代码如下:
1<?php if("http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == BLOG_URL):?>友情链接调用代码<?php endif;?>
调用函数的意思,就是判断当前连接是否为博客首页连接,如果是则显示友情链接组件,不是则不显示。前期是后台Widgets添加了友情链接组件或者模板有相关的调用。

记录下自己改动过的文件:

一般通过侧边栏组件调用的友情链接代码都在模板的module.php文件里,打开module.php文件进行修改,找到“//widget:链接”所在区域,加添加上面的判断代码:
01<?php if("http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == BLOG_URL):?>
02<?php
03//widget:链接
04function widget_link($title){
05    global $CACHE;
06    $link_cache = $CACHE->readCache('link');
07    ?>
08    <li id="sidebar-link" class="widget">
09    <h3><span><?php echo $title; ?></span></h3>
10    <ul class="ulstyle">
11    <?php foreach($link_cache as $value): ?>
12    <li><a href="<?php echo $value['url']; ?>" title="<?php echo $value['des']; ?>" target="_blank"><?php echo $value['link']; ?></a></li>
13    <?php endforeach; ?>
14    </ul>
15    </li>
16<?php }?>
17 
18<?php endif;?>

这样实现emlog的友情链接只在首页显示的。

-------------------------------------------

EMLOG按天数时间调用随机热门文章列表

01<?php
02//30天按点击率排行文章
03function getdatelogs($log_num) {
04    $db = MySql::getInstance();
05    $time = time();
06    $sql = "SELECT gid,title FROM ".DB_PREFIX."blog WHERE type='blog' AND date > $time - 30*24*60*60 ORDER BY `views` DESC LIMIT 0,$log_num";
07    $list = $db->query($sql);
08    while($row = $db->fetch_array($list)){ ?>
09<li><a href="<?php echo Url::log($row['gid']); ?>" title="<?php echo $row['title']; ?>"><?php echo $row['title']; ?></a></li>
10    <?php } ?>
11<?php } ?>
12以上是按30天输出点击热门文章列表,把代码复制到模板目录下的module.php里面,在需要的地方输入<?php getdatelogs(10);?>调用,10为文章列表调用数量,30*24*60*60为30天,如要改成7天只需要把30改为7即可,一年就改成365即可。
获取网站favicon图标接口

 偶然在一个网站上看到其网站友情链接的前面都带上了改链接网站的favicon.ico小图标,感觉挺不错的。于是看了一下代码,发现他是调用的一个非常简单的google的接口。

    形式如下: http://www.google.com/s2/favicons?domain=域名地址

    使用方法:<img src="http://www.google.com/s2/favicons?domain=域名地址" /> 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多