折腾Tiga主题笔记

近期在ThemeForest网站上看到非常多漂亮的高级主题,但每一个价格不菲,基本上都要30美金以上。反观国内的那一些主题设计,觉得在设计理念与标准上,还是相对滞后。ThemeForest上的高级主题基本上都会拥有以下功能:

主题设置选项、自适应、多样式排版、XHTML5标准、浏览器兼容、微数据、文章类型、支持特色图片功能、灯箱展示、前端提交、工具提示、键盘导航、幻光展示、社会化媒体、面包屑导航、图片缩放等等。

不是说国内主题设计没有这些,而是在ThemeForest上的高级主题除了本身支持一些功能后,还有很多功能只需要在后台主题管理选项上做适应设置既可,无需修改代码。当然,有时你会觉得一个简单的博客主题需要这么多功能吗?有好过没有嘛。

如归正题,本人主要内容是本人使用Tiga主题修改笔记。

1、Tiga Theme options部份

Tiga Theme Options.01

Tiga Theme Options.02

Tiga Theme Options.03

2、Tiga: 模板函数 (functions.php)

相应代码功能详见代码标释内容:

/** WordPress 默认发件Email地址及名称 **/
function new_from_name($email){
$wp_from_name ='HST网络站';
return $wp_from_name;
}

function new_from_email($email) {
$wp_from_email = '[email protected]';
return $wp_from_email;
}

add_filter('wp_mail_from_name', 'new_from_name');
add_filter('wp_mail_from', 'new_from_email');
/** 默认发件Email地址及名称结束 **/

相关文章代码部份:

//相关文章开始
 $wp_rp=array(
 'limit'=>8, //相关文章数量
 'wp_rp_rss'=>true, //是否在feed 中显示相关文章
 'wp_no_rp'=>'random',  //无相关文章时的选择:text 或random(random-随机文章)
 'wp_rp_date'=>true,  //显示文章发布日期
 'wp_rp_comments'=>true,  //显示文章评论数
 'wp_rp_title_tag'=>'h2',  //选择相关文章标题标签(h2 ,h3 ,h4 ,p ,div)
 );
function wp_get_random_posts ($limitclause="") {
 global $wpdb, $post;

 $q = "SELECT ID, post_title, post_content,post_excerpt, post_date, comment_count FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'post' AND ID != $post->ID ORDER BY RAND() $limitclause";
 return $wpdb->get_results($q);
}

 function wp_get_related_posts()
 { 
 global $wpdb, $post,$wp_rp;
 $limit =$wp_rp["limit"];
 $wp_rp_title='你可能喜欢的文章:';//相关文章标题
 if(!$post->ID){return;}
 $now = current_time('mysql', 1);
 $tags = wp_get_post_tags($post->ID);

 $taglist = "'" . $tags[0]->term_id. "'";

 $tagcount = count($tags);
 if ($tagcount > 1) {
 for ($i = 1; $i < $tagcount; $i++) {
 $taglist = $taglist . ", '" . $tags[$i]->term_id . "'";
 }
 }

 if ($limit) {
 $limitclause = "LIMIT $limit";
 }   else {
 $limitclause = "LIMIT 10";
 }

 $q = "SELECT p.ID, p.post_title, p.post_content,p.post_excerpt, p.post_date,  p.comment_count, count(t_r.object_id) as cnt FROM $wpdb->term_taxonomy t_t, $wpdb->term_relationships t_r, $wpdb->posts p WHERE t_t.taxonomy ='post_tag' AND t_t.term_taxonomy_id = t_r.term_taxonomy_id AND t_r.object_id  = p.ID AND (t_t.term_id IN ($taglist)) AND p.ID != $post->ID AND p.post_status = 'publish' AND p.post_date_gmt < '$now' GROUP BY t_r.object_id ORDER BY cnt DESC, p.post_date_gmt DESC $limitclause;";

 $related_posts = $wpdb->get_results($q);

 $output = "";

//不存在相关日志则显示随机日志
 if (!$related_posts)
 {
 if($wp_rp['wp_no_rp'] == "text")
 {
 $output  .= '<li>没有相关文章!</li>';//无相关文章时显示标题
 }
 else

 {
 if($wp_rp['wp_no_rp'] == "random")
 {
 $wp_no_rp_text= '以下文章也精彩:';//随机文显示标题
 $related_posts = wp_get_random_posts($limitclause);
 }  

 $wp_rp_title = $wp_no_rp_text;
 }
 }

 foreach ($related_posts as $related_post )
 {
 $output .= '<li>';
 if($wp_rp['wp_rp_date'])
 {
 $dateformat = get_option('date_format');
 $output .= mysql2date($dateformat, $related_post->post_date) . "  —  ";  //日期和文章标题间隔符,默认是 —
 }
 $output .=  '<a href="'.get_permalink($related_post->ID).'" title="'.wptexturize($related_post->post_title).'">'.wptexturize($related_post->post_title).'</a>';
 if ($wp_rp["wp_rp_comments"])
 {
 $output .=  " (" . $related_post->comment_count . ")";
 }
 $output .=  '</li>';
 }
 $output = '<ul>' . $output . '</ul>';
 $wp_rp_title_tag = $wp_rp["wp_rp_title_tag"];

 if(!$wp_rp_title_tag)
 $wp_rp_title_tag ='h3';
 if($wp_rp_title != '')
 $output =  '<'.$wp_rp_title_tag.' >'.$wp_rp_title .'</'.$wp_rp_title_tag.'>'. $output;
 return $output;
}

 function wp_related_posts_attach($content)
 {
 global $wp_rp;
 if (is_single()||(is_feed() && $wp_rp["wp_rp_rss"]))
 {
 $output = wp_get_related_posts();
 $content = $content.$output;
 }

 return $content;
 }

