• 没啥好说,更新慢

WordPress的Git主题就是一座屎山

Wordpress 每天学 来源:原创 7个月前 (03-12) 299次浏览

前言

Git主题,我对你又爱又恨。

才用上Wordpress没多少时间,没想到现在流行的主题还是几年前流行的,比如DUX、知更鸟之类的。DUX算是最贵的收费主题了,做的确实挺不错,但是一个主题就收费700多,一个普通的站长估计开两年都赚不回来这么多钱。想找一个免费的wordpress主题确实很难找,碰巧我找到了Git,还是一个开源主题,从15年维护到现在。

看完Git那一连串的介绍我确实被惊到了,因为它的名字是“一款比付费主题更付费主题的Wordpress免费主题”。里面的一些功能看起来确实挺会让人觉得这款主题很强大,有很多功能。

还好我也接触过编程,一些语言像java、js、nodejs、python、css、html都碰过一点点,所以可以进行一些小修改,不看源代码不知道,一看就吓一跳

  1. 大量的混合代码,把网上各种各样的wordpress小技巧都结合进入了
  2. 恶意的混淆文件
  3. 毫无代码规范,大量的if else语句
  4. 各种各样的无用功能,例如下雪、打卡

这款主题国内还是有不少人使用的,但这款主题的前身Yusi主题我看过,代码可没这么乱,别人都敢出399的yusi pro主题,证明水平还是可以的。但yusi的儿子就差的远了。

代码展示

最直接的实现功能

就先看看这个主题的样式设置里面的网站配色功能是怎么实现的,看到这么多if else谁不头疼:

?php
if (!git_get_option('git_pichead_b')) { ?>
<?php
    if (git_get_option('git_skin_b') == 'git_red_b') {
        echo '<header id="header" class="header" style="background-color: #E74C3C;">';
    } elseif (git_get_option('git_skin_b') == 'git_blue_b') {
        echo '<header id="header" class="header" style="background-color: #003399;">';
    } elseif (git_get_option('git_skin_b') == 'git_black_b') {
        echo '<header id="header" class="header" style="background-color: #616161;">';
    } elseif (git_get_option('git_skin_b') == 'git_purple_b') {
        echo '<header id="header" class="header" style="background-color: #9932CC;">';
    } elseif (git_get_option('git_skin_b') == 'git_yellow_b') {
        echo '<header id="header" class="header" style="background-color: #f5e011;">';
    } elseif (git_get_option('git_skin_b') == 'git_light_b') {
        echo '<header id="header" class="header" style="background-color: #03A9F4;">';
    } elseif (git_get_option('git_skin_b') == 'git_green_b') {
        echo '<header id="header" class="header" style="background-color: #4CAF50;">';
    } elseif (git_get_option('git_skin_b') == 'git_custom_color') {
        echo '<header id="header" class="header" style="background-color: ' . git_get_option('git_color_nom') . ';">';
    } else {
        echo '<header id="header" class="header" style="background-color: #009966;">';
    } ?>
<?php
} ?>

而且我都不知道我复制过来代码有没有正确闭合,最搞笑的是这个文件的顶部还写了一句,这诗可真难懂:

代码如诗 , 如痴如醉 !

断子绝孙压缩

这种写法都算好的,但是app.js这个文件结合了无数个js(jquery)插件,包括fancybox、ias、modal、toolpip之类的,还是压缩好的,看来很为我们这些搭网站的人着想。我还专门去看了下这个主题的前身D8,里面的代码没有经过混淆,所以这不是后来的开发者有意混淆了的?你要说没有故意混淆,那里面的签到打卡功能,不是从网上抄来的代码然后混淆的?可能说的好听点叫压缩。而且这个签到打卡功能有何用。

这个single.php,也就是文章页面,为什么要直接把作者介绍这种功能直接输出出来,不能调用其他的函数输出吗?

