UCHOME二次开发,添加特定页面CSS的方法

这段时间在给普特英语听力这个网站开发一个SNS插件,用的是UCHOME,实际上就是UCHOME二次开发,当然和开发校内,facebook的插件是不一样的,那些一般别人提供API,然后用那些API开发就行了。做uchome,代码在自己这里,当然还是希望直接集成到系统中了,就像左边那些日志,相册那样的东西。

开始看了前人已经为普特开发好的插件,发现所有的样式都是内联样式,看的我很恶心,我就不信UCHOME没有提供加载自定义CSS的方法,研究了一下他的模板,第一次接触,一时看的有点困难,但是看模板解析函数,知道会把模板解析成PHP,缓存起来,于是我就直接去看那个缓存文件,PHP,当然很容易就看懂了。发现在加载CSS的时候,有下面这句:

if(!empty($_SGLOBAL[‘space_css’])){

echo $_SGLOBAL[‘space_css’];

}

代码是这个意思,但是应该不是这样写的,我现在懒得去看那个代码了。也就是说,判断$_SGLOBAL[‘space_css’]是否存在,然后echo出就行了。这行代码是包含在 <style type=”text/css”>和</style>之间的,所以我们就只用在需要加载我们自定义CSS的页面的时候,PHP文件中定义这个变量就行。因为是直接echo 出的这个变量,所以定义变量的时候,要这样写:

$_SGLOBAL[‘space_css’]=’@import url(“yourcss.css”)’;

如果需要加载好几个CSS文件,只用拼接这个字符串就行了。我想这就是为什么模板中只是简单的echo出这个变量来,这样你可以随便按照你的要求写。


修改Google Reader Share 的widget的样式

我想在博客的侧边栏上放上我的Google Reader的分享,开始我直接用WordPress提供的一个RSS widget来实现,但是我发现它并没有更新,看了会WordPress的源代码,通过官方的文档很快找到了函数的位置,但是没看出来问题在哪里。而且那个是把RSS标题和内容都加载到了用户浏览器上,而只显示了标题,我觉得这样会拖慢我博客的速度,本来速度就不快。

于是转而用Google Reader提供的widget来实现,在Google Reader 里面的 Sharing Settings里面很容易就找到了添加widget用到的代码,这样的js是直接从google的服务器加载的,不用经过我的网站后台,这样速度应该会快点,而且只加载标题和链接以及notes(看你的选择情况了)。把那段代码添加到你的主题文件夹下面的 sidebar.php文件里面就可以,添加位置你自己看着办,根据你想放在什么位置。我是放在最下边的,也就是最下边的一个</div>之前,同样为了遵循规则,新建了一个<div>。

但是加好后你会发现也许那个配色和尺寸不符合你的博客(虽然google提供了几个配色方案,但是总是不能满足所有人的要求吧)Google又没给相关的设置方式,那就只好自己修改CSS了。

这个widget用的是内联样式,优先级很高,但是别忘记了还有 “!important”这个东西,我们只用修改在主题文件夹下的那个style.css文件就可以了,我目前是在最后一行上加上了

/* Google Reader Items  */

#readerpublishermodule0{ margin:0px!important;}

这一行CSS,只用来适应宽度,目前还没修改颜色,但是只要你愿意可以用这种方式做任何你想做的修改。

至于怎么选择你想修改的内容,因为这个查看源代码是JS的形式,所以我们只能通过查看DOM的方式来获取到具体节点,推荐使用Firebug这个Firefox扩展来完成,只用用光标点击你要修改样式的位置就可以清楚的看到对应的DOM节点了,很方便,然后写你自己的CSS就可以了。

/* Google Reader Items  */
#readerpublishermodule0{ margin:0px!important;}

安装WordPress Thread Comment插件后,点击回复没反应或者报错的主要原因

wp thread comment确实是一个很好的评论相关的插件,可以嵌套评论,实现AJAX评论。

