很有用的WordPress主题开发技巧

WordPress6744.1K阅读模式

8,让WordPress底部的版权时间显示的更生动
很多网站的版权时间都显示的是建站时的年份,有些则是显示当下的年份。事实上,这两种方式都不是太好。
最好的方式是显示从网站建设之初的年份到目前的年份位置,类似© 2006 – 2010这种显示方式。
这种效果通过以下的代码可以实现。添加完下面的代码后,系统会自动抓取发布第一篇文章的年份以及最新一篇文章的年份,并把它显示出来。

  1. function comicpress_copyright() {
  2. global$wpdb;
  3. $copyright_dates = $wpdb->get_results("
  4. SELECT
  5. YEAR(min(post_date_gmt)) AS firstdate,
  6. YEAR(max(post_date_gmt)) AS lastdate
  7. FROM
  8. $wpdb->posts
  9. WHERE
  10. post_status = 'publish'
  11. ");
  12. $output = '';
  13. if($copyright_dates) {
  14. $copyright = "© " . $copyright_dates[0]->firstdate;
  15. if($copyright_dates[0]->firstdate != $copyright_dates[0]->lastdate) {
  16. $copyright .= '-' . $copyright_dates[0]->lastdate;
  17. }
  18. $output = $copyright;
  19. }
  20. return$output;
  21. }

把上面的代码添加到了functions.php文件里面后,还需要在 footer.php 任何你想显示版权时间的地方加上如下代码:

  1. <?php echo comicpress_copyright(); ?>

9,给读者投稿文章添加姓名/来源
如果你的博客接受读者的投稿,想在该篇文章出现投稿者的姓名,同时又不想通过添加作者的这种繁琐而麻烦的方式来操作,则可以使用下面的代码。使用下面的代码后,只需要在撰写文章的时候在自定义区域填上投稿者的姓名即可。系统会自动将发布者的名称换成投稿者的名称。
这个代码对接受读者投稿较多的网站,或者是资讯型的网站非常有用(利用它来显示来源)。

  1. add_filter( 'the_author', 'guest_author_name' );
  2. add_filter( 'get_the_author_display_name', 'guest_author_name' );
  3. function guest_author_name( $name ) {
  4. global$post;
  5. $author = get_post_meta( $post->ID, 'guest-author', true );
  6. if ( $author )
  7. $name = $author;
  8. return$name;
  9. }

10,启用文章缩略图功能
从WordPress2.9版本开始,可以给模板添加文章缩略图功能。操作方法很简单,只需要把下面的代码添加到functions.php里面。

  1. add_theme_support( 'post-thumbnails' );

然后在要显示缩略图的地方放置下面的代码即可。

  1. <?php the_post_thumbnail(); ?>

11,自定义WordPress 3.0 版本导航栏
WordPress 3.0 增加了一个功能,可以让WordPress模板开发者自定义导航菜单。如果你想给用户一个导航栏的选择权,只需要把下面的代码加入到 functions.php 文件里面。

  1. add_theme_support( 'nav-menus' );

之后把下面的代码复制到你想出新的地方:

  1. <?php wp_nav_menu( array( 'sort_column' => 'menu_order', 'container_class' => 'menu-header' ) ); ?>

12,移除WordPress默认的个人资料选项
如果你客户的想让用户可以自行添加个人资料,那么需要让这个选项更简单。其中一个方法就是移除部分选项,AIM, Yahoo IM 和 Jabber 之类的东东。

  1. add_filter('user_contactmethods','hide_profile_fields',10,1);
  2. function hide_profile_fields( $contactmethods ) {
  3. unset($contactmethods['aim']);
  4. unset($contactmethods['jabber']);
  5. unset($contactmethods['yim']);
  6. return$contactmethods;
  7. }

13,添加作者个人资料选项
如果你想更充分的展示作者的个人资料,那么你可以添加一些更个性化的资料选项,例如添加twitter 和 facebook账号等。下面的代码就是添加twitter 和 facebook账号用的。当然,你可以把里面的内容替换成其他任何你想展示的资料。这个对多博客作者尤其有用。

  1. function my_new_contactmethods( $contactmethods ) {
  2. // Add Twitter
  3. $contactmethods['twitter'] = 'Twitter';
  4. //add Facebook
  5. $contactmethods['facebook'] = 'Facebook';
  6. return$contactmethods;
  7. }
  8. add_filter('user_contactmethods','my_new_contactmethods',10,1);

添加完是上面的代码后,你需要在author.php文件里面添加如下的代码:

  1. <?php echo$curauth->twitter; ?>

注意:改代码仅在WordPress2.9以上的版本起作用。
14,添加侧边栏小模块。
这是目前用的最多的技巧之一,很多WordPress模板开发者都已经知道,并且在用了。

  1. if ( function_exists('register_sidebar') )
  2. register_sidebar(array('name'=>'MiddleSidebar',
  3. 'before_widget' => '<li class="widget">',
  4. 'after_widget' => '</li>',
  5. 'before_title' => '<h2 class="widgettitle">',
  6. 'after_title' => '</h3>',
  7. ));
  8. register_sidebar(array('name'=>'FooterSidebar',
  9. 'before_widget' => '<li class="widget">',
  10. 'after_widget' => '</li>',
  11. 'before_title' => '<h2 class="widgettitle">',
  12. 'after_title' => '</h3>',
  13. ));

上面的代码可以增加两个侧边栏的小模块。以此类推,你可以添加无限多侧边栏的小模块。添加完上面的代码后,你需要把下面的代码添加到你要出现这边小模块的地方。

  1. <?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('MiddleSidebar') ) : ?>
  2. <!–Default sidebar info goes here–>
  3. <?php endif; ?>

