wordpress方法
deepthan opened this issue · 0 comments
deepthan commented
1. 调用博客名称和地址
<a href="<?php bloginfo('url'); ?>">
<?php bloginfo('name'); ?>
</a>
2. 调用博客描述
<h4>
<?php bloginfo('description');?>
</h4>
3. 调用文章
<div class="post" id="post<?php the_ID(); ?>">
<?php if(have_posts()): ?>
<?php while(have_posts()) : the_post(); ?>
<h2> // ' title= ' 鼠标移上去显示的内容
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" > -> 标题
<?php the_title(); ?>
</a>
</h2>
<p>
<?php the_content(); ?> -> 内容
<div class="postmetadata"> -> 发表时间等
<?php the_category() ?>
<?php the_author(); ?>
<?php the_date(); ?>
</div>
</p>
<?php endwhile; ?>
<?php else: ?>
<div>
<p><?php _e('Not Found'); ?></p>
</div>
<?php endif; ?>
</div>
- if(have_posts()): 检查是否有日志,那么当有日志的时候,执行下面 the_post()这个函数
- while(have_posts()): 当博客有日志的时候,执行下面 the_post()这个函数
- the_post(): 调用具体的日志来显示
- endwhile: 关闭while()
- endif: 关闭if
- the_permalink(): 调用每篇日志地址的PHP函数
- the_title(): 调用日志标题的函数
- the_content(): 调用日志内容的函数
- the_category(): 日志类别
- the_author(): 日志作者
- the_date(): 日志发布时间
- the_ID(): 给每篇日志都添加一个id,给它进行样式添加。
&&&& 主循环: the loop &&&&
4. 获得自定义文章
首先摸一下你的自定义的类型,显示这样的连接
http://localhost/wp-admin/term.php?taxonomy=category&tag_ID=10&post_type=post&wp_http_referer=%2Fwp-admin%2Fedit-tags.php%3Ftaxonomy%3Dcategory
下面的参数即使对应的
&post_type = post& , taxonomy = category&, &tag_ID=10&
<?php
$args = array(
'post_type' => 'post', //自定义文章类型名称,上面连接可以获得。
'showposts' => 3 , //输出的文章数量,这个可以是缺省值,不用设置
'tax_query' => array(
array(
'taxonomy' => '1',//自定义分类的名称
'terms' => 10 // 上面显示的id
),
)
);
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
while ($my_query->have_posts()) : $my_query->the_post();?>
<h3><?php the_title(); ?></h3>
<p><?php the_content(); ?></p>
<?php endwhile; wp_reset_query(); //重置query查询
} ?>
5.获得文章类型名称,和上面无关。
<?php
$post_type =get_post_type(36);
//假设id为36的文章类型为附件类型attachment
echo $post_type;
//打印出attachment
?>
6.如何引入文件
- 1: wordpress函数
<?php get_header(); ?>
<?php get_sidebar(); ?>
<?php get_footer();?>
- 2: php函数
<?php include (TEMPLATEPATH . ‘/header.php’); ?>
7. 输出日期
<?php the_time('Y年n月j日') ?>
8.点击某个分类名称直接进入分类内容
- 通过分类别名获取Wordpress分类链接:
<?php
$cat=get_category_by_slug('wordpress');
$cat_links=get_category_link($cat->term_id);
?>
<a href="<?php echo $cat_links; ?>" title="<?php echo $cat->name; ?>">更多</a>
- 通过分类ID获取Wordpress分类链接
<?php
$cat=get_term_by('id', 12, 'category');
$cat_links=get_category_link($cat->term_id);
?>
<a href="<?php echo $cat_links; ?>" title="<?php echo $cat->name; ?>">更多</a>
9. 文章自定义栏目调用 :
$post
: wordpress内置全局变量。
$post->ID
: 获得文章的id
get_post_meta ( $post->ID, '键名', boolean )
: 文章id, 键名, 布尔值: true是输出字符串, false 输出数组。
add_post_meta( $post->ID, '键名', ' 键值' )
: 添加自定义字段
add_post_meta( $post->ID, ‘_键名', ‘键值’)
: 添加私有的字段,在栏目编辑里面看不到
调用模板文件:
$name = " deepthan" ;
get_template_part(' content ', $name )
加载 content-$name.php文件(即content-deepthan.php文件),若不存在则调用 content.php文件。
根据分类名称获得这个分类的链接
<php? $report=get_category_id('新闻'); ?>
这里的get_categoty_id()是自己封装的函数,且固定链接为朴素模式。
<a href="<?php bloginfo('url');?>/?cat=<?php echo $report;?>" title="<?php echo $report->name; ?>">热点技术</a>
10. 请求数据
用php请求接口并获得返回的数据?
- $_post [ 'name' ] 获取POST传送过来的数据。 这个只能接收 Content-Type:application/x-www-form-urlencoded提交的数据。
- file_get_contents( url);请求 url地址并获得返回的数据。
- curl的拓展库: 可以获取其他站点的内容。跨站点传递数据
$phoneNumber = "13666666666";
$message = "this is a message";
$curlPost = 'phoneNuber='.urlencode($phoneNumber).'&MESSAGE'.urlencode($message).'&SUBMIT=send';
$ch = curl_init();
curl_init()函数的作用初始化一个curl会话,curl_init()函数唯一的一个参数是可选的,表示一个url地址。
curl_setopt($ch,CURLOPT_URL, ' http:www.baidu.com');
curl_setopt($ch,CURLOPT_HEADER ,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,0);
culr_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $curlPost);
curl_setopt()为一个curl设置会话参数。
$data = curl_exec($ch);、
curl_exec()函数的作用是执行一个curl会话,唯一的参数是curl_init()函数返回的句柄。
curl_close($ch);
curl_close()作用是关闭一个curl会话,唯一的参数是curl_init()函数返回的句柄。
curl_setopt_array()以数组的形式为一个curl设置会话参数。
ajax --> 请求本地php文件(http:localhost/wp-admin/....客户端) -> php文件用 $ch传递参数请求地址 (http:localhost/服务器接口地址) --> 返回信息传递给浏览器。