WordPress 应用中如何实现 URL 内部重定向

这里要说的 URL 重定向不是指地址栏输入一个 url a,然后地址栏的 url a 被变为 url b 那样的重定向,而是指 url 不变的重定向,也就是重定向过程在服务端默默的帮你完成了。

这个需求是源于开发 WordPress 插件时,然望在前端仅用 http://unmi/dosth 这种形式来访问自己的插件程序,而不是用 http:/unmi/wp-content/my-wordpress-plugin/dosth.php 这么一长串不友好的 URL。

有三种办法:

1. WordPress 是极力推荐与 Apache 搭配使用,所以可以在 Apache 的配置文件中用 Alias 指令。其实一开始我是想在应用的 .htaccess 文件中加指令,使用 mod_rewrite 模块来实现 URL 内部重定向功能,但碰到一些问题,所以暂时先在 httpd.conf 中加过 Alias 指定别名来实现过: 阅读全文 >>

Asp.Net 让文本框在按回车键时表单不提交

Asp.Net 的 WebForm 中光标在文本框时按回键默认就会提交表单,多数时候确实带来了很好的用户体验,输入数据后,手不用离开键去乱摸鼠标就能完成表单的提交。但总有例外不想要这种默认行为,一定有的,你遇到了就知道的,比如想在文本框中回车做别的事情,那就要点技巧的。

很多人可能会告诉你对文本框加个事件,回车的时候把 keyCode 由 13 变为 9(其实 keyCode 变为 9 是使回车相当于 Tab 键的功能),不过还未完事,你并没有阻止事态进一步蔓延,Form 还是提交了。 阅读全文 >>

Lucene 应用 WordNet 的同义词典实现同义词检索(C#版)

同义词检索应该很多时候会用得上的,举个简单的例子,我们搜索关键字 good 的时候,与 well 和 fine 等的词条也可能是你想要的结果。这里我们不自己建立同义词库,直接使用 WordNet 的同义词库,本篇介绍 C# 版的实现步骤,还会有续篇--Java 版。

由于 Lucene 是发源于 Java,所以 C# 的应用者就没有 Java 的那么幸福了,Java 版已经有 3.0.2 可下载,C# 的版本还必须从 SVN 库里:https://svn.apache.org/repos/asf/lucene/lucene.net/tags/Lucene.Net_2_9_2/ 才能取到最新的 2.9.2 的源码,二制包还只有 2.0 的。 阅读全文 >>

在 WordPress 插件管理页面中引入样式或脚本文件

在开发 WordPress 插件时,你当然可以在每一个你需要用到样式或脚本文件的页面像传统方式那样把它们引入,比如:

有个插件 hello-unmi, 要在管理页面中引入插件目录的 include 文件夹里的 admin-style.css 和 admin-core.js 文件,可以在每个要用到它们的页面都写上:

页面多了会是个麻烦,要说问题也不大,不过我们既然在 WordPress 的插件体系中,应该考虑好利用上下文给我们带来的便利。可以在 'admin_enqueue_scripts' 的 action 扩展中去引入,这样我们就只要写一次就能为所有(或特定)的管理页面引入想要的样式和脚本文件. 阅读全文 >>

用 hMailServer 和 AfterLogic Webmail 架设邮件服务器

hMailServer http://www.hmailserver.com/,Windows 下开源的邮件服务器,带管理端程序,需用第三方邮件客户端链接收发邮件
MailSuite Lite for Windows http://www.afterlogic.com/community-editions/mailsuite-lite,一个 WebMail 程序,有 asp.net 和 php(可以支持 Linux) 版,支持 Web 管理邮件和 Web 收发邮件,地址簿管理。

其实在 http://www.afterlogic.com 网站上还有一些支持多平台的 Pro 邮件软件下载,可以使用 5 用户无限期版来做测试。

http://hi.baidu.com/kk126/blog/item/4927962f6dd56a351e308927.html

关于 NLB(Network Load Balancing) 会话状态--相似性的选择

but,在节点之间切换的话,web承载的论坛需要重新登录,SQL需要重新登录,Exchange需要,SMB会不会呢,全无状态信息,咋办?

关于你说的状态信息我不清楚。但从NLB的角度来说的话是需要重新登录的。

1. 你说的SMB,是说访问NLB上的共享文件么?这个也是需要重新登录的。

2. 关于NLB的工作机制,其实NLB所做的,只是把网络流量平均分担到不同的NLB 节点。NLB的算法能保证来自于同一个IP和端口的流量总是由同一个NLB节点来响应。 阅读全文 >>

WordPress Rewrite / Permalink内部过程分析[转]

本文说明WP 对URL rewrite并生成当前请求的过程.

关于Query Vars这是WordPress全部代码中最重要的变量,所谓的query vars是一系列变量集合. WP通过解析URL设定query vars, 并通过分析query vars值决定显示那些文章,设定标志位等.所谓标志位是WP_Query类中一系列$is_xxx形式布尔成员变量,所有的is_xxx()形式template tag实际上都是返回$wp_query里对应成员变量值. 举例而言,如果当前页面是单篇文章, 则p这个Query Var(以下简称变量)值不为空.(在WP类里空的query var根本不存在,而WP_Query类里如果对应name的query var没有设置,$wp_query->query_vars['varname']被填充为空值), 如果当前为搜索页, s变量值则为搜索关键字. 如果p和page两个变量都不为空值, 则当前为单篇文章分页页面, 依次类推. Query Vars在WP类($wp)里根据WP_Rewrite里的rewrite规则生成, 在WP_Query($wp_query)类里这些变量被用来建立主循环. 阅读全文 >>

自定义 WordPress 插件如何对记录进行分页

在我们为 WordPress 开发插件的时候,在涉及到列表显示许多记录的时候,肯定要考虑分页显示的问题。自然的,不管是简单性也好,还是统一性,直接参考下 WordPress 自己是怎么实现的,看看 Posts 或 User 管理页面的实现代码,比如 User 管理页面的实现代码在 wp-admin/includes/user.php 中的 WP_User_Search 类。默认实现其实是很好看的,如:。那我们如何在自己的插件里实现这样的效果呢,比如像这个: 阅读全文 >>