我在function.php中有这个代码,我创建了一个创建帖子的月份列表,如下所示:
2015年11月11月
2014年10月11月12月
“十一月”“十二月”是显示该日期网址的链接:www.xxx.com/2015/11。
这使用archive.php
问题是:如何自己做,但过滤这些自定义帖子类型链接?
function twentyeleven_get_archives_callback($item, $index, $currYear) {
global $wp_locale;
if ( $item['year'] == $currYear ) {
$url = get_month_link( $item['year'], $item['month'] );
// translators: 1: month name, 2: 4-digit year
$text = sprintf(__('%1$s %2$d'), $wp_locale->get_month($item['month']), $item['year']);
$text = substr($text,0,3);
echo get_archives_link($url, $text);
}
}
function twentyeleven_get_archives() {
global $wpdb;
$query = "SELECT YEAR(post_date) AS `year` FROM $wpdb->posts WHERE `post_type` = 'post' AND `post_status` = 'publish' GROUP BY `year` ORDER BY `year` DESC limit 4";
$arcresults = $wpdb->get_results($query);
$years = array();
if ($arcresults) {
foreach ( (array)$arcresults as $arcresult ) {
array_push($years, $arcresult->year);
}
}
$query = "SELECT YEAR(post_date) as `year`, MONTH(post_date) as `month` FROM $wpdb->posts WHERE `post_type` = 'post' AND `post_status` = 'publish' GROUP BY `year`, `month` ORDER BY `year` DESC, `month` ASC";
$arcresults = $wpdb->get_results($query, ARRAY_A);
$months = array();
if ( $arcresults ) {
foreach ($years as $year) {
//My Display
//echo "\t<li>\n\t\t<a href=\"#\">$year</a>\n\t\t<ul>\n";
//array_walk($arcresults, "twentyeleven_get_archives_callback", $year);
//echo "\t\t</ul>\n\t</li>\n";
//Your Display
echo "\t<div class='listYearArchive'><span class='yearArchive'>$year</span>\n\t<ul class='listMonthArchive'>\n";
array_walk($arcresults, "twentyeleven_get_archives_callback", $year);
echo "\t</ul></div>\n";
}
}
}
答案 0 :(得分:0)
您可以在查询中更改post_type权限
new Ext.form.TextField({
name : 'meters',
id : 'meters'
fieldLabel : i18n.name,
width : 250,
allowBlank : false,
listeners: {
focus: function(comp){
dialog_meterSearching.show();
}
}
});
只需更改自定义帖子名称FROM $wpdb->posts WHERE `post_type` = 'post'
即可。