add_filter('the_content', 'wp_related_posts_attach',100);
//相关文章结束

简化Header.php头部代码部份:

//精简header.php头部代码
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'wp_shortlink_wp_head');
remove_action('wp_head', 'feed_links');
remove_action('wp_head', 'feed_links_extra');
remove_action('wp_head', 'start_post_rel_link');
remove_action('wp_head', 'adjacent_posts_rel_link');
remove_action('wp_head', 'wp_generator' );
//精简header.php头部代码结束

//给 Read more 加上 nofollow
function add_nofollow_to_link($link) {
  return str_replace('<a', '<a rel="nofollow"', $link);
}
add_filter('the_content_more_link','add_nofollow_to_link', 0);
//给 Read more 加上 nofollow 结束

分类标签属性标准化部份:

//分类标签属性标准化
function ispireme_fix_category_tag ($ispireme_cat_output) {
$ispireme_cat_output = str_replace(array('rel="category tag"','rel="category"'),'', $ispireme_cat_output);
return $ispireme_cat_output;
}
add_filter( 'the_category', 'ispireme_fix_category_tag' );
//分类标签属性标准化结束

3、Tiga: templates.php (includes/templates.php)

这部份关于发布时间代码不标准的修改,原代码忘记了,现在贴出的代码为修改过的。

//主题发布时间修改为
<time class="entry-date updated" datetime="%3$s">%4$s</time>
//评论发布时间修改为
<time class="entry-date updated" datetime="%2$s">%3$s</time>

4、分页导航选项

本部份主要是为了实现在手机上显示不会两行显示,只显示5页,主要是了整体美观而已。

Tiga Theme Options.04

5、其它部份: 增加一下文章归类在文章低部。

Tiga上还有很多功能本人没有用上,比喻社会化分享,社会化图标展示、Facebook粉丝展示等。有空看看可不可以把它会部转成国内的。还有文章底部的一些显示和文章上端、下端的显示都没有使用。这个文章内显示功能比较适合放广告。每一篇文章显示的特色图片大小为140*130。就这些,没有其它方面的了。

用电脑、平板、手机显示都非常不错。

18 thoughts on “折腾Tiga主题笔记

  1. maie

    还是挺简洁的,不知道为什么wordpress的默认主题都是用很大很大的字体和行距,我看到Twenty thirteen那主题更大。

    回复
  2. 佐仔

    Twenty thirteen主题是一款个性主题,并且演示现在只是展示各种文章主题,非纯文章的排列。它更多的一个标准,在此基础上进行演绎和修改将会有很大的发挥。

    回复
    1. 佐仔 文章作者

      是的,字略小,尚可接受,不准备修改CSS放大了,因为该主题的内容框本身都不大,字体放大的话那一行就显示不了几个字。

      回复
      1. 勺子

        我的看法是越简越好。
        另外,手机还没刷成功啊,关掉杀毒软件officescan之后,完美刷机可以成功安装并连结手机了,可是开始ROOT和刷机的时候一直提示USB连结不稳定,不成功。。。。

        回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注