• inove主题链接两列显示方法

    之前我已经对inove主题sidebar(侧边栏)上面的链接显示做了修改,可以让链接分两列显示,但是之前用的那个方法里面用的是id,这样的话,如果sidebar想要有多个分开的链接目录(比如你的链接有3个分类),那么这样就是错误的,因为一个页面只能有一个ID(需要注意的是,我已经对inove的主题的sidebar做了比较大的修改,原来的sidebar有4个widget,我已经修改为了2个,而且链接和分类目录已经不是左右并列显示了)。

    开始想的比较简单,直接把ID改成class,然后style.css再把“#”换成“. ”就行了,不过这很快就被验证是不行的,因为原来的那个CSS里面嵌套的DIV UL比较乱,写的很不规范,那就自己动手改规范吧。

    我的sidebar显示有两个链接分类,还有一个组织活动(这个没有加到链接里面,是我在sidebar里面直接写代码的)。

    代码来了。

    <div class="widget"><!– 第一个链接目录–>
    	<h3>网址</h3>
    	<ul class="links">
    		<?php wp_list_bookmarks('title_li=&categorize=0&category=2&orderby=name&limit=20′); ?></ul>
    	<div class="fixed"></div>
    </div >
    
    <div class="widget"> <!– 第二个链接目录–>
    	<h3>友情链接(随机排序)</h3>
    	<ul class="links">
    		<?php wp_list_bookmarks('title_li=&categorize=0&category=12&orderby=rand&limit=30′); ?>
    	</ul>
    	<div class="fixed"></div>
    </div >
    
    <!–组织活动的 直接写的HTML代码 –>
    <div class="widget" id="organizations">
    	<h3>组织活动</h3>
    	<ul class="links">
    		<li><a id="wpg"href="http://www.wpg.im/" target="_blank" title="WPG中文博客群组">WPG中文博客群组</a></li>
    		<li><a id="wpg_lucky"href="http://wpg.im/lucky" target="_blank" title="左邻右舍">I feel lucky!</a></li>
    		<li><a id="chinablogs" href="http://www.chinablogs.org" target="_blank" title="中国博客联盟 汇聚天下博主,展示精彩博客!">中国博客联盟</a></li>
    	</ul>
    	<div class="fixed"></div>
    </div>
    

    P:默认的inove里面,UL标签里面是没有加那个class=”links”的,这也就是我实现两列显示的关键,所以如果你的sidebar结构跟我类似的话,那么给里面的UL加上class=”links”,然后再给CSS加上下面的代码应该就OK了。

    CSS代码我就加了一句

    .links li {float:left;width:40%}
    

    P:这里可能有朋友要问为何width不是50%了,因为我试验的时候50%达不到要求的效果,这应该是原来sidebar里面写的这句#sidebar li{padding-left:22px;}导致的。

    最后,要记得清除浮动,不然就可能导致显示效果换乱了,如果发现你的<ul>代码。。。</ul>后面没有<div class=”fiexd”></div> ,那么就加上吧。

    ————————————————————————–

    WP相关知识扫盲:

    wp_list_bookmarks() 是WP里面一个用来显示友情链接的函数,具体用法可以参考这个博友的文章 http://www.slyar.com/blog/wp-list-bookmarks.html

  • typecho按分类显示文章标题颜色实战

    今天想把我用typecho搭建的一个站的文章标题颜色按照分类来显示,也就是不同分类,文章标题的颜色就会不同,效果可以查看www.jingang.org

    刚开始想用<?php if ($this->is(‘category’,’news’)): ?> ,但是想了下,这个只是判断当前页面是不是news分类下面的,并不能达到我的要求,事实也证明我用此判断然后输出样式没有成功。

    那怎么搞呢?typecho群里的宅给我提醒了,“ 直接class=”<?php echo 分类缩略字 ?>” ”,试了下 <?php $this->category(‘,’); ?> 不行,因为那个直接就输出分类的链接了。不过答案很快就给我找到了,<?php echo $this->category; ?> 就可以了。

    下面说说具体怎么用吧,如果你想在index页面,让文章标题的颜色根据分类显示,那么就打开你的模板文件夹下的index.php文件

    <h2 class="entry_title"></h2>
    

    替换为

    <h2 class="entry_title">
    	<a href="<?php $this->permalink() ?>" class="<?php echo $this->category; ?>"><?php $this->title() ?></a>
    </h2>
    

    这样就会在index页面的每篇文章里加上class=”分类缩略名”,然后我们就可以用这个来修改css样式了

    打开你的主题文件夹下style.css文件来定义css,比如我的一个分类是news,想把分类下文章标题都变成红色的,那么添加代码

    .news{color:red;}
    

    同理,你也可以将archives.php,以及post.php等页面都照此法处理。

    ———————————注意—————————–

    据我观察,如果一篇文章属于多个分类,那么用<?php echo $this->category; ?>只能输出一个分类缩略名,暂时还没找到更好的办法。

  • typecho学习札记

    近日用typecho搭建了一个小站www.jingang.org (为何不用WP?那个VPS的内存不够大,WP是比较耗资源的,而且WP的速度不是很快,typecho在这方面是很有优势的),但是由于typecho的资料比较少,而且刚试用这个程序,很多都不懂,找了半天解决了一些小问题。

    首先是typecho的title我觉得写的不是很好,就找到了默认模板中header.php做了些修改。

    原来的title是这样的

    <title><?php $this->options->title(); ?><?php $this->archiveTitle(); ?></title>

    我把他改成这样的

    <title><?php if ($this->is(‘index’)){
    $this->options->title();
    }else{
    $this->archiveTitle(”,”,’|’);
    $this->options->title();
    }
    ?>
    </title>

    这样的效果是如果是首页就显示你的博客title,如果是其他页面就显示你的日志标题+你的博客title。

    还有一个就是对header.php中调用的那个$this->header() 做了个修改 ,$this->header()的定义在 /var/Widget/Archive.php中(开始我找了好久不知道在哪里定义的,后来在typecho坛子中羽中在回答别人的问题时提到了这个文件,激动哇)

    原来的$this->header()在header.php中加入了不少feed还有generator等信息,有的我不想要,就删除了。

  • WordPress增加日志归档和分类页面的方法

    日志归档和分类这两个页面在不少朋友的WordPress里面还是很常见的,通过这两个页面可以让自己和访客更好的了解你的内容,也可以对自己以前的文章进行查看总结。下面就来说下添加这两个页面的方法。

    1、增加日志归档页面

    效果如下面的截图,实际效果可以查看我的这个页面 文章归档

    我的实现用的是插件,先去下载mg12的WP-EasyArchives(地址1  )

    当然仅仅安装这个还不能让日志归档单独在一个页面上显示,下面继续介绍。

    对于iNove主题的朋友实现很简单,首先增加一个页面,并为他命名(比如日志归档),然后在选择模板的时候选择Archives就可以了。

    非iNove主题用户,请看这里,方法有两个。

    (方法1) 首先下载Exec-PHP插件(地址1),并启用该插件。

    然后新增加一个页面,为他命名为日志归档,切换到HTML编辑模式下,加入下面的代码

    <?php wp_easyarchives(); ?>

    (方法2)此方法源自漠天博客,文章地址 WordPress日志归档插件EasyArchives 使用方法

    (1). 复制正在使用的主题文件page.php,另存为archivespage.php在文件最前面添加

    <?php
    /*
    Template Name: Archives Page
    */
    ?>

    (2). 将如下代码<?php the_content(); ?>替换为<?php wp_easyarchives(); ?>,同时可以删除一些没用的代码,比如:文章发表时间、作者、标签、分类等

    (3). 将archivespage.php上传至主题文件夹目录

    (4). 添加新页面时选择模板“Archives Page”,根据自己需要修改页面标题和缩略名进行发布。

    2、增加日志分类页面

    效果如下面的截图,实际效果可以查看我的这个页面 文章分类 。

    增加分类页面的方法和上面增加归档页面的方法很类似,仍然像上面一样有两种方法。

    (方法1)将上面增加归档页面方法(1)中的

    <?php wp_easyarchives(); ?>

    替换为

    <?php wp_list_categories(‘orderby=name&show_count=1&show_last_update=1&use_desc_for_title=1’); ?>

    其实朋友们已经看出来了,这里只是调用WP的一个函数而已,关于wp_list_categories函数的用法这里不再细说,大家有兴趣的可以看这里 wp_list_categories 标签的用法

    (方法2)与方法1一样,只是做些简单的替换。

    (1). 复制正在使用的主题文件page.php,另存为categories.php在文件最前面添加

    <?php
    /*
    Template Name: Categories
    */
    ?>

    (2). 将如下代码<?php the_content(); ?>替换为

    <?php wp_list_categories(‘orderby=name&show_count=1&show_last_update=1&use_desc_for_title=1’); ?>

    (3). 将categories.php上传至主题文件夹目录

    (4). 添加新页面时选择模板”Categories “,根据自己需要修改页面标题和缩略名进行发布。

  • 细节 我们可以关注更多一些

    细节决定成败,我觉得很有道理,我也不准备在这个问题上多说什么,只是拿这句话用用而已。

    我的主题一直就是mg12的iNove,从开始用到现在几乎是每个能改的地方我都改了,有的朋友问我要我的改装版,不是我不愿给(我曾经给过一些朋友的),是因为很多改动的地方我自己都不记得了,更是因为许多地方我把那些动态的函数换成了静态的HTML代码,删删减减,如果你不是太懂网页,直接拿去用恐怕是很难的。

    下面是我的一些细节的改动

    1、导航栏首页链接及图标。

    我的首页链接在导航栏上和banner上都是可以点击的,但是导航栏上的首页链接由于写的不规范,在IE6上好像无法点击(其实我很早就知道了,只是很懒没有改,嘿嘿),昨天跟XL闲聊的时候提到了这个,还是改了吧。

    导航栏上首页链接HTML代码及CSS代码。

    首页链接图片

    HTML代码

    <div id=”homepage”>
      <a id=”homeico” title=”首页” href=”http://www.zenoven.com“>首页</a>
     </div>

    CSS代码

    #homepage {
     width:50px;
     height:50px;
     float:left;
    }
    a#homeico  {
     display:block;
     background:url(img/home.jpg);
     width:50px;
     height:50px;
     margin:0;
     text-indent:-999em;
    }

    2、网页底部pagenavi(分页插件)的设置

    这个其实很简单,我说的是尽量不要分页太多,我之前设置的是分10页,一直也没注意,后来偶尔浏览的时候发现如果点击到第十多页,由于一行显示不完所有的页码,他就会换行显示,很难看的,像下面这样。

    把页数设置好就没有这个问题了。比如我的设置了分7页。

    另外我发现分页的设置对SEO也是有影响的,因为我在某个搜索引擎上site的时候发现了很多分页,这个好像就不是很好了吧?

    当然我也还有很多问题未解决,比如我的RSS在Google Reader等订阅上面显示的时候完全没有格式,图片不显示,虽不是乱码,但是却像乱码一样难看,不知道各位知道怎么解决吗?

  • 分享一份WordPress主题制作教程

    我一直以来都是用的inove主题,感觉这个主题真的很强大。不过再强大的功能,不是自己写的,总是想改造,给他整容,对模板的sidebar header还有footer等一一改造,之前也没有看过什么教程,完全是靠自己的一点点php及CSS,现在渐渐的竟有种自己写主题的念头了,呵呵,但是由于并没有写过主题,还是先看下这方面的教程为好。

    wp_theme

    这份教程是我爱水煮鱼(这个链接到Denis的WP主题制作页面)翻译,由Wpdesigner.com站长编写的,PDF中文版,觉得还不错,分享给大家了!(这份教程对于有HTML PHP CSS基础的朋友应该非常容易看懂,我几分钟就看了10多页呵,当然网上还有很多教程,这个也许不是最好的,但是对于众多WP菜鸟来说已经很不错了。。。)

    真希望有一天大家能看到我制作的主题哈。。。。

    下载地址1 :http://u.115.com/file/t311286caf

    下载地址2 : wp-theme

  • 再次对WordPress表情插件动刀

    以前我用的是mg12的highslide4wp这个插件(我本来用这个插件的意图是添加图片放大缩小功能的,后来也基本上没有),里面有添加表情这个功能。

    但是最近用的时候发现了问题,而且我也是希望插件越少越好,便删除之。。。那么该如何加入表情呢?搜索!

    果然,方法很快出来了,下载个smilely.zip ,然后解压smilely.php到你主题所在的路径,然后在在 comments.php的textarea之前添加下面的代码(原文来自于 不亦乐乎 ,其中说的guestcomments.php在我的主题中没有)

    <?php include(TEMPLATEPATH . ‘/smiley.php’); ?>

    如果你需要添加新的表情文件,可以打开smilely.php中修改,只要一看就会明白要改什么东西。好了,现在你看到我的评论上面的表情就是这个样子了,还算可以吧?

    附smilely.zip下载地址:smiley.zip

  • WordPress2.8.6升级失败及解决实战

    这几天WordPress又有了新版本的,目前最新的是WordPress2.8.6,我之前的是2.8.5,官方的说的是主要更新了两个安全漏洞,下面是官方的原文:

    2.8.6 fixes two security problems that can be exploited by registered, logged in users who have posting privileges.  If you have untrusted authors on your blog, upgrading to 2.8.6 is recommended.

    The first problem is an XSS vulnerability in Press This discovered by Benjamin Flesch.  The second problem, discovered by Dawid Golunski, is an issue with sanitizing uploaded file names that can be exploited in certain Apache configurations. Thanks to Benjamin and Dawid for finding and reporting these.

    对我这样的懒人,在后台直接升级比较简单,于是便点开后台>>工具>>升级,然后选择中文版的那个,升级开始了,不过并没有成功,好像说的是文件在60秒之内没下载完成,试了几次都没成功,我大概也知道是超时的设置问题,后来一搜果然是这样的,然后就找到了那个设置超时的原文件,wp-admin\includes\file.php ,查找下面的代码

    $response = wp_remote_get($url, array(‘timeout’ => 60));

     将其更改为

    $response = wp_remote_get($url, array(‘timeout’ => 300));

    也就是把超时的时间设置大点就可以了。这样设置后我的更新成功了。但是由于更新时有的文件被改变了,例如我的表情设置,把我自定义的表情给删除了,而且表情的gif文件好像也被改了,郁闷。。。只有自己再改回了~~现在一切成功。

第1页,共2页12