久久精品国产99国产精品免费看_中文成人在线_日本在线播放视频_精品国产一区二区三区在线观看

怎么調用自定義文章類型生成列表? - wordpress開發

前臺可調用自定義文章類型文章進行列表展示

wordpress的自定義文章類型是一項很強大的功能,可以自己創建新的文章類型以便在主題中進行調用,這樣也是與其他主題拉開不同的主要方法。

函數

創建一個新的 Post Type 需要使用 register_post_type 函數注,在你主題的 functions.php 文件下調用該函數:

register_post_type( $post_type, $args );
//$post_type 參數就是你自定義 Post Type 的名稱。

function my_custom_post_product() {
    $args = array();
    register_post_type( 'product', $args );
}
add_action( 'init', 'my_custom_post_product' );

參數很多,為了寫教程方便,只列出比較常用的參數,大體結構如下:

function my_custom_post_site() {
	$labels = array(
		'name'               => _x( '網址導航', 'post type 名稱' ),
		'singular_name'      => _x( '網址', 'post type 單個 item 時的名稱,因為英文有復數' ),
		'add_new'            => _x( '新建網址', '添加新內容的鏈接名稱' ),
		'add_new_item'       => __( '新建網址' ),
		'edit_item'          => __( '編輯網址' ),
		'new_item'           => __( '新網址' ),
		'all_items'          => __( '所有網址' ),
		'view_item'          => __( '查看網址' ),
		'search_items'       => __( '搜索網址' ),
		'not_found'          => __( '沒有找到有關網址' ),
		'not_found_in_trash' => __( '回收站里面沒有相關網址' ),
		'parent_item_colon'  => '',
		'menu_name'          => '網址'
	);
	$args = array(
		'labels'        => $labels,
		'description'   => '網址信息',
		'public'        => true,
		'menu_position' => 5,
		'supports'      => array( 'title', 'editor', 'thumbnail', 'excerpt', 'comments' ),
		'has_archive'   => true
	);
	register_post_type( 'site', $args );
}
add_action( 'init', 'my_custom_post_site' );

將上面代碼加到主題?functions.php?的最下面,進入后臺你會發現多出了?site?選項,這樣表示注冊成功:

怎么調用自定義文章類型生成列表? - wordpress開發

這時候我們可以新建?site發表一篇電影類型的文章了。但是這樣與文章類型基本相同,我們需要更多的自定義來完善我們的?site類型。

添加分類功能需要使用函數?register_taxonomy,使用方法也很簡單,跟注冊 Post Type 函數類似,只不過多了一個參數用來指定對應的 Post Type :

register_taxonomy( $taxonomy, $object_type, $args );

就本例而言,可以配置如下常用參數:

function my_taxonomies_site() {
	$labels = array(
		'name'              => _x( '網址分類', 'taxonomy 名稱' ),
		'singular_name'     => _x( '網址分類', 'taxonomy 單數名稱' ),
		'search_items'      => __( '搜索網址分類' ),
		'all_items'         => __( '所有網址分類' ),
		'parent_item'       => __( '該網址分類的上級分類' ),
		'parent_item_colon' => __( '該網址分類的上級分類:' ),
		'edit_item'         => __( '編輯網址分類' ),
		'update_item'       => __( '更新網址分類' ),
		'add_new_item'      => __( '添加新的網址分類' ),
		'new_item_name'     => __( '新網址分類' ),
		'menu_name'         => __( '網址分類' ),
	);
	$args = array(
		'labels' => $labels,
		'hierarchical' => true,
	);
	register_taxonomy( 'sitecat', 'site', $args );
}
add_action( 'init', 'my_taxonomies_site', 0 );

添加到主題之后,我們看到出現了熟悉的文章分類功能,只不過上面的文案全部變成我們自定義的內容了:

怎么調用自定義文章類型生成列表? - wordpress開發

為 Post Type 添加自定義 Meta Box

我們想要添加的電影類型不能僅僅只有正文內容,我們還需要額外添加一些 導演 之類的有關內容。那么就需要添加自定義 Meta Box,Meta Box 可以在文章發表頁面中添加自定義的表單,編寫文章的時候可以填寫額外的信息然后在前端調用出來。

自定義 Meta Box 需要用到?add_meta_box?函數:

add_meta_box( $id, $title, $callback, $post_type, $context,$priority, $callback_args );

我們注冊一個 Meta Box :

add_action( 'add_meta_boxes', 'site_director' );
function site_director() {
	add_meta_box(
		'site_director',
		'網址鏈接',
		'site_director_meta_box',
		'site',
		'side',
		'low'
	);
}

然后在配置參數里面指定了回調函數?site_director_meta_box,我們需要在這個函數里面創建表單:

function site_director_meta_box($post) {

	// 創建臨時隱藏表單,為了安全
	wp_nonce_field( 'site_director_meta_box', 'site_director_meta_box_nonce' );
	// 獲取之前存儲的值
	$value = get_post_meta( $post->ID, '_site_director', true );
?>
<label for="site_director"></label>
<input type="text" id="site_director" style="width:100%" name="site_director" value="<?php echo esc_attr( $value ); ?>" placeholder="輸入網址鏈接" >
<?php
}
add_action( 'save_post', 'site_director_save_meta_box' );
function site_director_save_meta_box($post_id){
	// 安全檢查
	// 檢查是否發送了一次性隱藏表單內容(判斷是否為第三者模擬提交)
	if ( ! isset( $_POST['site_director_meta_box_nonce'] ) ) {
		return;
	}
	// 判斷隱藏表單的值與之前是否相同
	if ( ! wp_verify_nonce( $_POST['site_director_meta_box_nonce'], 'site_director_meta_box' ) ) {
		return;
	}
	// 判斷該用戶是否有權限
	if ( ! current_user_can( 'edit_post', $post_id ) ) {
		return;
	}
	// 判斷 Meta Box 是否為空
	if ( ! isset( $_POST['site_director'] ) ) {
		return;
	}
	$site_director = sanitize_text_field( $_POST['site_director'] );
	update_post_meta( $post_id, '_site_director', $site_director );
}

添加自定義字段:

add_action("manage_posts_custom_column",  "site_custom_columns");
add_filter("manage_edit-site_columns", "site_edit_columns");
function site_custom_columns($column){
	global $post;
	switch ($column) {
		case "site_director":
			echo get_post_meta( $post->ID, '_site_director', true );
			break;
	}
}
function site_edit_columns($columns){

	$columns['site_director'] = '網址';

	return $columns;
}

顯示 Meta Box 內容

echo '網址:'.get_post_meta( get_the_ID(), '_site_director', true );

調用 WP_Query 高度自定義調用 Post Type 的內容

$args = array( 'post_type' => 'site', 'posts_per_page' => 10 );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
  the_title();
  echo '

<div class="entry-content">';
  the_content();
  echo '</div>';
endwhile;

補充

除了文章本身的欄目以外需要進行設計作品的展示,所以想添加一個新的文章類型調用獨立的展示模板,所以就用的了wp的自定義文章類型的功能。

網上教程很多,這里不做贅述,在實現功能后,前臺需要調用文章進行列表展示,網上很多類似的教程,但是有些不是很完善,這里總結代碼如下:

<?php
    $args = array(
        'post_type' => 'portfolio', //自定義文章類型名稱
        'showposts' => 10, //輸出的文章數量,這個可以是缺省值,不用設置
       //如果你不需要分類,想調用所有分類法的文章比如首頁,可以去掉下面根據id調用這段代碼
        'tax_query' => array(
            array(
                'taxonomy' => 'portfolio_list',//自定義分類法名稱
                'terms' => 64 //id 為 64 的分類。也可是多個分類 array(12,64)
                ),
            )
        );
    $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 查詢
       } ?>

搜索

允許自定義文章類型(custom post type)出現在搜索結果中

// MAKE CUSTOM POST TYPES SEARCHABLE
function searchAll( $query ) {
 if ( $query->is_search ) { $query->set( 'post_type', array( 'site','plugin', 'theme','person' )); }
 return $query;
}
add_filter( 'the_search_query', 'searchAll' );