但是今天我在安装的过程中却遇到了问题,安装过后,点击回复没反应,换到安装有firebug的firefox下面,js报错,提示movecfm() is not defined。但是粗略的看了一下代码,发现这个地方的js不会出这样的问题啊。然后上网搜索了一下,发现是主题的问题,主题中回复的form没有提供一个这个插件说必须的一个钩子,解决方法就是在当前主题文件夹下面的 comments.php里面稍做修改,在 最靠近下边的<form>标闭合之前签也就是在</form>这行之前添加:
<?php do_action(‘comment_form’, $post->ID); ?>

然后应该就可以了。

点击这里查看wordpress官方文档对这个函数的解释,函数存在在 /wp-includes/plugin.php文件内。主要就是提供钩子给一些插件使用,但是一些主题里面没有写上这些,我现在使用的主题就是这样的,所以如果你的主题和我一样,没有加上这一句,那么使用一些插件的时候可能会遇到同样的问题。

另外多说一句,使用WP Thread Comment插件,嵌套回复的颜色可能和你的主题并不匹配,这个插件提供了一个非常方便的方式来直接修改这一块的CSS,进入管理界面,就可以看见了,我们要修改的地方是:

.comment-childs{

border: 1px solid #999;

margin: 5px 2px 2px 4px;

padding: 4px 2px 2px 4px;

background-color: #E1F3EE;

}