<span class="socials-icon-wrap"><a class="ab-img ab-home" target="_blank" href="<?php
    the_author_meta('url'); ?>" title="作者主页"><i class="fa fa-home"></i>作者主页</a></span>
<?php
    if (git_get_option('git_pay_qr')) {
        echo '<span class="socials-icon-wrap"><a id="showdiv" class="ab-img ab-donate" target="_blank" href="#donatecoffee"> <i class="fa fa-coffee"></i>赞助作者 </a></span>';
    } ?>
<span class="socials-icon-wrap"><a class="ab-img ab-email" target="_blank" href="mailto:<?php
    echo get_the_author_meta('user_email'); ?>" title="给我写信"><i class="fa fa-envelope"></i></a></span>
<?php
    if (get_the_author_meta('sina_weibo')) {
        echo '<span class="socials-icon-wrap"><a class="ab-img ab-sinawb" target="_blank" href="' . get_the_author_meta('sina_weibo') . '" title="微博"><i class="fa fa-weibo"></i></a></span>';
    } ?>
<?php
    if (get_the_author_meta('twitter')) {
        echo '<span class="socials-icon-wrap"><a class="ab-img ab-twitter" target="_blank" href="' . get_the_author_meta('twitter') . '" title="Twitter"><i class="fa fa-twitter"></i></a></span>';
    } ?>
<?php
    if (get_the_author_meta('github')) {
        echo '<span class="socials-icon-wrap"><a class="ab-img ab-git" target="_blank" href="' . get_the_author_meta('github') . '" title="Git"><i class="fa fa-git"></i></a></span>';
    } ?>
<?php
    if (get_the_author_meta('baidu')) {
        echo '<span class="socials-icon-wrap"><a class="ab-img ab-weixin" target="_blank" href="https://tieba.baidu.com/home/main?un=' . get_the_author_meta('baidu') . '&ie=utf-8" id="ab-weixin-a" title="百度贴吧"><i class="fa fa-paw"></i>
</a></span>';
    } ?>
<?php
    if (get_the_author_meta('qq')) {
        echo '<span class="socials-icon-wrap"><a class="ab-img ab-qq" target="_blank" href="tencent://message/?uin=' . get_the_author_meta('qq') . '&Site=&Menu=yes" title="QQ交谈"><i class="fa fa-qq"></i></a></span>';
    } ?>
            </div>
        </div>
    </div>
</div>
<?php
} ?>
<div id="donatecoffee" style="overflow:auto;display:none;"><img width="400" height="400" alt="支持作者一杯咖啡" src="<?php echo git_get_option('git_pay_qr');?>"></div>

最下面的donatecoffee应该是一个废弃的功能,居然直接给隐藏了。哦对了,这个主题还有个代码高亮样式选择功能,也在这个文件里面,又是一连串的if else。

Git?

截取的这些代码只是一些小片段而已,如果你稍微学过一点编程都知道不可能这么代码。但这个主题就这样维护了5年,确实挺不容易的,现在表示不再更新了,哈哈,如果继续开发这个主题确实还不如换个主题重新开发。所以如果你用Git主题(用的人确实不少),我并不推荐。网上还有不少优秀的开源主题,只是藏的比较深,善用搜索引擎还是能找到的。Git主题开发者根本不理人。不过这个主题也并不是特别差,毕竟这些代码并不会让你的服务器崩溃,适合网站刚起步使用,如果你网站以后做的比较好了可以选择其他优秀的主题,用dux之类的也不错。

二次修改

我花了三四天的时间才把app.js这一坨屎分离出来,因为d8没有混淆,不然花的时间可不止三四天。移除了不少无用的功能,现在本站使用的就是魔改版的Git。改着改着你就可能想换其他主题了。


每天学 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:WordPress的Git主题就是一座屎山
赞(10)
分享到: 更多 (0)

为了阻止垃圾和反动评论,您必须才能发表评论,使用功能只需要1分钟注册好账号!