黄聪:wordpress自定义post_type,并且自定义固定链接

<?
class zsjh
{
    function init()
    {
        add_action( ‘init‘, array($this,‘create_zsjh‘) );
        add_filter(‘post_type_link‘, array($this, ‘get_permalink‘) ,1 ,3 );
    }

    function create_zsjh()
    {
        $labels = array(
            ‘name‘ => ‘招生计划‘,
            ‘singular_name‘ => ‘招生计划‘,
            ‘add_new‘ => ‘添加招生计划‘,
            ‘add_new_item‘ => ‘添加一个新招生计划‘,
            ‘edit_item‘ => ‘编辑招生计划‘,
            ‘new_item‘ => ‘新招生计划‘,
            ‘view_item‘ => ‘查看‘,
            ‘search_items‘ => ‘搜索‘,
            ‘not_found‘ =>  ‘还没有添加招生计划哦~‘,
            ‘not_found_in_trash‘ => ‘还没有删除的招生计划哦~‘,
            ‘parent_item_colon‘ => ‘‘,
            ‘menu_name‘ => ‘招生计划‘,
            ‘menu_position‘ => 5
        );
        $args = array(
            ‘labels‘ => $labels,
            ‘public‘ => true,
            ‘publicly_queryable‘ => true,
            ‘show_ui‘ => true,
            ‘show_in_menu‘ => true,
            ‘query_var‘ => true,
            ‘capability_type‘ => ‘post‘,
            ‘has_archive‘ => true,
            ‘hierarchical‘ => false,
            ‘supports‘ => array(‘title‘,‘editor‘,‘thumbnail‘,‘comments‘,‘custom-fields‘),
        );

        //自定义一个hc_post_type_zsjh的文章类型
        register_post_type( ‘hc_post_type_zsjh‘, $args);
        //自定义固定链接规则
        add_action(‘generate_rewrite_rules‘,array($this, ‘jihua_rewrite_rules‘) );
    }

    function jihua_rewrite_rules( $wp_rewrite )
    {
        global $wp_rewrite;
        $wp_rewrite->add_permastruct(‘hc_post_type_zsjh‘, ‘/jihua/%jihua_id%.html‘, false);
        $new_rules = array(‘jihua/([0-9]+)?.html$‘ => ‘index.php?post_type=hc_post_type_zsjh&p=$matches[1]‘ );
        $wp_rewrite->rules = $new_rules + $wp_rewrite->rules;
    }

    function get_permalink( $permalink, $post, $leavename )
    {
        //替换%jihua_id%为当前文章ID
        $permalink = str_replace("%jihua_id%", $post->ID, $permalink);
        return $permalink;
    }
}

$zsjh = new zsjh();
$zsjh->init();
?>
时间: 2024-12-14 10:10:06

黄聪:wordpress自定义post_type,并且自定义固定链接的相关文章

Wordpress固定链接设置

wordpress设置固定链接时,应该尽量注意一下几点: 1.不要让日期出现在固定链接里面. 2.不要让分类的链接出现在固定链接里面. 3.链接不要太深. 4.链接中不要出现中文. 5.文章最后可以加一个.html,一是伪静态URL搜索引擎容易收录,二是用户已经习惯了文章网址带.html了. 6.虽说搜索引擎能识别中文链接,但是对于优化的角度来说,不建议使用中文. 7.可使用参数: %year%:日志发表的年份,如2009 %monthnum%:日志发表的月份,如05 %day%:日志发表的日期

黄聪:WordPress固定链接设置的几种方法

wordpress固定链接设置的一些参数: %year%:基于文章发布的年份,比如2010: %monthnum%:基于文章发布的月份,比如01: %day%:基于文章发布当日,比如06: %hour%:基于文章发布小时数,比如23: %minute%:基于文章发布分钟数,比如43: %second%:基于文章发布秒数,比如33: %postname%:基于文章的postname,其值为撰写时指定的缩略名,不指定缩略名时是文章标题: %post_id%:基于文章post_id,比如48: %ca

黄聪:《跟黄聪学WordPress主题开发》

又一个作品完成!<跟黄聪学Wordpress主题开发>,国内最好的Wordpress主题模版开发视频教程!! 目录预览: WordPress官方源文件层式结构讲解 WordPress数据库表结构.字段详解 WordPress主题模版加载过程 WordPress主题模版开发:主题模版的安装及创建 WordPress主题模版开发:首页模版及调用options表数据 WordPress主题模版开发:如何循环输出文章列表 WordPress主题模版开发:文章元数据及多语言化 WordPress主题模版

黄聪:《跟黄聪学WordPress插件开发》

续<跟黄聪学WordPress主题开发>之后,又一个作品完成!<跟黄聪学Wordpress插件开发>,国内最好的Wordpress插件开发视频教程!! 目录预览: WordPress插件简介 WordPress插件的创建 认识钩子:动作(add_action与do_action) 认识钩子:带参数的动作 认识钩子:常用的动作实用案例 认识钩子:过滤器(add_filter与apply_filters) 认识钩子:带参数的过滤器 认识钩子:常用的过滤器实用案例 后台整合:创建菜单和子

黄聪:wordpress中remove_action、add_action、 do_action()的hook钩子都有哪些

原文地址:http://codex.wordpress.org/Plugin_API/Action_Reference muplugins_loaded After must-use plugins are loaded registered_taxonomy For category, post_tag, etc. registered_post_type For post, page, etc. plugins_loaded After active plugins and pluggabl

黄聪:WordPress 多站点建站教程(六):使用WP_Query、switch_to_blog函数实现获取子站点分类中的文章

首先在你使用主题的funtions.php里面添加下代码: //根据时间显示最新的分类文章内容,每个站点显示一篇内容 //$blog_id 子站点ID //$catid 分类ID wp_reset_query(); switch_to_blog($blog_id); global $post;?> $my_query2 = new WP_Query('showposts=1&order=desc&orderby=date&cat='.$catid); while ($my_q

黄聪:如何删除wordpress登录之后wp_footer、wp_head自行加载的Open Sans字体、fonts.googleapis.com连接导致卡死的问题

有时候在浏览自己的WordPress网站时,发现网页长时间无响应, 卡在正在连接到fonts.googleapis.com ,如下图所示: 查看网页源码时,发现Head里面有如下一段代码: <link rel='stylesheet' id='open-sans-css' href='//fonts.googleapis.com/css?family=Open+Sans%3A300italic%2C400italic%2C600italic%2C300%2C400%2C600&subset=

黄聪:wordpress后台加载ajax.googleapis.com导致打开速度很慢的解决方案

打开wordpress后台,发现很卡,通过开发者工具看到是因为加载http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css这个元素导致的. <link rel='stylesheet' id='jquery-ui-smoothness-css' href='http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoot

黄聪:wordpress/wp-admin目录文件

wp-admin/admin.php:管理文件的核心文件.用来连接数据库,整合动态菜单数据,显示非核心控制页面等. wp-admin/admin-db.php wp-admin/admin-footer.php:定义所有管理控制台的页脚. wp-admin/admin-functions.php:定义了管理控制台使用的多种函数. wp-admin/admin-header.php:定义了管理控制台的上半部分内容,包括菜单逻辑 (menu logic)的 menu-header.php文件. wp