DFdou's Blog Life is short,Be yourself.

3006/090

WordPress-2次开发常用函数

全函数列表请参见这里:《WordPress模板标签Template_Tags》
这里只列出最常用的几个。先是重要的bloginfo(),不直接echo数值的函数为get_bloginfo();恩,不少函数都是按照这个规则写的,PS:并不是全部!echo出函数值的函数为xxx()的话,那么不echo出结果值的的函数为get_xxx()。
该函数范围的是WordPress的配置参数,主要参数和值举例如下,常用的黑体标出:

admin_email = admin@example
atom_url = http://example/home/feed/atom
charset = UTF-8
comments_atom_url = http://example/home/comments/feed/atom
comments_rss2_url = http://example/home/comments/feed
description = Just another WordPress blog
home = http://example/home这个是网站首页地址
html_type = text/html
language = en-US
name = Testpilot网站名称
pingback_url = http://example/home/wp/xmlrpc.php
rdf_url = http://example/home/feed/rdf
rss2_url = http://example/home/feed
rss_url = http://example/home/feed/rss
siteurl = http://example/home也是网站地址
stylesheet_directory = http://example/home/wp/wp-content/themes/largo
stylesheet_url = http://example/home/wp/wp-content/themes/largo/style.css主题文件夹下的style.css地址
template_directory = http://example/home/wp/wp-content/themes/largo主题包地址
template_url = http://example/home/wp/wp-content/themes/largo
text_direction = ltr
url = http://example/home
version = 2.7
wpurl = http://example/home/wp
举例,bloginfo("wpurl ")会输出“http://example/home/wp”。

1505/090

AAS3WDP-Chapter 6 Remote Proxy 远程代理

这里是一个Flickr的远程图片搜索代理实例,对了,Flickr的远程图片搜索需要申请API,别忘了去申请一个。
代码部分,类PhotoSearchProxy.as:

package{
	import flash.events.DataEvent;
	import flash.events.Event;
	import flash.events.EventDispatcher;
	import flash.net.URLLoader;
	import flash.net.URLRequest;

	public class PhotoSearchProxy extends EventDispatcher{
		private static const API_KEY:String="c4643072bfc38caa0257f4c039624cb5";//这是我的Flickr Api_key
		private static const FLICKR_URL:String="http://api.flickr.com/services/rest/";//Flickr的api地址

		public function PhotoSearchProxy(){}
		private function onComplete(_evt:Event):void{
			dispatchEvent(new DataEvent(Event.COMPLETE,false,false,XML(_evt.target.data)));
		}
		public function search(userId:String,tags:String):void{
			var loader:URLLoader=new URLLoader();
			var request:URLRequest=new URLRequest(PhotoSearchProxy.FLICKR_URL+"?method=flickr.photos.search&user_id="+userId+"&tags="+tags+"&api_key="+PhotoSearchProxy.API_KEY);
			loader.addEventListener(Event.COMPLETE,onComplete);
			loader.load(request);
		}
	}
}

在loader载入request之后dispatchEvent一个DataEvent。
具体调用部分:

import PhotoSearchProxy;
var flickr:PhotoSearchProxy=new PhotoSearchProxy();
flickr.addEventListener(Event.COMPLETE,onComplete);
flickr.search("","yellow");
function onComplete(_evt:DataEvent){
	trace(_evt.data);
}

实际化PhotoSearchProxy之后,调用search方法,load完之后接收dispatchEvent的DataEvent的data并trace。
记得以前看过的一个AIR的RSS阅读器也是这样做的,写了个EventDispatcher的子类,载入RSS源地址后dispatchEvent。。。

1205/0910

Google Maps API for Flash Demo

Google Maps API的ActionScript3版本出来已经有一段时间了,今天在官方文档(里边有很详细的介绍)那看了一下,做了2个Demo,关于中文版的地图…恩,,是没出?还是SDK里可以设置语言?知道的告诉我一下,我是农民,不知道怎么设置。
先是一般的地图,带标记,拖动,和位置查询。

1501/090

Google Calendar的API和外部调用

google calendar
前几天在跟小胡胡诌的时候谈到了Google Calendar,说能不能在Blog里嵌入Google Calendar的内容。
今天中午刚好有时候看了下,Google本身提供了一整套Google Calendar的API,不仅可以调用Google Calendar的内容,
还可以进行内容添加和修改的操作,具体API内容请查看Google Calendar API 官方文档
如果只是在某一个地方掉用Google Calendar,那还是很简单的,进入自己的帐号,点击Calendar,然后在左边点击"设置",
就会看到上边这张图了,下边这段iframe代码就是Calendar,放到需要显示的地方就可以了。

//宽度跟高度,颜色都是可以自己设置的
<iframe src="http://www.google.com/calendar/hosted/novait.net/embed?src=doufu%40novait.net&ctz=Asia/Shanghai" style="border: 0" width="800" height="600" frameborder="0" scrolling="no"></iframe>

我弄了一个Google Calendar来记录平时的流水帐,详情请点击这里查看
另外听说,在Wordpress内调用的话,存在这么一个插件叫wpng-calendar,看截图可以比较完整的展示日志内容,
有兴趣的可以去下载安装个看看。

1408/081

Drupal常用API函数介绍 字符串截取函数truncate_utf8()

使用格式truncate_utf8($string, $len, $wordsafe = FALSE);
各参数介绍:
$string 想被截段的字符串。
$len 函数执行后返回字符串的长度上限。
$wordsafe 标志符。TRUE表示在最近的空格处截断并返回;FALSE则不。drupal的API参考指名默认FALSE。
返回值就是截取下来的字符串,在想用的地方打印即可。
不过用了感觉中文截取时的长度不太对,一个汉字是按照4个长度来算,而字符则是1个长度……
下边是函数体:

function truncate_utf8($string, $len, $wordsafe = FALSE) {
    $slen = strlen($string);
    if ($slen < = $len) {
          return $string;
    }
    if ($wordsafe) {
          while (($string[--$len] != ' ') && ($len > 0)) {};
    }
    if ((ord($string[$len]) < 0x80) || (ord($string[$len]) >= 0xC0)) {
          return substr($string, 0, $len);
    }
    while (ord($string[--$len]) < 0xC0) {};
        return substr($string, 0, $len);
}