整顿,修养

从今天开始决定不再接WP theme的单子了。停止通过廉价的劳动积攒经验,开始静心学习。总结一下吧。

到现在至少做了四五十WP theme,虽然挣得钱很少,但是真的学了很多很多东西。这也是为什么我一直在坚持做的原因,技能可以学,但是经验是做出来的。例如:如何摆平IE6,这个给我造成了很大麻烦的浏览器,其实我不喜欢hack,我希望我的布局能在没有hack的情况下尽量兼容各大浏览器,所以每个css我都坚持hack不超过3个。学会了做css dropdown menu。之所以把这个也作为收获是我认为这个在建站的时候确实很有用,也是对css综合能力的一个考量,涉及很多方面。对jQuery的学习我的插件Easy Picasa应该算交了一份试卷吧。

也有一些不好的苗头在发芽,例如曈妈说得很对啊,我现在对细节的控制变差了。刚开始做theme的时候虽然技术没有现在成熟,但是绝对比现在细致,也该反省一下自己。

感觉在目前的理论知识基础上很难再进步了,再做就真的是无用功了。我决定开始新一阶段的学习。学习的重点:YUI,还要恶补一下js。

要做的事也很多,自己家的网站,这个小窝,花蕾365。自家的插件也要整理一下,该发的要发了。看,漏了那么多功课嗫。

还要做些小手工,做做面膜,俯卧撑,仰卧起坐。

时间就是不够用啊。

去掉域名里的www(.htaccess)

前段时间偷偷去掉了域名里的www,看了ma.tt的文章,修改了WP的index.php(后来才发现ma.tt写了个插件WordPress no-www)。头几天挺好,PR也过来了,不过再后来PR就消失了,Leo说是PR没刷新,我晕,等等吧,怎么等也不见好,这时候唐唐说他转的域名PR恢复了,我突然反应过来升级WP该不是把我改的index.php覆盖了吧,一看果然是。重新Google .htaccess的解决方式吧。

  # 301 redirect to domain without 'www.'
  RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
  RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

参见《301 Redirect With No WWW Using Htaccess》

也不知道有用没用。

WP空白首页历险记

今天又碰到个郁闷错误,瞳妈紧张兮兮的在QQ上说:花蕾怎么连不上了?一片白啊!

我一看,那叫一个白啊,⊙﹏⊙b汗!啥都没有啊。

想了想,先升级wp,后台一跑,挺好的呀。顺利升级,刷新,还是一片白。OK,我的theme写得有问题(用了都快1年的theme,怎么会突然有问题?不管了),启动default,还是一片白。那么??禁用插件,还是白的,Orz。

在大脑空白n分钟后到群里吼,然后开始google,关键词:“wordpress blank page”,结果有个外国哥们儿写,wp每个月都会定时不定时的来那么一次blank page,搞得和大姨妈一样,写了几个处理办法,我一看不外乎就是升级禁用插件,不过还写了看看php和mysql的版本。到cpanel里看了看,也没问题啊。那叫一个郁闷啊。

这时群里一群友说:“好像就是首页出了问题。”这算怎么回事儿啊。

决定全删掉,重装wp,顺手开了cpanel的文件管理(windows时代的,command line用不好),一个一个文件钩,突然我发现一个index.html,长度0,圈圈你个叉叉,谁放了个index.html在根目录?(曈妈,是你不?)删了,那丢失的主页又回来了,曈曈,优优,你们的笑脸真漂亮啊。

所以,同志们,有时候很多错误真的是很白。

[BUG]is_front_page

今又碰到一个wp的bug,也不知道说是wp的bug好还是我的数据库bug。

做顶部的“首页”链接的时候,我选择了is_front_page做为判断,不过失败了,换了is_home就好了,然后我就陷入了无限郁闷当中。看了一眼代码:

function is_front_page () {
// most likely case
if ( 'posts' == get_option('show_on_front') && is_home() )
return true;
elseif ( 'page' == get_option('show_on_front') && get_option('page_on_front') && is_page(get_option('page_on_front')) )
return true;
else
return false;
}