注意:侧边栏并不一定需要出现在sidebar.php文件里面。

继续阅读下页

本站文章大部分始于原创,用于个人学习记录,可能对您有所帮助,仅供参考!

weinxin
我的微信
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
 
知更鸟
评论  67  访客  52  作者  9
    • 最好的美白产品
      最好的美白产品 0

      学习学习

      • 淘宝
        淘宝 1

        知更鸟你怎么可以那么厉害呀

        • 雅岚
          雅岚 4

          我又来鸟哥家学习,嘿嘿。。。。
          然后使劲折腾本妖女的Blog,哈哈哈

          • Joe
            Joe 3

            太好了,有wp的简易教程了。得多跟你学习学习。

            • Dianso
              Dianso 3

              这个已经有人翻译完了

              • face
                face 0

                不错不错

                • 媛诺诺
                  媛诺诺 4

                  还是菜鸟级别,来学习了

                  • 南昌115
                    南昌115 1

                    博主是wp的庄家啊

                    • 小子
                      小子 1

                      有些代码按你说的改,但是出错。

                        • 知更鸟
                          知更鸟

                          @ 小子 通告下本技术文章来至国外,国人翻译的,仅供出参考

                        • 老张博客
                          老张博客 2

                          不知道博主的代码高亮是什么插件呀?

                          • 黑苹果博客
                            黑苹果博客 1

                            博主好!
                            【黑苹果博客】http://www.zhangchenghui.com/
                            望与贵博友链,不知可否?
                            若行,请在做好我站链接后给我留言,我将第一时间给您做上,ok?
                            黑苹果

                            • 希丸嘉
                              希丸嘉 1

                              这些知识很实用。博主还是挺厉害的。

                              • 浩子
                                浩子 2

                                有些功能不错

                                • 巴蒂不是图塔
                                  巴蒂不是图塔 0

                                  添加一个 Favicon 图标不错

                                  • 小奥
                                    小奥 0

                                    这个挺好的。。

                                    • 注会之家
                                      注会之家 0

                                      很实用,自己改主题的时候可以实践一下,谢谢
                                      PS,博主的主题很漂亮。

                                      • 1
                                        1 1

                                        谢谢分享

                                        • wloz
                                          wloz 2

                                          这个主题真的挺好

                                          • 阿鼎
                                            阿鼎 4

                                            老大,你的评论底部电提交留言的时候,不会刷新页面,而是出现

                                            • 阿鼎
                                              阿鼎 4

                                              正在提交,请稍候字样,还带特效,是怎么弄的

                                              • 哈哈老师
                                                哈哈老师 0

                                                这些功能都写成了FUNCTIONG的形式,那也就是说,直接在主题的后台调用就可了吧

                                                • 老张博客
                                                  老张博客 2

                                                  感觉第二点是直接可以用的吧。

                                                    • 知更鸟
                                                      知更鸟

                                                      @ 老张博客 是的,有点多此一举
                                                      代码高亮不是插件,可以参考这篇:
                                                      http://zmingcx.com/do-not-realize-wordpress-code-highlight-plugin.html

                                                    • 挚秭之手
                                                      挚秭之手 0

                                                      弱弱地问一句,如何实现本页面类似的自动分页啊?

                                                      • 过客
                                                        过客 2

                                                        厉害,拜师了

                                                        • wmtimes
                                                          wmtimes 7

                                                          嗯。很不错。学习了。

                                                          • 煎豆
                                                            煎豆 1

                                                            其实真正的高手是能够把自己的知识讲给别人,并且使其易懂,我大概就是自己懂点,但讲给别人,使其听懂很难~~

                                                              • 知更鸟
                                                                知更鸟

                                                                @ 煎豆 真正的高手,根本不屑于搞这些东西,都挣RMB去了,呵呵

                                                              • 煎豆
                                                                煎豆 1

                                                                刚才回复的时候,出现警告!!你看看代码是不是有问题!!Warning: copy() [function.copy]: Unable to access http://www.gravatar.com/avatar/70

                                                                • 防水卷材
                                                                  防水卷材 0

                                                                  太经典了啊,学习了!

                                                                  • xibeiwolf
                                                                    xibeiwolf 0

                                                                    这篇文章不错!我还一般直接去该主题PHP文件了!弯路了。

                                                                    • Ding
                                                                      Ding 1

                                                                      再来踩踩

                                                                      • zerone0211
                                                                        zerone0211 1

                                                                        很不错,可是我笨到连改代码都不会。

                                                                        • lowver
                                                                          lowver 1

                                                                          都很实用,尤其喜欢其中几条。。

                                                                          • 备案
                                                                            备案 2

                                                                            3,不用改代码的吧,直接放在根目录就可以。

                                                                            • 五行
                                                                              五行 1

                                                                              很好.谢谢!

                                                                              • IT不倒翁
                                                                                IT不倒翁 0

                                                                                代码总结的不错,不过建议把作者链接放到相应的代码处,这也是对作者的一种尊重,也是对自己的尊重。

                                                                                • woallf
                                                                                  woallf 2

                                                                                  讲的太好了,学习中……

                                                                                  • 土野鲜
                                                                                    土野鲜 3

                                                                                    高手

                                                                                    • 小甜瓜
                                                                                      小甜瓜 2

                                                                                      很有用,学习了。。

                                                                                      • 歪豪
                                                                                        歪豪 0

                                                                                        8错,如果早点看到的话,就更有帮助了。不过,总算是了解到了相关的知识!

                                                                                        • 袁源
                                                                                          袁源 0

                                                                                          挺全面的,不错,是原创的?

                                                                                          • JSON在线格式化工具
                                                                                            JSON在线格式化工具 1

                                                                                            太全了 太实用了

                                                                                            • 闲云野鹤
                                                                                              闲云野鹤 0

                                                                                              能省则省啊,不过有些功能还是比较有用的。不过这篇还是不太全,再来一篇续的吧!

                                                                                              • javasss
                                                                                                javasss 0

                                                                                                不错 大牛

                                                                                                • 杨峰
                                                                                                  杨峰 1

                                                                                                  3.4.1 的控制台有一个welcome 这个怎么移除呢?
                                                                                                  求指点。
                                                                                                  还有顶部菜单最左面有一个about的菜单。
                                                                                                  是wordpress 官网文档之类,那个菜单。该怎么移除呢?
                                                                                                  希望得到你的帮助。
                                                                                                  网上找了资料,没有我想要的额

                                                                                                    • 知更鸟
                                                                                                      知更鸟

                                                                                                      @ 杨峰 打开右上角“显示选项”中去掉

                                                                                                        • 杨峰
                                                                                                          杨峰 0

                                                                                                          @ 知更鸟 我的意思是我想连右上角选项里面的那个也一块移除。
                                                                                                          看来你是没有没看懂我说什么。那就算了。

                                                                                                      • 杨峰
                                                                                                        杨峰 1

                                                                                                        还有。你的网站很不错

                                                                                                        • 菜鸟
                                                                                                          菜鸟 3

                                                                                                          鸟兄弟,请问:留言这里的“有人回复时邮件通知我”修改成“mail我”怎么办呢?请教了

                                                                                                          • 我爱动感单车网
                                                                                                            我爱动感单车网 7

                                                                                                            :cool: 这个functions. php文件确实非常之强大,可以在里面实现很多我们想要的功能,并且不用改变程序或是主题的任何文件,这点更是做的出类拔萃!我就在里面添加了不少东西,用来实现与增加自己博客的一些功能,这让博客比起最初的时候变得精美与符合自己的心意多了!

                                                                                                            • 秋风
                                                                                                              秋风 0

                                                                                                              邮件评论自动回复不能用,会出现“致命错误:不能重新定义comment_mail_notify(….”版本4.8,不知道什么问题

                                                                                                            匿名

                                                                                                            发表评论

                                                                                                            匿名网友
                                                                                                            :?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

                                                                                                            拖动滑块以完成验证