wordpress练习
---恢复内容开始---
wp_options数据表储存网站的一些基本信息
bloginfo() //输出 bloginfo('stylesheet_url') //输出style.css的路径
get_bloginfo() //获取
get_option('blogname') //获取options数据表
update_option('option_name','option_value') //更新option_name的值,如果没有option_name,就新建一个option_name,并给他赋值option_value
have_posts() //判断是否有文章
//获取下一篇文章的信息,并将信息存为全局变量$post中
the_post();
the_title(); //获取当前文章的题目
the_permalink() //获取当前文章的链接
the_content(); //调用文章内
the_excerpt(); //调用文章摘要
the_author(); //调用作者姓名
the_time() //调用文章发布时间
调用作者的Gravatar头像:<?php echo get_avatar( get_the_author_email(), 36 ); ?>
_e(); //获取翻译,并且输出
__() //获取翻译返回值;
the_category() //获取文章所属分类;
edit_post_link('显示编辑','编辑前的显示,'编辑后的显示') //当登陆管理员或者有权限编辑当前文章的时候显示一个编辑链接,方便修改文章
function.php 文件 是wordpress预留的自定义函数功能文件
////文章导航分页链接和侧边栏
posts_nav_link(); //导航分页链接
get_sidebar() //加载侧边栏文件
//注册一个侧边栏小工具
register_sidebar(
array(
'name' => '侧边栏',
'before_widget' => '<div class="sbox" >',
'after_widget' => '</div>',
'before_title' => '<h2>',
'after_title' => '</h2>'
)
);
dynamic_sidebar('侧边栏') //前端侧边栏显示小工具里的内容
is_dynamic_sidebar('侧边栏') //判断是否存在
wp_list_cats(); //获取文章分类列表
wp_list_pages() //获取页面列表
get_links() //获取(友情)链接列表 后台必须加载link插件,才会在“多媒体”与“页面”之间出现“链接”操作
wp_register(); //注册链接
wp_loginout(); //登录登出链接
////顶部、底部模板
header.php //顶部模板文件
footer.php //底部模板文件
get_header() //加载顶部模板文件
get_footer() //加载底部末班文件
////文章分类目录文件category.php
single_cat_title() //获得当前文章所属分类的标题
//加载不同的分类目录文件,1、可以加上分类目录id,例如category-7.php 是文章分类id=7的模板
2、可以加上分类目录的别名,例如category-shehui.php 是文章分类目录别名=shehui的模板
////文章页模板文件 single.php
previous_post_link("上一篇:%link"); //上一篇文章链接
next_post_link("下一篇:%link"); //下一篇文章链接
//文章自定义栏目字段的 增、删、改、擦
get_post_meta($post->ID,'jiage',true) //获取该文章的自定义字段 参数一:该文章id;参数二:该字段键名;参数三:true返回字符串,false返回数组;
add_post_meta($post->ID,'jiage','1920.00'); //给该文章增加自定义字段 参数一:获取文章id;参数二:增加的字段键名;参数三:增加的字段键值;参数四:true(默认)该字段对应一个键值,false该字段可以对应多个键值 注:当参数三字段键值前加“_”,代表为隐藏字段,后台看不到该字段
update_post_meta($post->ID,'_dianzan',$zan + 1) //更新更改该文章该字段的值。
delete_post_meta($post->ID,'_dianzan'); //删除该文章的该字段,如果该字段有多个值,可加上参数三:键值。
////不同分类目录下的文章调用不同的文章模板
1. get_the_ID() //获取文章id
2.get_the_category(get_the_ID()); //通过文章id获取当前文章分类信息
3.使用 get_template_part() 动态加载文章模板
在single.php文件里写入代码如下::
$cat = get_the_category($post->ID); //通过文章id获取当前文章分类信息
$cat = get_the_category(get_the_ID());
$name = $cat[0]->slug; //当前文章分类别名
//加载 content-$name.php 模板文章页,如果文件不存在,则调用content.php文件
get_template_part('content',$name);
////page.php页面模板文件的调用(假如没有页面模板,wp会加载index.php文件)
在主题中新建一个page.php文件
///不同的页面调用不同的页面模板
1、可以加上页面id,例如page-49.php 是文章分类page_id=49的模板
2、可以加上页面的别名,例如page-gywm.php 是页面别名=gywm的模板
/////评论模板文件comments.php
comments_template() //加载评论模板
comments_open() //判断是否开启评论功能
post_password_required() //判断文章、页面的公开度是否设置为独立密码模式
have_comments() //判断是否有评论
wp_list_comments() //显示评论列表
is_user_logged_in() //判断是否用户登录
comment_form() //根据wp后台评论设置,打印输出评论输入模式
<div id="comment-box">
<h3>评论</h3>
<ol class="commentlist">
<?
if (!comments_open()) {
?>
<li class="tip-box"><p>评论功能已经关闭</p></li>
<?
}
else if (post_password_required()) {
?>
<li class="tip-box"><p>请输入密码查看评论</p></li>
<?
}
else if (!have_comments()) {
?>
<li class="tip-box"><p>还没有评论,你快点说两句吧!</p></li>
<?
}
else {
wp_list_comments();
}
?>
</ol>
<div class="clr"></div>
<?
if (comments_open()) {
comment_form();
}
?> </div>
////搜索页面search.php
通过关键词,搜索结果是一个列表,所以和分类页相似,代码可以使用分类页的模板文件代码
get_search_query() //获取搜索的关键词
/////404模板文件 404.php
<? get_header(); ?> <div class="c">
<div id="page-box">
<div class="post-item _404">
你当前访问的页面不存在!!!!
<font id="jump">3</font>秒后返回首页,或<a href="<? bloginfo('url'); ?>">直接返回</a>
</div>
<script type="text/javascript">
function countDown(secs) {
$("#jump").html(secs);
if (--secs > 0) {
setTimeout("countDown("+secs+")",1000);
}
else{
window.location.href="<? bloginfo('url'); ?>";
}
}
countDown(3);
</script>
</div>
</div> <? get_footer(); ?>
/////菜单的调用
wp_nav_menu( ); //调用菜单,如果wp创建了多个不同的菜单,可通过 wp_nav_menu( array('menu'=>'home') ) 数组指定菜单名进行调用
////模板判断函数
is_home() //判断是否为首页模板文件
wp_title($sep,$echo,$seplocation) //wp_title 函数用来显示页面的标题,如在文章页面,则显示文章标题;在分类页面,则显示分类名称;在独立页面中,显示独立页面标题;但在首页索引,该函数将不显示任何的东西。1.$sep:分隔符;2.$echo:是否显示;3.$seplocation:分隔符所在位置(左还是右,只接受’right’,如果不是right自动判定为左)
is_category() //判断是否为分类目录模板文件
is_single() //判断是否为文章模板文件
is_page() //判断是否为独立页面模板文件
is_search() //判断是否为搜索模板文件
is_404() //判断是否为404模板文件
<?
if (is_home()) {
$title = get_bloginfo('name');
}
else{
$title = wp_title('',false)."_黄聪的博客";
}
if ( $paged > 0 ) {
$title .= "第".$paged."页";
}
?>
<title><? echo $title; ?></title>
////面包屑导航
<!--面包屑导航-->
<div class="c">
<? if ( !is_home() ) { ?> <div class="wz">
<a href="<? bloginfo('url'); ?>">首页</a><span> > </span>
<?
if ( is_category() ) { single_cat_title(); }
elseif ( is_search() ) { echo $s; }
elseif ( is_single() ) {
$cat = get_the_category();
$cat = $cat[0];
echo "<a href='".get_category_link($cat)."'>".$cat->name."</a> > ";
the_title();
}
elseif ( is_page() ) { the_title(); }
elseif ( is_404() ) { echo "404错误页面"; }
?>
</div> <? } ?>
</div>
single_cat_title() //打印输出文章分类目录模板的标题
$s //指搜索页面模板的搜索词
get_category_link($cat) //文章页文件中的文章所属分类目录的地址
//////高级教程:
get_posts() 函数 //参考http://pangbu.com/function-get_posts/
<div class="sbox">
<h2>随机文章</h2>
<?
$args = array(
'numberposts' => 3,
'category' => 7,49,
'orderby' => 'rand'
);
$rand_posts = get_posts($args);
?>
<ul>
<?
foreach ($rand_posts as $post) {
setup_postdata($post);
?>
<li><a href="<? the_permalink(); ?>"><? the_title(); ?></a></li>
<?
}
wp_reset_postdata();
?>
</ul>
</div>
wordpress练习的更多相关文章
- wordpress多站点配置
wordpress作为全球第一的个人博客搭建平台一直在国内外有着较高的人气,从3.0版本开始就已经支持多站点的搭建.该功能可以让子站点运行主站点的程序,不需要再每个站点分别存放网站程序.最近更新的4. ...
- wordpress优化之结合prism.js为编辑器自定义按钮转化代码
原文链接 http://ymblog.net/2016/07/24/wordpress-prism/ 继昨天花了一天一夜的时间匆匆写了主题Jiameil3.0之后,心中一直在想着优化加速,体验更好,插 ...
- 搭建个人wordpress博客(小白教程)
新浪sae平台现在是有个免费个人空间使用,现在,教您如何使用该平台搭建属于自己的个人网站,本教程以wordpress程序安装包搭建个人网站. 申请新浪云账号 如果我们使用SAE新浪云计算平台作为服务器 ...
- centos6.3与jexus5.4.4配置支持php(wordpress)
centos6.3与jexus5.4.4配置支持php,并搭建自己的wordpress博客,供那些在Linux平台下想让 php和asp.net一起跑的初学者参考. 1.搭建webserver 首先准 ...
- SAE+WordPress快速搭建个人博客
前些天一时冲动,买了个域名,我想总不能放着不用吧,干脆就搭建了一个个人博客.下面我把搭建的过程分享给大家.注意,此文并不是攻略,只是为了记录下这个从无到有的过程,当然,假如解决了你的疑惑,那当然是极好 ...
- 将WordPress安装在网站子目录的相关问题
May182013 将WordPress安装在网站子目录的相关问题 作者:xieyc 发布:2013-05-18 00:11 字符数:3423 分类:站长 阅读: 12,054 次 ...
- 使用WordPress搭建自己的博客
突然间发现自己在阿里上有一个免费的虚拟云空间,好像是什么时候阿里云搞活动赠送的.看了看还有不少时间,就决定自己搭建一个博客系统.说到搭建自己的博客,第一时间就想到WordPress,这个用起来应该是最 ...
- wordpress插件bug排查后记(记一次由于开启memecached引起的插件bug)
这篇文章是写给自己的. 周三的时候我在维护公司的一个wordpress项目页面时发现了一个非常奇怪的情况:当我尝试更新网站上的一个页面后,在wordpress后台的编辑器中发现其内容并没有按我预期的将 ...
- WordPress + Nginx +PHP+MySQL
Windows下配置Nginx+php环境 1)php的安装与配置. 直接解压下载好的php包,到D盘wnmp目录(D:\wnmp),这里把解压出来的文件夹重命名成php5.进入文件夹修改php.in ...
- docker版wordpress
拉取wordpress镜像 docker pull wordpress:latest 创建mysql 容器docker run --name wordpress-mysql -e MYSQL_ROOT ...
随机推荐
- iOS更换科大讯飞的key
我这个APP使用了科大讯飞的"语音评测"功能,之前使用的是我自己注册的科大讯飞账号,在这个账号里面创建的APP,生成的key. 我们公司有公司的key, 同事说可以多个APP公用一 ...
- 查找->动态查找表->二叉排序树
文字描述 二叉排序树的定义 又称二叉查找树,英文名为Binary Sort Tree, 简称BST.它是这样一棵树:或者是一棵空树:或者是具有下列性质的二叉树:(1)若它的左子树不空,则左子树上所有结 ...
- 如何在安装node\npm\cnpm
1.安装node.js node.js的官方地址为:https://nodejs.org/en/download/. 根据windows版本后,选择要下载的安装包,下载完毕,按照windows一般应用 ...
- 使用Redis 计数器防止刷接口
业务需求中经常有需要用到计数器的场景:为了防止恶意刷接口,需要设置一个接口每个IP一分钟.一天等的调用次数阈值:为了降低费用,限制发送短信的次数等.使用Redis的Incr自增命令可以轻松实现以上需求 ...
- 【JMeter】接口自动化环境搭建
我们在学习接口自动化的时候,最理想的状态是在公司有项目可以操作.大部分时候我们并没有可以练习的项目,因此练习接口无从谈起,只能找一些开放的api来练一练,但是这样并不能提高我们的技术.因此我们需要搭建 ...
- vue package-lock.json的作用
其实用一句话来概括很简单,就是锁定安装时的包的版本号,并且需要上传到git,以保证其他人在npm install时大家的依赖能保证一致.
- bat删除过期文件(FORFILES)
关键词:bat删除过期文件,bat,FORFILES 原文:https://blog.csdn.net/sandy9919/article/details/82932460 --最佳实践 :: IIS ...
- SQL SERVER 2016研究四
SQL Server 2016 白皮书 内容:内存优化表 问题? -----内存优化表在2014版本推出,主要是如何作用?如何使用?目前有何变化? 内存优化表是可以将表放入内存中,能提升操作性能. - ...
- 数据库机器迁移对AlwaysON 集群影响测试
1主3从(共享文件见证) 模拟事故 AlwaysON集群 结论 主域控服务器重启 共享文件夹见证失败,SQL集群无影响 无影响 修改共享文件夹见证路径 第一次测试修改后:整个集群突然重启,查询 ...
- 多线程之共享变量.md
共享变量 - 共享变量:当多个线程同时访问一个变量的时候,会产生共享变量的问题 - 案例11 - 解决变量:锁.信号灯: - 锁(Lock): - 是一个标志,表示一个线程在占用一些资源 - 使用方法 ...