念念不忘
必有回响

dux主题的使用方法与扩展

DUX主题我应该用了两年。不定期更新

一、自带功能:

1.代码高亮,在需要代码高亮的地方,切换到文本,并且将代码用下面的方式包起来:

<pre class="prettyprint linenums">Your code.</pre>

如果不显示行号,请将class中的linenums去掉

二、扩展功能:

1.将知更鸟begin主题的评论等级整合到dux

在functions-theme.php中新增如下代码:

function get_author_class($comment_author_email, $user_id){
    global $wpdb; 
    $author_count = count($wpdb->get_results( "SELECT comment_ID as author_count FROM $wpdb->comments WHERE comment_author_email = '$comment_author_email' ")); 
    if ($user_id != '1'){
        if($author_count>=1 && $author_count< 5) echo '<div class="vip0" title="评论达人 LV.0"><i class="fa fa-vimeo-square"></i><span class="lv">0</span></div>'; 
        else if($author_count>=5 && $author_count< 20) echo '<div class="vip1" title="评论达人 LV.1"><i class="fa fa-vimeo-square"></i><span class="lv">1</span></div>'; 
        else if($author_count>=20 && $author_count< 40) echo '<div class="vip2" title="评论达人 LV.2"><i class="fa fa-vimeo-square"></i><span class="lv">2</span></div>'; 
        else if($author_count>=40 && $author_count< 60) echo '<div class="vip3" title="评论达人 LV.3"><i class="fa fa-vimeo-square"></i><span class="lv">3</span></div>'; 
        else if($author_count>=60 && $author_count< 80) echo '<div class="vip4" title="评论达人 LV.4"><i class="fa fa-vimeo-square"></i><span class="lv">4</span></div>'; 
        else if($author_count>=80&& $author_count<120) echo '<div class="vip5" title="评论达人 LV.5"><i class="fa fa-vimeo-square"></i><span class="lv">5</span></div>'; 
        else if($author_count>=120&& $author_count< 220) echo '<div class="vip6" title="评论达人 LV.6"><i class="fa fa-vimeo-square"></i><span class="lv">6</span></div>'; 
        else if($author_count>=220) echo '<div class="vip7" title="评论达人 LV.7"><i class="fa fa-vimeo-square"></i><span class="lv">7</span></div>';
    }
}

modules/mo_comments_list.php添加如下代码:

echo '<div class="comt-meta"><span class="comt-author">'.get_comment_author_link().'</span>';
get_author_class($comment->comment_author_email,$comment->user_id);
if(user_can($comment->user_id, 1)){
    echo '<div class="vip" title="博主认证"><i class="fa fa-vimeo-square"></i>博主</div>';
};
echo _get_time_ago($comment->comment_date); 

在main.css中的末尾添加如下样式:

