**
基本wp常用语法
**
1.调取后台导航栏
<?php wp_nav_menu(array('menu' => 'nav', 'menu_class' => 'ds-02', 'container' => '', 'container_class' => 'ds-01', 'items_wrap' => '%3$s'));?>
**参数说明:**menu的值为导航栏名称
2.调取Header
<?php get_header();?>
3.调取Footer
<?php get_footer();?>
4.调取当前主题根目录路径
<?php bloginfo('stylesheet_directory');?>
5.循环文章列表
<ul class="row">
<?php $posts = get_posts("category=28&numberposts=10");?>
<?php if ($posts): ?>
<?php foreach ($posts as $post): setup_postdata($post);?>
<li class="col-xs-12 col-sm-6 col-md-3 col-lg-3">
<div class="item">
<div class="img-box" style="height: 139px;"> <a href="<?php the_permalink();?>"><?php the_post_thumbnail();?> </a></div>
<div class="txt-box">
<h3><a href="<?php the_permalink();?>"><?php the_title();?></a></h3>
<p><?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 1, 240,"...");?></p>
<a href="<?php the_permalink();?>">了解更多<i class="fa fa-angle-right" aria-hidden="true"></i></a>
</div>
</div>
</li>
<?php endforeach;?>
<?php endif;?>
</ul>
**方法/参数说明:**
(1) get_posts()
category参数为分类ID
numberposts参数为循环文章个数
(2) the_permalink()
调取文章URL
(3) the_post_thumbnail()
调取文章特色图像
(4) the_title()
调取文章标题
(5) the_content()
调取文章内容
(6) mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 240,"...");
此方法同样为调取文章内容,与the_content()区别为此方法可超出字符个数后隐藏加省略号.
6.循环子分类
<div class="hn-B1">
<div class="container">
<?php $cat_ID = get_query_var('cat');?>
<div class="hn-B1-title"><?php echo get_cat_name($cat_ID);?></div>
<ul class="hn-B1-list clearfix">
<?php
$categories = get_categories('child_of=3&depth=0&parent='.$cat_ID.'&hide_empty=0&orderby=id&order=asc');
foreach ($categories as $category) {
// 开始循环子分类
$now_cat = $category->term_id; // 子分类ID
$cat_name = $category->cat_name; // 子分类名称
$slug = $category->slug; //子分类别名
?>
<li>
<div class="item">
<div class="txt-box">
<h4><?php echo $cat_name; ?></h4>
<a href="<?php echo get_category_link($now_cat); ?>">查看更多>></a>
</div>
</div>
</li>
<?php } ?>
<?php wp_reset_query();?>
</ul>
</div>
</div>
**方法/参数说明:**
(1) get_query_var('cat')
获取当前页面分类ID
(2) get_cat_name($cat_ID)
获取分类名称,参数为分类ID
(3) get_categories('child_of=3&depth=0&parent='.$cat_ID.'&hide_empty=0&orderby=id&order=asc')
获取子分类列表, 'parent'参数为父分类id,'order'参数为排序方式,此方法返回子分类数组.
(4) $category->term_id
获取子分类ID
(5) $category->cat_name
获取子分类名称
(6) $category->slug
获取子分类别名
(7) get_category_link($now_cat)
获取子分类URL
(8) wp_reset_query()
清除查询数据
7.循环获取当前分类页的文章列表
<div class="container">
<ul class="hn-B1-list clearfix">
<?php if (have_posts()): ?>
<?php while (have_posts()): the_post();?>
<li>
<div class="item">
<div class="img-box"><?php the_post_thumbnail();?></div>
<div class="txt-box">
<h4><?php the_title();?></h4>
<p><?php echo mb_strimwidth(strip_tags(apply_filters('the_excerpt', $post->post_excerpt)), 0, 600,"...");?></p>
<a href="<?php the_permalink();?>">查看更多>></a>
</div>
</div>
</li>
<?php endwhile;?>
<?php else: ?>
<?php endif;?>
</ul>
</div>
**方法/参数说明:**
(1) the_post_thumbnail()
获取文章特色图像
(2) the_title()
获取文章标题
(3) mb_strimwidth(strip_tags(apply_filters('the_excerpt', $post->post_excerpt)), 0, 600,"...")
获取文章摘要,此方法为文字超出隐藏加省略
(4) the_permalink()
获取文章URL
8.获取后台外观-选项中字段值(该后台功能为可方便设置前台logo,电话,邮箱,备案号等等公共位置.添加字段可在根目录的options.php文件中设置)
<?php echo of_get_option('logo'); ?>
**方法/参数说明:**
(1) of_get_option()
此方法为调取logo字段值,参数为字段id,关于字段id是options.php中设置的,options.php如下图
9.详情页调取 文章/页面 内容
<?php while (have_posts()): the_post();?>
<?php echo the_content(); ?>
<?php endwhile;?>
**
wp常用插件语法
**
1.多语言插件(Polylang)
(1) 调取多语言切换
<?php pll_the_languages();?>
(2) 判断当前站点切换的语言
<?php if (get_bloginfo('language') == 'zh-CN') {?>
<?php wp_nav_menu(array('menu' => 'nav_zh', 'menu_class' => 'ds-02', 'container' => '', 'container_class' => 'ds-01', 'items_wrap' => '%3$s'));?>
<?php }else{?>
<?php wp_nav_menu(array('menu' => 'nav_eng', 'menu_class' => 'ds-02', 'container' => '', 'container_class' => 'ds-01', 'items_wrap' => '%3$s'));?>
<?php }?>
2.高级字段插件
<?php if (get_field('rated_hp')) {the_field('rated_hp');}?>
**方法/参数说明:**
(1) get_field() 获取参数‘rated_hp’字段是否存在,‘rated_hp‘参数为后台设置的字段名称,返回值:true/false
(2) the_field()输出‘rated_hp’字段值,‘rated_hp‘参数为后台设置的字段名称