.chalt{

background-color: white;

这一块,这个是我改成符合我主题后的 CSS了,要修改的就是这个里面的两个background-color,.chalt是第偶数个嵌套层的类(从外向内数,从1开始算)。

本博客升级到WordPress2.8.4

今天升级到了2.8.4,换了主题,这个主题来自http://designdisease.com/preview/compositio 我很喜欢这个色调,widget也算丰富,可以满足我的要求,我自己加了豆瓣的豆瓣秀。

安装后发现我的博客名字那两个大写字母变成小写了,于是要想办法改回来,查看HTML代码,发现是大写的,那就是js或者css了,但是查看js没发现有相关代码,然后就查看css,发现这个主题在定义博客名字的CSS的时候加了一句:text-transform: lowercase; 于是删除这个定义就可以了。

另外我还做了一些其他地方的修改来满足我的要求,对这个主题很满意。另外我没有汉化那几个英文单词,我想看这个博客的人,那几个词都认识吧,我就没必要去修改了。

Chrome Dev更新到4.0.211.2,带来了同步书签BUG

刚才更新到4.0.211.2版本后,打开chrome就崩溃,经过排查,发现是书签同步的问题,使用 –enable-sync 就会崩溃,不使用这个就可以正常使用。

Google Chrome Realeases 这里也已经提出来这个BUG。

不过我还是先用着吧,反正chrome目前没有和google toolbar里面的书签进行同步,目前chrome还只在自己机器上使用,在公司机器上,我用的是firefox,使用GoogleToolBar来实现和我自己机器的同步。

等下个版本,这个BUG应该是可以被fix吧,或者直接把书签同步加到选项里面去

WPS处理有复杂排版的文档的时候真慢啊

卡啊卡,卡的很痛苦。看来WPS的排版引擎有问题啊。

我就是处理一下简历而已,也不是太复杂的嘛。

http://bbs.wps.cn/redirect.php?fid=22&tid=21861140&goto=nextnewset 金山社区,这里也有反馈。

不知道OOo怎么样,正在下载,尽量不要盗版啊,所以试试OOo。希望不要让我失望

———————————————–update————————————————–

OOo果然没让我失望,速度明显要快多了。处理起这样稍微复杂的文档,WPS还有很长的路要走。

另外测试了一下到处PDF功能,记得以前WPS给我导出的一页纸的简历的大小是2M多,搞的我不敢用,下载花时间太长,有被abort的危险,现在用OOo,大小只有几十K了,很好!

————————————————分割线——————————————————–

WPS,暂时byebye了,我很支持这种国产软件,但是你目前不能满足我的要求啊。希望一段时间之后,当我用会你的时候不要让我失望。

UltraEdit删除多余的空行

今天在公司上班的时候,做网站编辑的同事需要删除一个MP3歌词的LRC文件里面的那些时间标记,我在UltraEdit里面用正则表达式帮同事处理掉了,这样就会省掉很多事情了。

然后同样的事情,需要处理掉文章中多余的空行,还是用正则表达式。开始简单想用 unix的正则引擎, 替换  \r\n 为空字符串,但是这样执行的结果是不只是去掉了空行,还把所有的行都连在一起来,没有了所有的回车,显然是不行的。

然后求助于google,知道了用UltraEdit的正则引擎可以这样处理 替换 %[ ^t]++^p 为空字符串。这样确实是可行的。

但是其实刚才我第一反应想到的只要变通一下就可以了。后来仔细想了想,其实可以很简单的。

空行无非就是两个回车,那么我们替换两个回车符为一个回车符就可以了嘛。

于是替换 \r\n\r\n 为 \r\n 就可以了,要选择unix的正则引擎。

然后再仔细想想,其实还可以这样处理: 两个回车是 \r\n\r\n 嘛,那我们替换 \n\r 为空字符串就可以了,经过测试可以使用。

有的时候,只要多想想,就可以很方便的解决问题了。学好正则,在很多时候可以大大的提高工作效率啊。

昨天去欢乐谷耍了一天,耍的还真是很欢乐。

由于是周五,所以人很少,基本想玩什么就可以玩什么,一般就只排几分钟队就可以了。

9点多点到欢乐谷的,去的太早,绝大部分娱乐设施还没开发,就在里面瞎逛了一会。先看介绍熟悉一下各个项目。

然后10点钟,直接上很刺激的过山车,确实刺激啊,呵呵,第一次玩过山车,虽然以前也玩过其他种类的这种可以体验到失重,超重,头往下的设施,但是过山车绝对和那些体验不一样的。反正够刺激。

然后因为这个太刺激了,上午玩的其他东西都感觉不到刺激了,不过还好,还有一些很有趣味性的东西。

在吃饭前玩了一个小型的类似过山车的东西,没有过山车那样惊险,但是是有场景的,在假山和水中穿梭,钻进山洞,很有意思。吃午饭前还玩了一个离心力的游戏,一群人,坐到一个转盘上面,然后那个盘子会旋转,由于表面较光滑,所以最终,都要被甩出去。我们一起的其中三个人(包括我)是最猛的,我们是所有玩家最后下来的,那个盘子的速度会越来越快,我们遥遥领先其他人。不过我是我们三个人中最早下来的,那会肌肉实在是承受不住了,另外两个的肌肉确实是要比我强多了。以后好好练肌肉,哈哈。(我觉得我们三个人最后下来的并不是因为肌肉的原因,而是因为我们都是理科生,干事情都很认真,哪怕是玩,我们上去之后,就研究对策,开始当然是让身体尽量往圆心嘛,离心力小啊。但是规则说,圆心的那个东西一碰,机器就会停,只好放弃这个方案。在经过简单的适应过程后,马上研究出,上身往后倒,但不是全倒,然后手掌和小臂都贴在圆盘上,向脚的风向,进过研究,这个方法得到的摩擦力是相当大的,果然,我们要要领先,但是这个方法是需要肩膀和胳膊提供很大的力的,所以我肌肉不够强悍,就没另外两个强)

园区的吃饭的地方确实是贵,但是不能出去吃,出去吃了就要重新买票。于是我们就去吃KFC了,和外面价格应该是一样的,只是汉堡不单独卖,囧,一定要和虾球搭配着才卖。

下午前半段一直在玩有意思的,不刺激的游戏,只好玩的是真人CS,但是也相当累,而且我们组还输了,囧啊囧,枪法太不准了,而且不会配合。

下午还看了极限运动的表演,也蛮不错。

然后后半段,我们又接着去玩刺激的,去鬼屋,去玩自由落体,去玩空中大单摆加旋转。把园区所有刺激的玩意都玩完了,我是玩完了,他们有几个人后来有些东西就没敢玩了。

然后准备去看4D电影,在园区门口的地方,刚好遇到了园区很多表演团队的联华,节目还不错。我还和一个骷髅合影了。

然后玩的最后一个东西就是4D电影了。影片是用的老的偏振光的方式做的3D电影,但是影院有更特别的地方,所以叫做4D,比如电影中有风的场景,就会有风真实的吹你,电影中有水的地方,就会有水喷向你,有震动的地方,椅子就会震动。很好玩。

上图上图:
1
2
关于欢乐谷更多图片请点击我查看。