C:Wordpress自定义文章类型(图视频)
自定义文章类型,包括:
1:单独的“文章内容模板”
2:单独的“文章列表模板”
3:单独的“控制后台”(文章分类、添加文章)

创建自定义文章和分类
在functions.php中添加以下代码(注册自定义文章,注册自定文章分类)
后台就有如上图所示的“该文章的单独后台,文章分类和添加文章”
//自定义文章类型和分类法
add_action('init', 'my_custom_init'); function my_custom_init()
{ //创建自定义文章类型(Media)
$labels = array( //后台显示相关的参数
'name' => '图视频',
'all_items' => '所有图视频',
'add_new' => '添加图视频',
'add_new_item' => '添加新图视频', //描述标题
'edit_item' => '修改图视频', //描述标题
'not_found' => '暂未添加图视频',
'not_found_in_trash' => '没有图视频',
'menu_name' => '图视频' ); $args = array(
'labels' => $labels,
'public' => true, //一些显示相关的默认值
'show_ui' => true,
'show_in_menu' => true,
'rewrite' => true,
'query_var' => true,
'capability_type' => 'post',
'has_archive' => true,
'hierarchical' => true,
'menu_position' => 4, //菜单位置
'publicly_queryable' => true,
'_builtin' => false,
'supports' => array('title','editor','author','thumbnail','excerpt','comments' )
);
register_post_type('media',$args); //本文章类型为product //创建自定义分类法(Cat_media)
$labels = array(
'name' => '图视频分类',
'singular_name' => 'cat_media',
'search_items' => '搜索' ,
'popular_items' => '热门' ,
'all_items' => '所有' ,
'parent_item' => null,
'parent_item_colon' => null,
'edit_item' => '编辑' ,
'update_item' => '更新' ,
'add_new_item' => '添加' ,
'new_item_name' => '图视频分类',
'separate_items_with_commas' => '按逗号分开' ,
'add_or_remove_items' => '添加或删除',
'choose_from_most_used' => '从经常使用的类型中选择',
'menu_name' => '图视频分类',
); register_taxonomy(
'cat_media',
array('media'),
array(
'hierarchical' => true,
'labels' => $labels,
'show_ui' => true,
'query_var' => true,
'rewrite' => true, //这个是干嘛的
)
); }
创建该自定义文章的“模板文件”
自定义分类模板必须为如下命名:

taxonomy-自定义分类名.php
自定义文章模板必须为如下命名:

