php CPT.php

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php CPT.php相关的知识,希望对你有一定的参考价值。

<?php
/*
Plugin Name: WEBLOFT CUSTOM POST TYPES
Description: Plugin pour la création de type-post custom.
Version: 1.0
Author: Jean-Francois Ranger
Author URI: http://JFRanger.com
License: GPL2
*/
 
add_action( 'init', 'create_post_type' );
function create_post_type() {
	
	register_taxonomy( 'habitation', 'constructeurs', array( 'hierarchical' => true, 'label' => "Type d'habitation", 'query_var' => true, 'show_admin_column' => true, 'show_ui' => true, 'rewrite' => array('slug' => 'constructeurs/habitation', 'with_front' => true, 'hierarchical'  => true, 'show_admin_column' => true, 'show_ui' => true) ) );
	
 	register_taxonomy( 'secteurs', 'constructeurs', array( 'hierarchical' => true, 'label' => "Secteur", 'query_var' => true, 'show_admin_column' => true, 'show_ui' => true, 'rewrite' => array('slug' => 'constructeurs/secteur', 'with_front' => true, 'hierarchical'  => true) ) );
	
	
	
	register_post_type( 'constructeurs',
		array(
			'labels' => array(
				'name' => __( 'Constructeurs' ),
				'singular_name' => __( 'Constructeur' ),
				'menu_name'           => __( 'Constructeurs', 'webloft' ),
				'parent_item_colon'   => __( 'Constructeurs Parent :', 'webloft' ),
				'all_items'           => __( 'Tous les Constructeurs', 'webloft' ),
				'view_item'           => __( 'Afficher le Constructeur', 'webloft' ),
				'add_new_item'        => __( 'Ajouter un Constructeur', 'webloft' ),
				'add_new'             => __( 'Ajouter un Constructeur', 'webloft' ),
				'edit_item'           => __( 'Modifier le Constructeur', 'webloft' ),
				'update_item'         => __( 'Mettre à jour', 'webloft' ),
				'search_items'        => __( 'Rechercher un Constructeur', 'webloft' ),
				'not_found'           => __( 'Aucun Constructeur trouvé', 'webloft' ),
				'not_found_in_trash'  => __( 'Aucun Constructeur dans la corbeille', 'webloft' ),
			),
			'supports' => array( 'title', 'editor', 'thumbnail', 'comments'),
			'public' => true,
			'menu_position' => 5,
			'has_archive' => true
		)
	);
}


function pippin_add_taxonomy_filters() {
	global $typenow;
 
	// an array of all the taxonomyies you want to display. Use the taxonomy name or slug
	$taxonomies = array('secteurs');
 
	// must set this to the post type you want the filter(s) displayed on
	if( $typenow == 'constructeurs' ){
 
		foreach ($taxonomies as $tax_slug) {
			$tax_obj = get_taxonomy($tax_slug);
			$tax_name = $tax_obj->labels->name;
			$terms = get_terms($tax_slug);
			if(count($terms) > 0) {
				echo "<select name='$tax_slug' id='$tax_slug' class='postform'>";
				echo "<option value=''>Filtrer par $tax_name</option>";
				foreach ($terms as $term) { 
					echo '<option value='. $term->slug, $_GET[$tax_slug] == $term->slug ? ' selected="selected"' : '','>' . $term->name .' (' . $term->count .')</option>'; 
				}
				echo "</select>";
			}
		}
	}
}
 add_action( 'restrict_manage_posts', 'pippin_add_taxonomy_filters' );
 
 function pippin_add_taxonomy_filters2() {
	global $typenow;
 
	// an array of all the taxonomyies you want to display. Use the taxonomy name or slug
	$taxonomies = array('habitation');
 
	// must set this to the post type you want the filter(s) displayed on
	if( $typenow == 'constructeurs' ){
 
		foreach ($taxonomies as $tax_slug) {
			$tax_obj = get_taxonomy($tax_slug);
			$tax_name = $tax_obj->labels->name;
			$terms = get_terms($tax_slug);
			if(count($terms) > 0) {
				echo "<select name='$tax_slug' id='$tax_slug' class='postform'>";
				echo "<option value=''>Filtrer par $tax_name</option>";
				foreach ($terms as $term) { 
					echo '<option value='. $term->slug, $_GET[$tax_slug] == $term->slug ? ' selected="selected"' : '','>' . $term->name .' (' . $term->count .')</option>'; 
				}
				echo "</select>";
			}
		}
	}
}
 add_action( 'restrict_manage_posts', 'pippin_add_taxonomy_filters2' );


以上是关于php CPT.php的主要内容,如果未能解决你的问题,请参考以下文章

php populate_cpt_labels.php

如何在 WooCommerce 中获取订单日期?

linux 安装多个PHP版本(php5.6 php7.1 php7.2 php7.3 php7.4 php8.0)nginx配置php多版本

php [guzzle php] guzzle php #php

php send.php php邮件模板#php

IntelliJ IDEA 11编辑php是,支持php文件名为.php5和.php4,如何设置能让其也支持.php呢?