.vip0,.vip1,.vip2,.vip3,.vip4,.vip5,.vip6,.vip7,.vip{font-weight:bold;display:inline-block;margin-right:5px;font-size:13px;opacity:.9}[class*=vip]:hover{opacity:.7}.vip0{color:#bbb}.vip1{color:#348be8}.vip2{color:#0896a1}.vip3{color:#fc15b2}.vip4{color:#7ba0b6}.vip5{color:#ff6e00}.vip6{color:#6ec400}.vip7{color:#e40000}.vip{color:#d76e00}/*颜色可以根据自己喜爱更改*/
.lv {
    font-size: 13px;
    padding-left: 3px;
}

2.右侧方格小工具的实现:

将DUX本身的小工具”D-广告”直接稍做改动即可:

首先,在main.css的末尾新增如下样式:

.ebox{overflow:hidden;font-size:12px;text-align:center;background-color:#fff}
.ebox-i{position:relative;float:left;width:50%;padding:15px 15px 20px;background-color:#fff;color:#777;border-bottom:1px dashed #ddd}
.ebox-01,.ebox-03{border-right:1px dashed #ddd}
.ebox-i:hover{background-color:#F9F9F9}
.ebox-100{width:100%;margin-bottom:0;border-bottom:none}
.ebox-i p{height:36px;overflow:hidden;color:#bbb}

在后台小工具中添加”D-广告”加入以下代码实现右侧四方格的效果。

<div class="item">
  <ul class="ebox">
    <li class="ebox-i ebox-01">
      <h4>SpringBoot</h4>
      <p>Spring Boot是用来简化新Spring应用的初始搭建以及开发过程</p>
      <a class="btn btn-primary btn-sm" target="_blank" href="https://tvzr.com">专题</a>
      <a class="btn btn-default btn-sm" target="_blank" href="https://tvzr.com">查看演示</a></li>
    <li class="ebox-i ebox-02">
      <h4>Thymeleaf</h4>
      <p>新一代的HTML5模版引擎</p>
      <a class="btn btn-primary btn-sm" target="_blank" href="https://tvzr.com">专题</a>
      <a class="btn btn-default btn-sm" target="_blank" href="https://tvzr.com">查看演示</a></li>
    <li class="ebox-i ebox-03">
      <h4>Hadoop</h4>
      <p>分布式存储计算服务</p>
      <a class="btn btn-primary btn-sm" target="_blank" href="https://tvzr.com">专题</a></li>
    <li class="ebox-i ebox-04">
      <h4>Linux</h4>
      <p>非常稳定的服务器操作系统</p>
      <a class="btn btn-primary btn-sm" target="_blank" href="https://tvzr.com">专题</a></li>
    <li class="ebox-i ebox-100">
      <h4>码农志</h4>
      <p>专注分享码农成长学习的技术博客</p>
      <a class="btn btn-danger btn-sm" target="_blank" href="https://tvzr.com">点击进入</a>
      <!-- <a class="btn btn-default btn-sm" href="https://tvzr.com/">咨询排期</a> --></li>
  </ul>
</div>

保存后,请查看效果。
3.自动推送文章到百度

/**
* WordPress发布文章主动推送到百度,加快收录保护原创【WordPress通用方式】
* 文章地址:https://zhangge.net/5041.html
*/
if(!function_exists('Baidu_Submit')){
    function Baidu_Submit($post_ID) {
        $WEB_TOKEN  = '1rnLYi666IYTbXAz';  //这里请换成你的网站的百度主动推送的token值
        $WEB_DOMAIN = get_option('home');
        //已成功推送的文章不再推送
        if(get_post_meta($post_ID,'Baidusubmit',true) == 1) return;
        $url = get_permalink($post_ID);
        $api = 'http://data.zz.baidu.com/urls?site='.$WEB_DOMAIN.'&token='.$WEB_TOKEN;
        $request = new WP_Http;
        $result = $request->request( $api , array( 'method' => 'POST', 'body' => $url , 'headers' => 'Content-Type: text/plain') );
        $result = json_decode($result['body'],true);
        //如果推送成功则在文章新增自定义栏目Baidusubmit,值为1
        if (array_key_exists('success',$result)) {
            add_post_meta($post_ID, 'Baidusubmit', 1, true);
        }
    }
    add_action('publish_post', 'Baidu_Submit', 0);
}
/**
* WordPress百度搜索自动推送、主动收录JS优化 By 张戈博客
* 文章地址:http://zhangge.net/5100.html
* 转载请保留出处,谢谢合作!
**/
add_action( 'wp_footer', 'bdPushData', 999);
//检查百度是否已收录最新改进版本
if(!function_exists('baidu_check_record')){
  function baidu_check_record($url){
    global $wpdb;
    $post_id = ( null === $post_id ) ? get_the_ID() : $post_id;
    $baidu_record  = get_post_meta($post_id,'baidu_record',true);
    if( $baidu_record != 1){
        $url='http://www.baidu.com/s?wd='.$url;
        $curl=curl_init();
        curl_setopt($curl,CURLOPT_URL,$url);
        curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
        $rs=curl_exec($curl);
        curl_close($curl);
        //如果抓取到的百度结果中不存在【提交网址】这个关键词,则认为该页面已被百度收录
        if(!preg_match_all('/提交网址/u',$rs,$matches) && preg_match_all('/百度为您找到相关结果/u',$rs, $matches)){
            update_post_meta($post_id, 'baidu_record', 1) || add_post_meta($post_id, 'baidu_record', 1, true);
            return 1;
        } else {
            return 0;
        }
    } else {
      return 1;
    }
  }
}
//输出百度自动推送js代码
if(!function_exists('bdPushData')){
  function bdPushData() {
    if ($_SERVER['HTTPS'] != "on") {
        $currentUrl = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER["REQUEST_URI"];
    } else {
        $currentUrl = 'https://'.$_SERVER['HTTP_HOST'].$_SERVER["REQUEST_URI"];
    }
    //判断是否是未收录页面,并且当前页面是否等于正规url地址(get_premalink)
    if(baidu_check_record(get_permalink()) == 0 &amp;&amp; $currentUrl == get_permalink()) {
        echo "<script>(function(){
            var bp = document.createElement('script');
            var curProtocol = window.location.protocol.split(':')[0];
            if (curProtocol === 'https') {
                bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
            } else {
                bp.src = 'http://push.zhanzhang.baidu.com/push.js';
            }
            var s = document.getElementsByTagName('script')[0];
            s.parentNode.insertBefore(bp, s);
            })();</script>";
      }
  }
}

3.外链转内链

赞(1) 打赏
未经允许不得转载:码农志 » dux主题的使用方法与扩展
分享到: 更多 (0)

评论 1

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    这些WP资源不是很多人分享,收好了!

    HKSG
    0
    2年前 (2017-05-26)回复

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