給TA贊賞
共{{data.count}}人
人已贊賞
??
Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
?
購物車
優惠劵
搜索
久久精品国产99国产精品免费看_中文成人在线_日本在线播放视频_精品国产一区二区三区在线观看

    亚洲精品一区二区三区樱花| 国产亚洲精品综合一区91| 亚洲欧美日韩综合| 亚洲国产成人porn| 国产精品成人一区二区艾草| 久久久久久久尹人综合网亚洲| 亚洲精品国产无天堂网2021| 国产婷婷色一区二区三区四区| 欧美精品一区二区三区四区| 久久国产乱子精品免费女| 一本色道久久综合一区| 亚洲国产精品久久久久婷婷老年 | 亚洲天堂成人| 亚洲精选一区| 亚洲成色精品| 国产一区二区三区黄| 国产精品久久久久一区二区三区 | 欧美区二区三区| 免费在线成人av| 久久综合狠狠综合久久激情| 性久久久久久久久久久久| 亚洲一二三级电影| 亚洲一区日韩在线| 亚洲图片欧美午夜| 亚洲无线一线二线三线区别av| 日韩视频在线一区二区三区| 最新高清无码专区| 91久久综合亚洲鲁鲁五月天| 亚洲精选一区| 亚洲无线一线二线三线区别av| 一区二区三区**美女毛片| 一本色道久久99精品综合| 亚洲精品一区久久久久久| 亚洲精品国产视频| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 日韩一区二区久久| 在线一区日本视频| 亚洲欧美资源在线| 久久精品水蜜桃av综合天堂| 久久久久久亚洲精品不卡4k岛国| 久久久久久综合网天天| 乱中年女人伦av一区二区| 欧美大片免费观看在线观看网站推荐| 欧美国产日韩a欧美在线观看| 欧美成人一二三| 国产精品www994| 国产日韩一区二区三区| 国内一区二区在线视频观看 | 销魂美女一区二区三区视频在线| 欧美自拍丝袜亚洲| 欧美成人免费网| 欧美三级日本三级少妇99| 国产亚洲一级高清| 亚洲黄色在线看| 亚洲一区在线观看免费观看电影高清| 久久国产夜色精品鲁鲁99| 欧美风情在线| 国产欧美日韩亚洲一区二区三区| 亚洲国产高清一区二区三区| 亚洲一区欧美| 毛片精品免费在线观看| 国产精品第三页| 亚洲第一精品福利| 午夜精品久久一牛影视| 欧美成年人视频| 国产日韩欧美在线播放不卡| 亚洲乱码国产乱码精品精可以看| 午夜精品久久久久久久99樱桃| 男女激情久久| 国内精品久久久久久 | 亚洲桃色在线一区| 久久av资源网站| 欧美性天天影院| 亚洲精品久久久久久久久久久久久 | 国产一区二区三区无遮挡| 一区二区高清在线观看| 久久久久久香蕉网| 国产精品一区二区三区免费观看| 亚洲精品免费电影| 久久久蜜桃一区二区人| 国产精品久久久久av| 亚洲免费电影在线观看| 久久亚洲综合网| 韩国在线一区| 久久国产夜色精品鲁鲁99| 国产精品久久久久久影院8一贰佰 国产精品久久久久久影视 | 欧美一区二区私人影院日本 | 一区二区av在线| 欧美成人精品h版在线观看| 黄色资源网久久资源365| 欧美一区二区黄色| 国产精品成人国产乱一区| 一区二区三区欧美在线| 欧美精品一区二区三区四区| 亚洲国产欧美一区二区三区丁香婷| 久久国产精品黑丝| 国产麻豆9l精品三级站| 午夜精品在线看| 国产亚洲欧洲997久久综合| 久久se精品一区精品二区| 国产一区二区三区免费在线观看 | 欧美一区二区视频免费观看| 国产精品日本| 久久精品国产99精品国产亚洲性色| 国产欧美三级| 久久久亚洲午夜电影| 136国产福利精品导航网址| 蜜臀久久99精品久久久久久9 | 狼人社综合社区| 亚洲黑丝一区二区| 欧美日本一道本| 亚洲中字黄色| 国产综合激情| 欧美jizzhd精品欧美喷水| 亚洲欧洲在线一区| 国产精品第一页第二页第三页| 亚洲一区二区三区精品视频| 国产欧美在线观看一区| 免费欧美高清视频| aa成人免费视频| 国产视频亚洲精品| 欧美高清不卡| 欧美综合77777色婷婷| 亚洲电影在线看| 国产精品美女一区二区| 久久精品视频99| 亚洲人成人一区二区三区| 国产精品久久久久久一区二区三区| 欧美一区二区在线免费观看| 玉米视频成人免费看| 欧美日韩亚洲一区三区| 久久激情视频久久| 一区二区三区高清| 狠狠色丁香久久婷婷综合_中| 欧美精品一区二区三区高清aⅴ| 亚洲欧美电影在线观看| 在线精品国产成人综合| 国产精品一区在线观看你懂的| 猫咪成人在线观看| 亚洲欧美日韩另类| 日韩视频免费观看| 好吊一区二区三区| 国产精品区免费视频| 欧美日韩国产电影| 久久一区国产| 欧美一进一出视频| 亚洲视频中文字幕| 亚洲日本激情| 激情久久久久久| 国产一区二区日韩精品欧美精品| 欧美日韩国产精品| 老鸭窝亚洲一区二区三区| 午夜一区不卡| 亚洲一区二区精品在线| 一区二区国产日产| 日韩一级黄色av| 亚洲欧洲久久| 亚洲激情社区| 亚洲国产日韩欧美在线99| 国产一区二区毛片| 国产日韩欧美二区| 国产嫩草一区二区三区在线观看 | 国产精品美女诱惑| 欧美午夜三级| 欧美三级黄美女| 欧美日韩在线精品| 欧美日韩国产在线| 欧美日韩国产在线播放| 欧美日韩成人综合在线一区二区| 免费成人美女女| 欧美激情综合色| 欧美理论电影网| 欧美午夜精品电影| 国产精品一级二级三级| 国产精品一区视频网站| 国产午夜亚洲精品羞羞网站| 国产欧美日本一区二区三区| 国产亚洲激情在线| 黄色欧美成人| 亚洲黄色在线视频| 一区二区成人精品| 亚洲在线黄色| 久久久国产精品一区二区三区| 噜噜噜噜噜久久久久久91| 欧美精品一线| 国产精品久久久久久久久久三级| 国产欧美一级| 在线播放国产一区中文字幕剧情欧美 | 99re66热这里只有精品4| 在线天堂一区av电影| 性欧美大战久久久久久久免费观看 | 亚洲电影下载| 这里是久久伊人| 久久精品中文字幕免费mv| 老**午夜毛片一区二区三区| 欧美成人久久| 国产日韩欧美一区二区三区四区| 伊人久久婷婷| 亚洲一区二区伦理| 久久久一区二区|