single-自定义文章名.php
自定义分类页的变动(相比默认category.php)
category.php 页,$cat 就是当前分类页的ID
自定义分类页获取$cat ,需要如下代码
<?php
$cat_title = single_cat_title('', false);
$cats = get_term_by( 'name', $cat_title, 'cat_media' );
$cat= $cats->term_id;
?>
导航代码
<a href="<?php echo get_category_link($cat); ?>" ><?php echo get_cat_name($cat); ?></a>
获取分类的子分类
<?php
// 得到所有分类列表
$args=array(
'taxonomy'=>'cat_media',
'hide_empty' => 0,
'number'=>5 , //定义5个分类
'orderby'=>'ID',
); $categories = get_categories($args);
foreach ($categories as $catt) {
?> <li class="<?php if($cat ==$catt->cat_ID ) echo"cur"; ?> id="sortCss1">
<a href="<?php echo get_category_link($catt->cat_ID) ?> " ><?php echo $catt->cat_name; ?></a>
</li> <?php } ?>
获取指定分类的文章列表
<?php
while( have_posts() ) {
the_post(); $url = get_field("media_vedio",get_the_ID()); if(!$url){
$url = get_field("media_img",get_the_ID());
}
?>
<li>
<a class="video_info tc" target="_blank"; href="<?php echo $url; ?>" >
<img src="<?php echo get_field("media_img",get_the_ID()); ?>" width="200" height="130">
<p><?php the_title();?></p>
</a>
</li>
<?php
}
?>
C:Wordpress自定义文章类型(图视频)的更多相关文章
- Wordpress 自定义文章类型添加 Categoried、Tags
默认情况下 ,自定义文章类型没有分类和标签属性,需要通过 register_taxonomy_for_object_type 手动注册文章分类和标签,可以通过在 functions.php 或插件中添 ...
- wordpress添加post_type自定义文章类型
wordpress很强大,能当博客也能进行二次开发出很完善的内容管理系统满足企业运营需求,比如可以添加products产品模型.汽车模型等,如何实现呢?添加post_type自定义文章类型就可以了 p ...
- WordPress使用自定义文章类型实现任意模板的方法和怎么做邮件回复
主要就是使用了register_post_type 函数. 1.创建插件目录 新建一个文件夹用来存放插件文件,这里我就命名这个文件夹为myMood 2.创php代码文件 在刚才创建的文件夹里面新建一个 ...
- WordPress自定义文章页面模板
如果想让某个分类的文章页面样式有别于其它分类,我们可以使用自定义的模板的方法实现.例如,我们准备让名称为 WordPress 的分类文章使用有别于其它分类的模板样式, 首先在所用主题根目录新建一个名称 ...
- wordpress调用指定类型post_type的文章
wordpress很强大,可以添加多种post_type文章类型,假如我们要调用product产品模型的文章要如何操作呢?随ytkah一起来看看吧.我们用'post_type' => 'prod ...
- 为WordPress某个文章添加额外的样式
如需把css直接写在某文章,把下面代码放如function.php /* 为特定文章添加特定css最简单的方式. */ /*添加自定义CSS的meta box*/ add_action('admin_ ...
- 转:绝对干货--WordPress自定义查询wp_query所有参数详细注释
<?php /** * WordPress 查询综合参考 * 编译:luetkemj - luetkemj.com * * 官方文档: http://codex.wordpress.org/Cl ...
- WordPress自定义查询WP_Query使用方法大全
自定义调用文章在网站建设中很常用,wordpress也很人性化,用新建查询new WP_Query就能实现相关功能.WP_Query怎么用呢?随ytkah一起来看看吧 我们知道wordpress的主循 ...
- Wordpress 后台文章编辑区添加模板选择功能
功能:后台编辑文章时,可以选择文章使用的模板,效果如下图: 操作步骤: <?php /** * Template Name: kbsingle full * Add by Ryan 3/18/2 ...
随机推荐
- WIN 下的超动态菜单(三)代码
WIN 下的超动态菜单(一)简介 WIN 下的超动态菜单(二)用法 WIN 下的超动态菜单(三)代码 作者:黄山松,发表于博客园:http://www.cnblogs.com/tomview/ 超动态 ...
- Fetch:下一代 Ajax 技术
Ajax,2005年诞生的技术,至今已持续了 10 年.它是一种在客户端创建一个异步请求的技术,本质上它不算创新,是一组技术的组合.它的核心对象是 XMLHttpRequest. 简单回顾下历史 19 ...
- logback配置详解4-实例配置
莫个银行项目中实际引用的logback实例,提供大家参考!!!! [html] view plaincopy <?xml version="1.0" encoding=&qu ...
- eclipse下maven项目保持原有目录结构配置resin运行环境
maven项目用起来很方便,但是它的目录结构和eclipse的目录结构是有区别的,故而在eclipse下的maven项目,直接运行调试是有一些问题的. 为了方便maven项目的运行调试,因而也就有了像 ...
- Linux 负载监控脚本
#!/bin/bash Date=`echo $(date +%Y\-%m\-%d\ %H:%M:%S)`HostName=`hostname`IP=`ifconfig eth0 | grep &qu ...
- nginx简易入门(转)
相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额.那究竟它有什么作用呢?可能很多人未必了解. 说到反向代理,可能很多人都听说,但具体什么是反向代理,很多人估计就不清楚了 ...
- SpringMVC注入Spring的bean
一.Spring和SpringMVC两个IOC容器有什么关系呢? Spring的IOC容器包含了SpringMVC的IOC,即SpringMVC配置的bean可以调用Spring配置好的bean,反之 ...
- 4.bootstrap练习笔记-内容区块
bootstrap练习笔记-内容区块 1.bootstrap中,采用的全部是div布局,把你的内容首先要包含在一个大的DIV区块当中 2.然后再写一个div.container,这个div里面存放真正 ...
- MySQL的基本知识 -- 函数
MySQL基本知识 -- 进阶(常用的函数) Tags: MySQL MySQL进阶 1.计算字段 1.概念 : 如果客户端想要的数据格式不是数据库直接在表中存储的数据格式的话,有两种处理方式.第一种 ...
- PyCharm3.0默认快捷键(翻译的)
PyCharm3.0默认快捷键(翻译的) PyCharm Default Keymap 1.编辑(Editing) Ctrl + Space 基本的代码完成(类.方法.属性)Ctrl + Alt ...