<?php<br />
// æ<br />
$args = array(<br />
		'type' => 'monthly', 'limit' => '',<br />
		'format' => 'html',<br />
		'show_post_count' => true,<br />
		'echo' => 0<br />
	);<br />
$links = wp_get_archives($args);<br />
preg_match_all("/(<(a) href='([^']*)'([^>]*)>)(.*?)(</2>)/", $links, $Arrlinks, PREG_SET_ORDER);</p>
<p>foreach($Arrlinks as $ALkey => $ALval){<br />
	$tmp = str_replace(get_option('siteurl'),"",$Arrlinks[$ALkey][3]);<br />
	$tmp = preg_replace("/[^0-9]/", "-",$tmp);</p>
<p>	$Arrlinks[$ALkey]["link"] = get_option('siteurl')."/archives/?archives=";<br />
	$arrTmp = explode("-",$tmp);<br />
	$i = 0;<br />
	foreach( $arrTmp as $ATkey => $ATval ){<br />
		if(strlen($ATval) > 1){<br />
			if($i == 0)<br />
				$Arrlinks[$ALkey]["link"].= sprintf("%04d", $ATval);<br />
			else<br />
				$Arrlinks[$ALkey]["link"].= sprintf("%02d", $ATval);<br />
			$i++;<br />
		}<br />
	}</p>
<p>	$links = str_replace($Arrlinks[$ALkey][3],$Arrlinks[$ALkey]["link"],$links);<br />
}<br />
print_r($links);</p>
<p>// æ¡ä»¶<br />
if(!$_REQUEST['archives']){<br />
	$_REQUEST['archives']=date("Ym");<br />
}<br />
?>