咋用了get_option('show_on_front')嗫,跑到后台一看,在“Setting - Reading”里面的“front page displays”里一个都没有选。再看数据库,果然,没有show_on_front这一条。剩下就是提交bug,然后改代码。

迂回的解决方法:if(get_option('show_on_front')?is_front_page():is_home()){}

Python中的a?b:c

写代码到一半,今天是Python,想用(?:),然后突然发现强大的Python竟然不支持这个,OMG。Google之,事实证明总有类似的方法:

val = float(raw_input("Age: "))
status = ("working","retired")[val>65]
print "You should be",status
<?php $status = ($val > 65) ? "retired" : "working"; ?>

BTW: 谁能告诉我ternary operator的中文是什么?玉伯说了,叫“三元操作符”,Leo说叫“三目运算”,也有说叫“逻辑运算”的。

今天看到一blog叫life is short - you need Python!

事实证明我又白了一次,人家用的就是tuple嘛,先建个("working","retired"),后面的[val>65]就相当于[0]或者[1],其实一点儿都不奇妙,只是人家不说咱就想不到。

关于“囧”

“囧” 【jiǒng 原义:光明;网义:郁闷、悲伤、无奈、无语等等,示意很好很强大,指处境困迫,喻尴尬,为难。具体请参照字型,并去领悟。】这个字现在突然变得相当的常见,最近在用搜狗输入,发现点儿东西:
囧的表情:o(╯□╰)o
拜倒:囧rz
囧国国王:崮rz 【gù 四周陡削、山顶较平的山(多用于地名):孟良崮(在中国山东省)。】
囧国皇后:莔rz 【méng 一种中药草,即“贝母”。 】
囧戴笠:商rz
囧掉下巴:冏rz 【jiǒng 古同“炯”,明亮有神。】
囧放屁:囧rz=З

所有的拼音和注解来自:在线新华字典

3种方式改变默认avatar图片

第一种,增加后台的默认avatar选项,然后到后台的Settings-Comment设置里面选中,保存。这个比较适合自己网站有固定的默认头像图片,换任何theme都用这一个图片的情况。代码:

add_filter( 'avatar_defaults', 'fb_addgravatar' );
function fb_addgravatar( $avatar_defaults ) {
  $myavatar = '/avatar.jpg';//avatar地址
  $avatar_defaults[$myavatar] = 'Avatar';//avatar名称
  return $avatar_defaults;
}

第二种,通过get_avatar这个函数,设置第三个参数为默认头像的地址。这个适合需要默认头像配合当前模板来获得最大视觉效果情况,完全忽略后台设置,超级适用于对MU统一的默认头像管理。代码:

<?php 
  echo get_avatar( $id_or_email, $size = '96', $default = '<path_to_url>' ); 
?>

第三种,通过filterget_avatar来设置默认头像的地址。这个适合2.7中使用了默认的wp_list_comments(),或者作为子模板,不能直接调用get_avatar(),或者代码中多次使用了get_avatar(),想做统一修改的。代码:

<?php 
add_filter('get_avatar', 'change_default_avatar', 1000, 4);
function change_default_avatar($avatar, $id_or_email, $size, $default){
  return str_replace(urlencode($default), urlencode("<path_to_url>"), $avatar);
}
?>

乖宝宝

正在跟宝宝视频,小家伙又学会了很多东西。

现在宝宝什么都愿意学,学大人抓筷子,抓笔,抓鼠标。爷爷说,宝宝抓筷子比她爸爸抓得还要好。刚才抓着鼠标,突然发现动鼠标屏幕上的箭头就会跟着动,呵呵地笑了半天,动一下,笑一声,最后成功的把msn点掉,视频断了。

问宝宝:想不想妈妈?
——想。
——哪里想?
指指心口。

宝宝抱着酒的空包装盒,问她:里面有没有东西?
——没有。

自己拿着笔乱涂,弄到手上,问她:有没有弄到手上?
眼皮抬都不抬:没有。

估计她只会说“没有”。

一共有22页,现在是第9页:« 最前...78[9]1011...20...最后 »