博客

  • 田间美图集

    预览:

    beautiful-fields-thumbnail

    全集在此,话不多说直接欣赏:

    [galleryview id=8]

  • 『WordPress』Contact Form 7简体中文语言包

    Contact Form 7(CF7)是一款为WordPress博客增加联系表单的插件,填入表单的数据将通过邮件发送到管理员的邮箱(默认)或任意设定的邮件地址。同时还具有上传文件作为附件、多语言支持等特性。

    wordpress-plugin-contact-form-7

    CF7可管理多个联系表单,而且支持表单个性化以及邮件内容定制。表单使用AJAX技术提交,支持CAPTCHA、Akismet垃圾过滤功能等。

    由于原简体中文的汉化作者没有继续跟进新版的汉化工作,我决定自己对该插件进行汉化。翻译结果经测试基本满意,如果你觉得有些地方存在歧义或需要进一步润饰,请与我联系。如果下载链接失效,也请告知,我将随时补档。

    • 适用版本:v2.4.5
    • 插件地址:点击查看
    • 官方网站:http://contactform7.com
    • 汉化文件:下载点1:GE.TT;下载点2:U115;下载点3:MegaUpload
    • 使用说明:下载后放入插件目录的“languages”文件夹下替换旧版文件即可
    • 最后更新:2011年5月6日
  • 索尼推出PSP2

    sony-psp2

    正如之前所报道的,索尼刚刚在东京发布了PSP的继任者—次世代便携娱乐系统(Next Generation Portable Entertainment System),代号为“NGP(次世代便携)”。发布会的最大亮点是,索尼声称该掌机的机能强大到与PS3相当,这也意味着它将能够制造“PS3级的图形效果”。索尼展示了真机硬件及其运行状态。

    新设备将拥有以下特性:

    • 分辨率高达960×544的5英寸OLED触摸屏(现有PSP屏幕为4.3英寸液晶屏,分辨率480×272)
    • ARM Cortex A9 CPU核心(4核)
    • SGX543MP4图形处理器
    • 存储:“新型微闪存卡”(绝对没有UMD了)
    • 全新外观设计(“超级椭圆”外形)
    • 后置触摸板,使玩家能够从机身后部“触摸”或“推动”游戏中的物体
    • 3G和Wi-Fi IEEE 802.11b/g/n连接(首款在便携游戏机上搭载3G的产品)
    • 前后摄像头
    • 双模拟摇杆
    • 倾斜感应SIXAXIS控制器
    • GPS
    • 内置立体声扬声器,麦克风
    • 蓝牙2.1+EDR
    • 尺寸:182.0×18.6×83.5mm

    这里是英文版的索尼日本发布会全文,首个游戏的细节和更多信息在这里

    索尼谈到,PSP2将于今年年底前上市销售,价格尚未确定。

    [galleryview id=7]

  • 盒子里的梦想

    cnb

    梦想有多伟大,多渺小,实现起来有多困难,多容易?将届而立之年的我们,谁还记得自己儿时的梦想?支撑起这个美好的词汇,需要多少辛酸汗水?十几年前,曾经应班主任的要求,写下对将来的自己想说的话。听说那些稿件终究还是遗失了,点点滴滴飘散在风里。珍惜当下。《盒子里的梦想》告诉你,梦想其实很简单。百度2010年会作品,发人深省。

  • 『编年史』数码与胶片相机大事记

    至今仍有许多新进摄影爱好者会讨论应该购买数码相机,抑或旧款模拟胶片相机的问题。事实上,技术进步日新月异,目前数码相机已经实现绝大部分拍照过程中需要用到的功能。

    为了清晰地展示数字和胶片两个时代的兴衰,我们编撰了一份有趣的时间表,凸显出摄影史上最为重要的一些时刻:

    camera-history

    1826年 -涅普斯(Nicephore Niepce)完成了史上首例永久影像保存工作。虽然在此期间有可能存在他所拍摄的其它照片,但他家的外观照片是(目前能找到的)历史上最古老的照片。拍下这张照片所使用的器材,是暗箱和一张带沥青涂层的锡板,当锡板暴露在光线下便发生了永久化学变化。拍摄该影像耗费了八个小时。

    1839年 -威廉·福克斯·塔尔博特(William Fox Talbot)发明了正负片拍摄过程。这种最初定名为“镜画工艺”的过程本质上仍然是负片拍摄,一年后,他简化了整个过程并将其改名为“calotype”。该拍摄手法至今依然广受欢迎。

    1854年 -安德烈·阿道夫·尤金·迪斯德里(André Adolphe Eugène Disdéri)由于引入carte de visite而闻名于世(法语“访问卡”)。迪斯德里的旋转相机能够在一张负片上曝光八张照片。

    1861年 -著名物理学家和数学家詹姆斯·克拉克·麦克斯韦(James Clerk Maxwell)拍下有史以来第一张彩色照片。这张格子呢缎带照片的制造方法是,首先通过红、黄、蓝滤镜分别拍摄,然后合并成一张彩色相片。

    1868年 -法国的路易斯·阿瑟·杜克斯·豪恩(Louis Arthur Ducos du Hauron)成为彩色摄影领域的先驱。通过使用增色法(红、绿、蓝)和减色法(青色、品红、黄色),他将彩色摄影转化成了一门艺术。他为其中一些方法申请了专利,而他最有名的,同时也是最早的一张照片,是法国南部风光照,该照片采用减色法拍摄于1877年。

    1887年 -物理学家和发明家加布里埃尔·乔纳斯·李普曼(Gabriel Jonas Lippmann),在摄影基础上创造了通过干扰现象重现色彩的方法,并于1908年因此获得诺贝尔奖。此方法后来被称为“李普曼光谱感光板”(Lippmann Plate)。

    1888年 -柯达一号箱型相机推出,广大人民群众终于在摄影方面有了一试身手的机会。一旦拍摄完一百张照片,机主需要将相机寄回柯达公司以冲洗照片,价格为每张10美元。

    1900年 -如果说柯达一号箱型相机将摄影推向了普罗大众,那么纸箱相机的发明则将此过程又向前推进了一步。这架相机使得低成本摄影流行起来,并引领世界进入快照时代。这个纸箱相机提供简单易用的控制功能和1美元的照片冲洗价格。

    1902年 -亚瑟·科恩(Arthur Korn)发现实体照片-电报技术(practical photo-telegraphy technology),这意味着图像可以通过电线传输。欧洲地区很快采用该技术,并于1910年实现照片本地传送。洲际传输在1922年最终实现。

    1923年 -哈罗德·艾哲顿(Harold Edgerton)博士发明氙气闪光灯,成为频闪摄影的先驱。这一发明为改善肖像照片铺平了道路,也使得在光线暗淡的地方拍照成为可能。

    1936年 -世界上有了第一台单镜头反光(SLR)相机。这台35毫米单反相机被命名为Ihagee Kine-Exakta,由德国制造。

    1948年 -埃德温·兰德(Edwin Land)在1937年创立的宝丽来公司,于当年发布速拍胶片相机。该设备成为而后几十年宝丽来公司流行不衰的产品。

    1959年 -曾有一个时期,爱克发(AGFA)是紧随柯达之后的摄影界领军企业。正是在这一时期,该公司推出了首台全自动相机Optima。

    1972年 -数字相机的发端远早于人们的想象。威利斯·阿德科克(Willis Adcock),一名德州仪器的工程师,构造出一个无胶片相机的设计并在1972年申请了专利。不幸的是,无人知道这个设计最终是否得以实现。

    1973年 -仙童半导体公司(Fairchild Semiconductor)发布第一块集成电路板,为数字成像铺平了道路,他们比德州数码(Texas Digital)早那么一点点。

    1975年 -史蒂芬·萨森(Steven Sasson)推出第一台使用CCD图像传感器芯片的数码相机。这一创造性发明能够记录黑白两色(录制在盒式磁带上),并提供1万像素的分辨率。该原型机拍摄第一张照片花费了23秒时间。

    1981年 -索尼发布首部商用数码相机Mavica。虽然这是一款摄影行业的革命产品,但其实际上是一台录制静态帧图象的数字视频录像机。

    1986年 -业内领先的柯达公司为我们带来第一个百万像素传感器,能够记录140万像素。1991年,该公司建立了第一个专业数码相机系统(DCS),并应用于尼康F-3,一台面向摄影记者群体的相机。

    1994年 -当时只有一小部分人能够享受到数字技术的成果。苹果公司于1994年2月推出QuickTake 100,一台面向大众并能与家用电脑互动的数码相机。其它公司也紧随其后,发布了柯达DC40、卡西欧QV-11、索尼Cyber-Shot等产品。

    2006年 -数码相机稳步取代胶片相机的地位,宝丽来公司宣布停止生产全部速拍胶片相机产品。

    2010年 -数码相机按月推陈出新,有时甚至每周都有新品发布。新产品拥有更先进的功能、更好的图像质量和更多的存储空间。总体说来,打印数码照片速度快、价格便宜、不浪费,也不存在传统照片冲印的过曝或曝光不足等问题。

    来源:EpicEdits

  • 动物模特

    animal-model-parrot

    对于摄影爱好者来说,这是个颇为有趣的命题。如果说动物们真是模特呢?它们会摆出怎样的造型?看上去效果如何?为了回答上述问题,我们开始了互联网搜寻之旅,目的是找到别具一格的动物模特。

    看看我们的成果吧:动物们有些乐于摆造型,有些显得很愤怒,有些则想要展示它们的自信和自然美,还有些非常害羞。其中有些动物甚至不惜使用道具以使整个画面看起来更富观赏性。说得够多了,让我们一起来欣赏动物们的表演吧:

    [galleryview id=6]

  • 实用WordPress SQL语句集锦:第四章

    在《实用WordPress SQL语句集锦:第三章》中,我们讲解了手工重置密码和变更WordPress域名的方案。本篇我们谈谈显示SQL查询执行次数和恢复数据库的内容。

    7、在博客上显示SQL查询执行次数

    useful-wordpress-sql-hacks-07

    问题。如果我们打算优化博客页面的加载时间,了解对数据库发起的查询次数是很有必要的。为了减少数据库查询次数,首先要知道在单个页面上有多少查询生成。

    方案

    1. 这次无需登录phpMyAdmin。只需打开主题的footer.php文件,并追加以下代码行:
      <?php if(is_user_logged_in()) { ?>
      <?php timer_stop(1); ?> 秒内执行 
      <?php echo get_num_queries(); ?> 次查询。
      <?php } ?>
    2. 保存文件并访问你的博客。在页脚中,我们会看到向WordPress数据库发起查询的次数以及执行这些查询所花费的时间。

    解释。似乎很多WordPress用户不知道这个有用的函数。“get_num_queries()”函数返回页面加载过程中执行的查询数。

    需要注意的是,上述结果只对登录用户显示,因为该指标对一般访问者和搜索引擎机器人没有意义。如果你想要将查询数完全公开,只需删除“if (is_user_logged_in())”这个判断条件即可。

    来源

    8、恢复WordPress数据库

    useful-wordpress-sql-hacks-08

    问题。如果出于某些原因,比方说网站被黑或升级出错,造成了博客数据的丢失或破坏。在你做了数据备份的情况下(希望如此!),将备份文件导入WordPress数据库即可完成恢复。

    方案

    1. 登录phpMyAdmin,选择WordPress数据库。
    2. 在横向列示的菜单上点击“导入”按钮。
    3. 点击“浏览”按钮并选择硬盘上最新的数据库备份文件。
    4. 点击“执行”按钮。如果一切顺利的话,你的WordPress数据库又恢复正常了。
  • 实用WordPress SQL语句集锦:第三章

    在《实用WordPress SQL语句集锦:第二章》中,我们分析的是关于批量删除待审核评论和变更日志归属的SQL命令。这一章我们讲解手工重置密码和变更WordPress域名的方案。

    5、手动重置密码

    useful-wordpress-sql-hacks-05

    问题。为了加强对博客的保护,人们往往选择强密码,如u7* KoF5i8_这样的字符串。这个习惯很好,但我也听到不少忘记密码的故事,绝对的杯具啊。

    方案。虽说遗失密码后,WordPress可以发送电子邮件,让你通过一个链接完成密码重置。但是,如果你不能访问WordPress数据库中记录的电子邮件地址了,或者你比较喜欢运行一个简单的命令来解决该问题,那么下面的方法绝对适合你。

    1. 登录phpMyAdmin,选择WordPress数据库,然后打开SQL窗口。
    2. 输入以下命令(假设你的用户名是“admin”):
      UPDATE wp_users 
      SET user_pass = MD5('PASSWORD') 
      WHERE wp_users.user_login = 'admin' LIMIT 1;
    3. 大功告成。原密码已经被修改为上述语句中标记为“PASSWORD”的字符串。

    解释。用户密码存储在wp_users表中。当然,密码是经过MD5哈希加密的。

    我们提交一个“UPDATE”SQL请求,并使用MySQL内建的MD5函数将新密码转换为MD5值,然后更新原密码。“WHERE”子句确保我们仅更新管理员账号的密码。注意:未经“WHERE”条件限制的语句将导致所有用户密码全部被更新!

    来源

    6、变更WordPress域名

    useful-wordpress-sql-hacks-06

    问题。虽然我们不建议这么做,但有时你可能希望变更博客域名,同时保留原有数据。由于WordPress将域名记录在数据库中,我们必须更新数据库相应条目,以建立新域名与原博客的关联。

    方案

    1. 你猜对了:首先要做的仍然是登录phpMyAdmin,然后选择WordPress数据库。
    2. 点击“SQL”按钮,打开SQL命令窗口。要改变WordPress URL地址,先执行这个命令:
      UPDATE wp_options 
      SET option_value = replace(option_value, 'http://www.oldsite.com', 'http://www.newsite.com') 
      WHERE option_name = 'home' OR option_name = 'siteurl';
    3. 然后,我们要变更各日志的相对URL(GUID)。以下命令能完成该项工作:
      UPDATE wp_posts 
      SET guid = replace(guid, 'http://www.oldsite.com', 'http://www.newsite.com');
    4. 任务接近完成。我们要做的最后一项工作是更新wp_posts表,以确保没有任何绝对URL仍使用原域名:
      UPDATE wp_posts 
      SET post_content = replace(post_content, 'http://www.oldsite.com', 'http://www.newsite.com');
    5. 大功告成。现在我们应该能够使用新网址登录到WordPress控制板了。

    解释。要轻松改变WordPress域名,我们可以借助于超有用的MySQL函数“replace”,即,以一个字符串取代另一个。

    来源

  • 实用WordPress SQL语句集锦:第二章

    在《实用WordPress SQL语句集锦:第一章》中,我们论述了备份数据库和批量删除文章修订的方法。接下来我们分析关于批量删除待审核评论和变更日志归属的SQL命令。

    3、瞬间删除5000条垃圾评论

    useful-wordpress-sql-hacks-03

    问题。真人真事:我的一个朋友最近搭建了自己的博客,并开始在网上四处推广。经过几个星期的紧张工作,他休了几天假没有上网。

    回到家里他看了看博客,结果看到…超过5000条待审核评论!当然,其中大多数是垃圾评论,本来他打算逐一检验,以确保不会删掉一般读者的有效评论。

    方案。令人高兴的是,友人把他的垃圾留言问题告诉了我。在我向他展示下面这条有用的SQL语句前,他已经花了45分钟手工删除垃圾评论。

    1. 登录phpMyAdmin,选择WordPress数据库。
    2. 点击“SQL”按钮。将以下代码粘贴到SQL命令窗口:
      DELETE from wp_comments 
      WHERE comment_approved = '0';
    3. 向垃圾评论说再见!享受未受垃圾评论侵扰的数据库吧!

    解释。wp_comments表包含一个名为comment_approved的字段,取布尔值(1或0)。通过审核的评论该值为1,待审核的评论取0值。通过运行上面的命令,我们删除了全部待审核评论。

    谨慎行事。如果你有一大堆垃圾留言需要删除,这种解决方案是非常有用的,但也可能删掉未经审核的有效评论。因此,如果你还没用上Akismet,马上安装它以阻止垃圾评论的骚扰。

    来源

    4、变更日志归属

    useful-wordpress-sql-hacks-04

    问题。WordPress安装完成之后会自动创建一个“admin”帐户。一些博客作者误将该帐号用于写作博文,后来才意识到这不是个人用户。

    方案。逐篇文章修改作者署名需要花费很多时间。令人高兴的是,SQL语句可以帮你搞定这一切:

    1. 登录phpMyAdmin,然后选择WordPress数据库。
    2. 首先,我们必须找到正确的用户ID。为此,打开SQL命令窗口,并执行以下命令:
      SELECT ID, display_name FROM wp_users;
    3. phpMyAdmin将显示一个与WordPress用户名相关联的用户ID列表。假设NEW_AUTHOR_ID是最近创建的作者ID,而OLD_AUTHOR_ID是原管理员帐户ID。
    4. 欲用NEW_AUTHOR_ID替换OLD_AUTHOR_ID,运行以下命令:
      UPDATE wp_posts 
      SET post_author = NEW_AUTHOR_ID 
      WHERE post_author = OLD_AUTHOR_ID;
    5. 这样一来,所有以前由admin用户撰写的文章,现在都转换到你所选择的新用户名下了。

    来源

  • 实用WordPress SQL语句集锦:第一章

    过去10年来,MySQL数据库以令人难以置信的速度在网络上流行起来。每一个WordPress博客都由MySQL数据库驱动,存储博客日志、设置、评论等内容。

    面对WordPress,虽然插件或编码技巧可以解决一些问题、完成某些任务,但是有时除了通过phpMyAdmin或SSH执行SQL语句外,你别无选择。下面让我们来看看WordPress实用SQL语句集锦。本系列文章的每个篇章都严格按照提出问题、解决问题、解释说明的思路撰写,以使读者真正了解掌握解决问题的方法,达到举一反三的效果。

    1、创建数据库备份

    useful-wordpress-sql-hacks-01

    问题。尽管本文论及的所有语句已经过测试,我们仍然应当先备份MySQL数据库,再尝试执行这些语句。

    方案。要手工创建一个WordPress数据库备份,请按照下列步骤进行:

    1. 登录phpMyAdmin,选择WordPress数据库。
    2. 接着在横向列示的菜单上点击“导出”按钮。
    3. 选择压缩方法(我个人习惯使用gzip),然后点击“执行”按钮。
    4. 浏览器会提示是否需要下载备份文件。选择“是”,然后将该文件储存在硬盘驱动器上。

    解释。需要注意的是,创建WordPress数据库备份的任务,可以通过WP-DB-Backup插件更容易地实现。每一个WordPress用户都应该安装此插件,并定期进行数据备份。(译注:此提示虽显絮叨却是博客作者都应遵循的准则。因为主题或插件没了都可以再安装,但数据没了那么所有过往的努力都将付诸东流。)

    2、批量删除日志修订记录

    useful-wordpress-sql-hacks-02

    问题。修订版本是WordPress 2.6引入的功能,该功能虽然在某些场景下比较有用,但也增加了MySQL数据库的大小。尽管我们可以手动删除文章修订版本,但这是非常漫长而枯燥的工作。

    方案。这个问题的解决方法很简单:我们通过执行简单的SQL查询来批量删除日志修订记录。如果你有很多的日志,其结果可能令人难以置信:数据库的大小将减少一半!

    1. 登录phpMyAdmin,选择WordPress数据库。
    2. 点击“SQL”按钮。将以下代码粘贴到SQL命令窗口:
      DELETE FROM wp_posts WHERE post_type = "revision";
    3. 大功告成。最终节省的数据库空间大小取决于博客文章数的多少。

    解释。wp_posts表有一个名为post_type的字段。此字段有几个取值,如“post”、“page”或“revision”。想要去除文章修订版本,只需运行一个命令以删除wp_posts表中,post_type字段等于“revision”的记录。

    来源