Posts Tagged ‘Wordpress’

更换了域名

Friday, September 21st, 2007

将原来的blog.techpush.com更换到了techpush.com(目的是简化域名,以后可以直接用techpush.com来访问了),并将原域名重定向到新域名,整个过程很简单:

  1. 拷贝blog.techpush.com中的所有文件到techpush.com
  2. 修改wp-config.php文件,新增两行:
    • define(’WP_HOME’, ‘http://techpush.com’);
    • define(’WP_SITEURL’, ‘http://techpush.com’);

    这是Wordpress 2.0以后版本新增加的参数,方便域名链接的变动,这样就无须改动数据库的相关字段了

  3. 在WP管理选项中将permalink更新一下(生成站点根目录下的.htaccess文件)
  4. 利用Dreamhost提供的域名编辑功能将原blog.techpush.com域名重定向到techpush.com

大功告成!目前还未发现什么问题。

这段时间一直在琢磨论文,等这个工作完成后可能会对这个站点做一次比较大的调整,包括WP、主题、分类等可能都将更换,任务艰巨 :mrgreen:

WordCamp Beijing 2007

Thursday, August 16th, 2007

追随着美国WordCamp 2007,北京也要在9月1日搞一个WP粉丝聚会了,想参加的朋友需要先到官方网页注册,可惜知道消息晚了点儿,没赶上前100名,拿不到聚会T-Shirt了 :cry:


I'm going to WordCamp Beijing

快速访问Wordpress的Options

Wednesday, August 8th, 2007

有一种方法可以快速访问Wordpress的所有Option,这些Option会出现在一个页面上,很方便查看和编辑,如下:

  1. 登录到管理界面
  2. 在当前链接上附加options.php,使链接变成这样的形式:http://your-blog-url/wp-admin/options.php
  3. 访问这个链接,即可看到所有的Option以列表的形式出现在同一页面上,见下图:

如果你曾经浏览过WP数据库,会发现这个页面其实是把数据库中**_options表中的内容列了出来,因此最好不要直接在这里编辑和修改,否则很可能会破坏数据库!

Via: Quick access to WordPress options

翻译:Sandbox指南及清单

Wednesday, July 25th, 2007

有消息说Sandbox将会成为下一版本Wordpress的缺省theme,而我在用它改造成我另一个blog的theme后也越发喜欢这个乍看起来简陋无比的家伙 :mrgreen: ,其实作为一款语义式主题,Sandbox内涵非常丰富,你可以利用其丰富的语义标记和大量的类轻松创建自己的风格,甚至无须改动一行php代码,现在小土豆开始撰写Sandbox的使用指南,我也作了翻译,或许这个指南能令你尽快熟悉Sandbox,不过建议你先看一看Sandbox的readme文件,那里面有语义标记和类的详细用法。

原文:Sandbox Guide and Check List 作者:Small Potato
译者:Zhao QL
译文:

Sandbox指南及清单

这个持续更新的指南和清单送给每一个使用Sandbox主题的人。

基本结构

  • div#wrapper [.hfeed]
    • #header
      • h1
      • div#blog-description
    • div#access
      • div.skip-link
      • sandbox_globalnav() [div#menu]
    • div#container
      • div#content
        • div#nav-above [.navigation]
          • div.nav-previous
          • div.nav-next
        • div#post-the_ID() [sandbox_post_class()]
          • h2.entry-title
          • div.entry-date
          • div.entry-content
          • div.entry-meta
          • span.author (.vcard)
          • span.cat-links
          • span.comments-link
        • div#nav-above [.navigation]
          • div.nav-previous
          • div.nav-next
    • div#primary [.sideabar]
      • ul.xoxo
        • li#pages
        • li#categories
        • li#archives
    • div#secondary [.sidebar]
      • ul.xoxo
        • li#search
        • li#rss-links
        • li#meta
    • div#footer
      • span#generator-link
      • span#theme-link

指南

  • 缺省样式表的错误:打开style.css,修改span.req-fieldspan.required
  • 下拉链接:默认情况下,样式表会使子页链接在水平菜单中显示为下拉链接。这在所有浏览器中都没什么作用,因此要修改或者不显示任何子页链接。不显示的方法是给functions.php中的wp_list_pages()函数增加一个参数depth=1,或者修改style.css,针对次级列表项使用display:none;
  • 给页增加评论:可以增加一个自定义段(custom field)允许某些页能够留言。Key = comments. Value = (任意文本).
  • 动态类:在首页,存档页(archive)和搜索页中,文章列表使用div.post;在Page页中,则使用div.page
  • 页标题选择器:h2.page-title替换h2.entry-title
  • 存档标题:存档页的条目标题使用H3而不是H2
  • 评论模板:评论[div#comments-list]和反向链接(trackback)[div#trackbacks-list]是分开的,如果你需要某个样式对两者都起作用,请使用div#comments
  • 定制CSS:如果你不使用默认的Sandbox布局,记得删除缺省的style.css文件中的CSS导入语句,例如:@import url(’sandbox-layouts/2c-l.css’);
  • 控制背景图的浮动:如果你需要在#content#primary#secondary后有背景图,则对#footer使用clear:both并且背景图要用在#wrapper而不是#container中。然后,给#wrapper一个overflow:auto;

用于设计和验证的模板及页

  • 404.php
  • archive.php
  • archives.php
  • attachment.php
  • author.php
  • category.php
  • comments.php
    • no comments
    • logged in
    • must login
    • password protected
  • footer.php
  • index.php
  • links.php
  • page.php
  • search.php
  • sidebar.php
  • single.php

在你的WP主题上放一个登录框

Tuesday, July 10th, 2007

Drupal或者Joomla这样的CMS不同,Wordpress的用户登录是转到单独的一个页面上,如果你想换个方式,像Drupal一样直接在首页上完成登录,那么需要在theme上添加一个登录框,小土豆(small potato)一个帖子中介绍了这种方法并且放出了相关代码,你只需要将这段代码拷贝/粘贴到自己theme的sidebar上即可,如果你想要不同的样式,则需要在CSS中做相应的修改。

小土豆的代码请到他的帖子中下载 :!:

多循环时的翻页问题

Monday, July 9th, 2007

另一个Blog使用了自己在Sandbox主题上改的一个模板,index.php中调用了两个循环(loop),语句如下:

while ($my_query->have_posts()) : $my_query->the_post();
$do_not_duplicate = $post->ID;?>

天佑。不使用query_posts()也可以实现我想要的功能,修改后第二个loop的语句如下:

…….
if( $post->ID == $do_not_duplicate ) continue; update_post_caches($posts); ?>

———other code———


使用in_category()来排除shorts分类中的帖子,但这种方法有个缺陷,实际显示的帖子数是WP后台Option中设定的Post数减去在这个范围内出现的shorts分类帖子的数目,比如后台设定显示10个帖子,而这10个帖子中有两个在shorts分类里,那么实际将显示10-2=8个帖子,有没有更好的方法呢?

更多有关Loop的介绍可以参考Wordpress的官方说明

重置丢失的Wordpress管理员密码

Friday, May 25th, 2007

如果你忘记了Wordpress的管理员密码,找回是很容易的,只需要在登录界面点击Lost your password?链接,系统就会给你的Email发一封包含了密码的邮件,但有些情况下你可能收不到邮件,比如你的Email帐号由于长期不用被删除了,比如邮件莫名其妙的丢失了,这时你可以直接访问Wordpress的数据库,将wp_options表中的admin_email字段和wp_users表中的user_email字段中的Email地址替换为新地址,然后重复开始时的步骤,密码应该可以到达你的新邮箱了。如果你没有权限访问数据库怎么办?Village Idiot的whoo写了一个php代码,可以让你在这种情况下直接修改wordpress密码:

  1. 首先在他的Blog上下载emergency.php文件
  2. 将这个文件上传到你的Wordpress安装根目录
  3. 在浏览器上打开http://www.yourdomain.com/emergency.php
  4. 按照指令操作
  5. 完成后务必在服务器上删除该文件

这个方法我没有试过,建议慎用,如果你有一个新建的Blog,可以试试这种方法,当然最好的办法是永远不要忘了密码 :mrgreen:

为UTW新增一个Tag格式

Tuesday, May 22nd, 2007

我正在搭建一个新Blog,需要在显示tag的同时显示它的使用次数,但UTW本身并没有提供这样的格式,请教天佑后,知道或许可以利用UTW的定制格式来解决这个问题,于是查看了UTW帮助中有关Custom Formatting部分,发现%tagcount%变量就是显示tag使用次数的,这下心里有数了 :mrgreen: ,具体做法如下:

UTW的预定义格式都放在ultimate-tag-warrior-core.php文件中,编辑该文件,找到GetFormatForType函数(大概在1381行),在其中照猫画虎添加一个新的预定义格式,可以自己起一个名字,我是仿照htmllist格式写的,所以命名为htmllistwithtagcount,与htmllist的主要区别就是在%taglink%后面增加了%tagcount%变量(当然你也可以仿照其他格式),如下:

$predefinedFormats["htmllistwithtagcount"] = array (”default”=>”

  • %taglink%(%tagcount%)
  • “,”none”=>”

  • ” . $notagtext . “
  • “);

    改完后保存,上传新的ultimate-tag-warrior-core.php替换掉原文件,然后在template的相应位置将UTW函数的格式改为htmllistwithtagcount,大功告成,看看效果吧:

    升级到Wordpress 2.2

    Wednesday, May 16th, 2007

    Wordpress 2.2发布了,详细的介绍可以参考天佑的帖子,我已经将自己的三个Blog都做了升级,过程比较顺利,原来担心由于新版本中jQuery取代了prototype,会不会导致一些调用prototype的插件失效(比如Alex King写的一些插件,如share-this等),询问了天佑后知道prototype在2.2中并未被完全清除,我查了一下wordpress的js目录,果然prototype还在,升级后也未发现什么问题,所以至少在2.2中不必再担心了 :wink: 。倒是有一个小问题值得注意,我使用的theme支持widgets,而我并不喜欢这种方式,所以没有安装相应的插件,一切平安无事,但由于2.2内置了sidebar widgets功能,它自动激活了theme中的相关代码,开始调用系统自带的widgets取代了我所写的php代码,解决方法就是把theme中与widgets有关的代码删除,通常这段代码是这样的:


    || !dynamic_sidebar(1) ) : ?>
    ……

    而对于更喜欢sidebar modules的用户(比如k2 theme的fans),必须要disable widgets功能才行,请参考天佑的文章

    Update: 天佑提到用disable widgets plugin来控制,这样的话就不用去修改theme文件了

    Wordpress 2.2正式发布

    Wednesday, May 16th, 2007

    Wordpress 2.2正式发布,谨慎观望中……