WordPress如何通过URL获取多个参数,并通过WP_Query查询

PHP判断URL参数是否存在已经参数的值

1
2
if(isset($_GET['Type']) && $_GET['Type']!="ALL"){
}

WP_Query 查询变量

1
2
3
4
5
6
7
8
$args=array(
'post_type' =>'post',
'cat' => $catnos,
'nopaging' => false,
'paged' => $paged,
'posts_per_page' => '10',
'posts_per_archive_page' => '10',
);

WP_Query 补充修改变量

1
2
3
4
// 获取分类
if (isset($_GET['category'])) {
$args[cat]=$_GET['category'];
}
1
2
3
4
5
6
7
8
9
// 获取国家
if (isset($_GET['country']) && $_GET['country']!="ALL") {
$country_query = array(
'key' => 'country',
'value' => $_GET['country'] ,
'compare' => '='
);
$meta_query[]=$country_query;
}
1
2
3
4
5
6
7
8
9
// 获取Type参数
if (isset($_GET['Type']) && $_GET['Type']!="ALL") {
$Type_query = array(
'key' => 'type',
'value' => $_GET['Type'] ,
'compare' => '='
);
$meta_query[]=$Type_query;
}
1
2
3
4
5
$meta_query[relation] = "AND";
$args[meta_query]=$meta_query;

$query = new WP_Query( $args );
wp_reset_query();
1
2
3
4
if( $query->have_posts() ):
while( $query->have_posts() ) : $query->the_post();
endwhile;
endif;

通过WP_Query查询特定meta的文章或产品,统计数量并保存为json文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$data = array();

$args = array(
'orderby' => 'title',
'order' => 'ASC',
'post_type' =>'post',
'nopaging' => true,
'meta_key' => '交易货币',
'meta_value' => 'United States',
);
$the_query = new WP_Query( $args );
wp_reset_postdata();
//重组数组
$data["United States"] = $the_query->post_count;

//数组转json
$json_string = json_encode($data);

//保存文件在网站根目录
file_put_contents(ABSPATH .'/json/json.json', $json_string);

分类页面如何获取当前页面的分类名 single_cat_title()

1
2
3
single_cat_title($prefix,$display);
//$prefix :用于设置在标题之前显示的内容。
//$display :用于设置是直接显示还是返回到变量。

文章页面如何获取当前页面的标题名 single_post_title()

1
single_post_title();

标签页面如何获取当前页面的标签名 single_tag_title()

1
single_tag_title();

WordPress使用add_cap()函数给角色添加能力

// 获取 “pama” 角色对象
$role = get_role( ‘pama’ );
// 为该角色对象添加能力
$role->add_cap( ‘edit_post’ );
$role->add_cap( ‘publish_posts’ );
$role->add_cap( ‘edit_published_posts’ );
$role->add_cap( ‘publish_posts’ );

WordPress页面如何支持伪静态.html

1
2
3
4
5
6
7
8
//页面链接添加html后缀 
function html_page_permalink() {
global $wp_rewrite;
if ( !strpos($wp_rewrite->get_page_permastruct(), '.html')){
$wp_rewrite->page_structure = $wp_rewrite->page_structure . '.html';
}
}
add_action('init', 'html_page_permalink', -1);

WordPress如何获取和一篇文章关联的所有图片get_children()?

1
2
3
4
5
6
$files = get_children('post_parent='.get_the_ID().'&post_type=attachment&post_mime_type=image');
if($files) :
foreach( $files as $file ) {
echo '<img class="aligncenter size-full" src="'.$file->guid.'" width="100%" data-tag="bdshare">';
}
endif;

WordPress使用get_terms()函数获取文章中所有的一级分类

1
$terms=get_terms('category',array('hide_empty'=>false,'parent'=>'0',));

调用输出

1
2
3
4
if(!empty($terms)):
foreach($terms as $term){
}
endif;

WordPress如何输出分类的链接URL地址?

1
echo get_category_link($category->term_id);