⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 template-functions-general.php

📁 在综合英文版XOOPS 2.09, 2.091, 2.092 的基础上正式发布XOOPS 2.09中文版 XOOPS 2.09x 版主要是PHP5升级、bug修正和安全补正: 1 全面兼容PHP 5.
💻 PHP
📖 第 1 页 / 共 2 页
字号:
                }            }        }	} elseif ('postbypost' == $type) {		$arcresults = $wpdb->get_results("SELECT ID, post_date, post_title FROM {$wpdb->posts} WHERE post_date < '$now' AND post_status = 'publish' ORDER BY post_date DESC" . $limit);        if ($arcresults) {            foreach ($arcresults as $arcresult) {                if ($arcresult->post_date != '0000-00-00 00:00:00') {                    $url  = get_permalink($arcresult->ID);                    $arc_title = stripslashes($arcresult->post_title);                    if ($arc_title) {                        $text = strip_tags($arc_title);                    } else {                        $text = $arcresult->ID;                    }                    echo get_archives_link($url, $text, $format, $before, $after);                }            }        }	}}function get_calendar($daylength = 1) {	global $wpdb, $m, $monthnum, $year, $timedifference, $month, $weekday,  $posts, $wp_month_format,$blog_charset;    // Quick check. If we have no posts at all, abort!    if (!$posts) {        $gotsome = $wpdb->get_var("SELECT ID from {$wpdb->posts} WHERE post_status = 'publish' ORDER BY post_date DESC LIMIT 1");        if (!$gotsome)            return;    }	if (isset($_GET['w'])) {		$w = ''.intval($_GET['w']);	}	$time_difference = get_settings('time_difference');	// Let's figure out when we are	if (!empty($monthnum) && !empty($year)) {		$thismonth = ''.intval($monthnum);		$thisyear = ''.intval($year);	} elseif (!empty($w)) {		// We need to get the month from MySQL		$thisyear = ''.intval(substr($m, 0, 4));		$d = (($w - 1) * 7) + 6; //it seems MySQL's weeks disagree with PHP's		$thismonth = $wpdb->get_var("SELECT DATE_FORMAT((DATE_ADD('${thisyear}0101', INTERVAL $d DAY) ), '%m')");	} elseif (!empty($m)) {		$calendar = substr($m, 0, 6);		//$calendar = xoops_substr($m, 0, 6);		$thisyear = ''.intval(substr($m, 0, 4));		//$thisyear = ''.intval(xoops_substr($m, 0, 4));		if (strlen($m) < 6) {			$thismonth = '01';		} else {			$thismonth = ''.intval(substr($m, 4, 2));			//$thismonth = ''.intval(xoops_substr($m, 4, 2));		}	} else {		$thisyear = intval(date('Y', time()+($time_difference * 3600)));		$thismonth = intval(date('m', time()+($time_difference * 3600)));	}	$unixmonth = mktime(0, 0 , 0, $thismonth, 1, $thisyear);	// Get the next and previous month and year with at least one post	$previous = $wpdb->get_row("SELECT DISTINCT MONTH( post_date ) AS month, YEAR( post_date ) AS year			FROM {$wpdb->posts}			WHERE post_date < '$thisyear-$thismonth-01'			AND post_status = 'publish'							  ORDER BY post_date DESC							  LIMIT 1");	$next = $wpdb->get_row("SELECT  DISTINCT MONTH( post_date ) AS month, YEAR( post_date ) AS year			FROM {$wpdb->posts}			WHERE post_date >  '$thisyear-$thismonth-01'			AND MONTH( post_date ) != MONTH( '$thisyear-$thismonth-01' )			AND post_status = 'publish'							  ORDER  BY post_date ASC							  LIMIT 1");	$month_str = ereg_replace('%MONTH',$month[zeroise($thismonth, 2)],$wp_month_format);	$month_str = ereg_replace('%YEAR',date('Y', $unixmonth),$month_str);	echo '<table id="wp-calendar">	<caption>' . $month_str . '</caption>	<thead>	<tr>';	foreach ($weekday as $wd) {		/*		if (function_exists('mb_substr')) {			echo "\n\t\t<th abbr='$wd' scope='col' title='$wd'>" . mb_substr($wd, 0, $daylength,$blog_charset) . '</th>';		} else {			echo "\n\t\t<th abbr='$wd' scope='col' title='$wd'>" . substr($wd, 0, $daylength) . '</th>';		}		*/		echo "\n\t\t<th abbr='$wd' scope='col' title='$wd'>" . xoops_substr($wd, 0, $daylength) . '</th>';	}	echo '	</tr>	</thead>	<tfoot>	<tr>';	if ($previous) {		/*		if (function_exists('mb_convert_encoding')) {			$smonth_name = mb_substr($month[zeroise($previous->month, 2)], 0, 3,$blog_charset);		} else {			$smonth_name = substr($month[zeroise($previous->month, 2)], 0, 3);		}		*/		$smonth_name = xoops_substr($month[zeroise($previous->month, 2)], 0, _WP_CAL_SMONTH_LEN);		$month_str = ereg_replace('%YEAR',date('Y', mktime(0, 0 , 0, $previous->month, 1, $previous->year)),$month_str);		echo "\n\t\t".'<td abbr="' . $month[zeroise($previous->month, 2)] . '" colspan="3" id="prev"><a href="' .				get_month_link($previous->year, $previous->month) . '" title="浏览' . $smonth_name . '">&laquo; ' . $smonth_name . '</a></td>';	} else {		echo "\n\t\t".'<td colspan="3" id="prev" class="pad">&nbsp;</td>';	}	echo "\n\t\t".'<td class="pad">&nbsp;</td>';	if ($next) {		/*		if (function_exists('mb_substr')) {			$smonth_name = mb_substr($month[zeroise($next->month, 2)], 0, 3,$blog_charset);		} else {			$smonth_name = substr($month[zeroise($next->month, 2)], 0, 3);		}		*/		$smonth_name = xoops_substr($month[zeroise($next->month, 2)], 0, _WP_CAL_SMONTH_LEN);		$month_str = ereg_replace('%MONTH',$month[zeroise($next->month, 2)],$wp_month_format);		$month_str = ereg_replace('%YEAR',date('Y', mktime(0, 0 , 0, $next->month, 1, $next->year)),$month_str);		echo "\n\t\t".'<td abbr="' . $month[zeroise($next->month, 2)] . '" colspan="3" id="next"><a href="' .				get_month_link($next->year, $next->month) . '" title="浏览' . $month_str . '">' . $smonth_name . ' &raquo;</a></td>';	} else {		echo "\n\t\t".'<td colspan="3" id="next" class="pad">&nbsp;</td>';	}	echo '	</tr>	</tfoot>	<tbody>	<tr>';	// Get days with posts	$dayswithposts = $wpdb->get_results("SELECT DISTINCT DAYOFMONTH(post_date)			FROM {$wpdb->posts} WHERE MONTH(post_date) = $thismonth			AND YEAR(post_date) = $thisyear			AND post_status = 'publish'			AND post_date < '" . date("Y-m-d H:i:s", (time() + ($time_difference * 3600)))."'", ARRAY_N);	if ($dayswithposts) {		foreach ($dayswithposts as $daywith) {			$daywithpost[] = $daywith[0];		}	} else {		$daywithpost = array();	}	if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE") ||		  strstr(strtolower($_SERVER["HTTP_USER_AGENT"]), "camino") ||		  strstr(strtolower($_SERVER["HTTP_USER_AGENT"]), "safari")) {		$ak_title_separator = "\n";	} else {		$ak_title_separator = ", ";	}	$ak_titles_for_day = array();	$ak_post_titles = $wpdb->get_results("SELECT post_title, DAYOFMONTH(post_date) as dom "										 ."FROM {$wpdb->posts} "										 ."WHERE YEAR(post_date) = '$thisyear' "										 ."AND MONTH(post_date) = '$thismonth' "										 ."AND post_date < '".date("Y-m-d H:i:s", (time() + ($time_difference * 3600)))."' "										 ."AND post_status = 'publish'"										);	if ($ak_post_titles) {		foreach ($ak_post_titles as $ak_post_title) {			if (empty($ak_titles_for_day["day_".$ak_post_title->dom])) {				$ak_titles_for_day["day_".$ak_post_title->dom] = '';			}			if (empty($ak_titles_for_day["$ak_post_title->dom"])) { // first one				$ak_titles_for_day["$ak_post_title->dom"] = htmlspecialchars(stripslashes($ak_post_title->post_title));			} else {				$ak_titles_for_day["$ak_post_title->dom"] .= $ak_title_separator . htmlspecialchars(stripslashes($ak_post_title->post_title));			}		}	}	// See how much we should pad in the beginning	$pad = intval(date('w', $unixmonth));	if (0 != $pad) echo "\n\t\t<td colspan='$pad' class='pad'>&nbsp;</td>";	$daysinmonth = intval(date('t', $unixmonth));	for ($day = 1; $day <= $daysinmonth; ++$day) {		if (isset($newrow) && $newrow)			echo "\n\t</tr>\n\t<tr>\n\t\t";		$newrow = false;		if ($day == date('j', (time() + ($time_difference * 3600))) && $thismonth == date('m', time()+($time_difference * 3600)))			echo '<td id="today">';		else			echo "<td>";		if (in_array($day, $daywithpost)) { // any posts today?			echo '<a href="' . get_day_link($thisyear, $thismonth, $day) . "\" title=\"$ak_titles_for_day[$day]\">$day</a>";		} else {			echo $day;		}		echo '</td>';		if (6 == date('w', mktime(0, 0 , 0, $thismonth, $day, $thisyear)))			$newrow = true;	}	$pad = 7 - date('w', mktime(0, 0 , 0, $thismonth, $day, $thisyear));	if ($pad != 0 && $pad != 7)		echo "\n\t\t<td class='pad' colspan='$pad'>&nbsp;</td>";	echo "\n\t</tr>\n\t</tbody>\n\t</table>";}function allowed_tags() {	global $allowedtags;	$allowed = "";	foreach($allowedtags as $tag => $attributes) {		$allowed .= "<$tag";		if (0 < count($attributes)) {			foreach ($attributes as $attribute => $limits) {				$allowed .= " $attribute=\"\"";			}		}		$allowed .= "> ";	}	return htmlentities($allowed);}/***** Date/Time tags *****/function the_date_xml() {    global $post;    echo mysql2date("Y-m-d",$post->post_date);    //echo ""+$post->post_date;}function the_date($d='', $before='', $after='', $echo = true) {	global $id, $post, $day, $previousday, $dateformat, $newday;	$the_date = '';	if ($day != $previousday) {		$the_date .= $before;		if ($d=='') {			$the_date .= mysql2date($dateformat, $post->post_date);		} else {			$the_date .= mysql2date($d, $post->post_date);		}		$the_date .= $after;		$previousday = $day;	}	$the_date = apply_filters('the_date', $the_date);	if ($echo) {		echo $the_date;	} else {		return $the_date;	}}function the_time($d='', $echo = true) {	global $id, $post, $timeformat;	if ($d=='') {		$the_time = mysql2date($timeformat, $post->post_date);	} else {		$the_time = mysql2date($d, $post->post_date);	}	$the_time = apply_filters('the_time', $the_time);	if ($echo) {		echo $the_time;	} else {		return $the_time;	}}function the_weekday() {	global $weekday, $id, $post;	$the_weekday = $weekday[mysql2date('w', $post->post_date)];	$the_weekday = apply_filters('the_weekday', $the_weekday);	echo $the_weekday;}function the_weekday_date($before='',$after='') {	global $weekday, $id, $post, $day, $previousweekday;	$the_weekday_date = '';	if ($day != $previousweekday) {		$the_weekday_date .= $before;		$the_weekday_date .= $weekday[mysql2date('w', $post->post_date)];		$the_weekday_date .= $after;		$previousweekday = $day;	}	$the_weekday_date = apply_filters('the_weekday_date', $the_weekday_date);	echo $the_weekday_date;}?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -