让WordPress的私有文章(private post)所属的tags和categories显示出来

PHP, 技术心得 2 Comments »

  Wordpress有private post的功能,但是一个post一旦作为private被save而不是public,则不会在数据库中进行计数(不算在已发的文章中)。这里讨论了这个问题。
  现在问题在于,如果一个tag或者category只含有private post,那么它的计数是0,被认为是不含有文章从而不会被显示出来,哪怕是登录以后有权限看private post的情况下也是如此。这里,Wordpress的support forum的一个Moderator建议应该修改wp-includes中的taxonomy.php里的此处

function _update_post_term_count( $terms ) {
	global $wpdb;
 
	foreach ( (array) $terms as $term ) {
		$count = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->term_relationships, $wpdb->posts WHERE $wpdb->posts.ID = $wpdb->term_relationships.object_id AND post_status = 'publish' AND post_type = 'post' AND term_taxonomy_id = %d", $term ) );
		$wpdb->update( $wpdb->term_taxonomy, compact( 'count' ), array( 'term_taxonomy_id' => $term ) );
	}
}

  看起来似乎在 post_status = 'publish' 后面加一个 OR post_status = 'private' 就行了,但实际上没效果。为什么呢?这是往数据库中写的时候用来计数的,不是用来显示的;当我们已经有private post,修改这里并不会让本来被认为是空着的tag和category变得有数字。
Read the rest of this entry »

宇瞻钢铁侠优盘(AH321,群联Phsion UP14 PS2232)量产经历和教训

技术心得 No Comments »

具体来说,我的是群联UP14主控,三星双芯片,8G的宇瞻钢铁侠

先说结论:
1、近期新买的钢铁侠请不要量产!!!
2、群联量产工具的版本号混乱是一些转发的人误解造成

买来之后的测试

请注意,版本号为奇怪的1.06.00
这个版本号的量产工具并未出现在网络上,网络上最新的是1.05.00
Read the rest of this entry »

WordPress+WP-SuperCache之中文tag的Permalink问题全解析

Linux, PHP, 技术心得 No Comments »

  WordPress的中文支持有问题,特别是在使用Permalink的时候,这个大家都知道。本文将分析其中的原因和网上流传的多种解决方案,并给出一个具体的解决结论。
  这个问题主要表现为,在默认情况下,Wordpress对于形如这样的链接(链接1):
  

www.example.com/tag/中文

  不能正常访问,会产生404或500错误,或者其他的错误。
  而对于这样的链接(链接2):
  

www.example.com/?tag=中文

  WordPress就能够正确解析。

  原因:参见这篇文章和这篇文章,这是URL编码问题造成的。对于上面的链接1,这是一个PathInfo,对于链接2,这是一个QueryString。事实证明,对于UTF-8的页面,IE和FF都会正确发送PathInfo和QueryString(而不像有些文章中说的,他们在不同的设置下会有错误的反应),但服务器端,IIS会将PathInfo转换成GBK编码从而造成错误,于是Windows下的此类问题只需要转回来就行了;但是Linux下,Apache不支持中文PathInfo,要么通过这篇文章中的方法来对Apache进行改造,要么只能像我一样,Linux主机无法使用中文permalink。于是,我们只能寻找绕路的方法。
Read the rest of this entry »

LilyStudio & WordPress & N.Design Studio
Entries RSS Comments RSS Log in