Category : カスタム投稿タイプ

カスタム分類, カスタム投稿タイプ, タグクラウド
0

カスタム分類で追加したタグ一覧表示

以前の記事
タグ一覧表示の方法で、
カスタム分類(タクソノミー)で新たに追加した「タグ」を、一覧表示する!

<?php
$tag_all = get_terms("post_tag", "fields=all&number=40&orderby=count&order=DESC");
foreach($tag_all as $value):
?>
<a href="<?php echo get_tag_link($value->term_id); ?>"><?php echo $value->name;?></a>
<?php endforeach; ?>

これを、
get terms(“post_tag”~
↓↓
get_terms(“pptag” ~
のように、

<?php
$tag_all = get_terms("pptag", "fields=all&number=40&orderby=count&order=DESC");
foreach($tag_all as $value):
?>
<a href="<?php echo get_tag_link($value->term_id); ?>"><?php echo $value->name;?></a>
<?php endforeach; ?>

追加したカスタム分類名に変更すれば良いハズ。
これを、
同時に追加したカスタム投稿タイプのアーカイブページ
archive-●●●.php
に記述したら、表示がナニか変!??

aタグのリンクが空っぽになってる!??

前回は、
固定ページのテーマファイルだったが、アーカイブページではこれじゃダメなようだ。
それとも、デフォルトの「タグ」ではなく、カスタム分類の「タグ」タイプだからか?

とりあえず、下記のように変更したら、

<?php
$tag_all = get_terms("pptag", "fields=all&number=40&orderby=count&order=DESC");
foreach($tag_all as $value):
?>
<a href="<?php bloginfo('url'); ?>/pptag/<?php echo $value->slug;?>"><?php echo $value->name;?></a>
<?php endforeach; ?>

狙い通りにいった!
(理由は今ひとつ解らないが…)

続きを読む
functions.php設定, カスタム投稿タイプ, 管理画面ダッシュボード関連
0

デフォルト投稿postの本文フィールドを非表示にする

カスタム投稿タイプで本文入力項目のフィールド(editor)を表示させないのは簡単。
functions.phpへのカスタム投稿タイプ追加コードの

'supports' => array('title','editor', 'custom-fields','author','excerpt','comments'),

から、’editor’を指定しなければ非表示になる。

続きを読む
カスタム分類, カスタム投稿タイプ, パーマリンク設定
0

カスタム投稿タイプ、カスタム分類のパーマリンク

WordPress(ワードプレス)のデフォルトの「投稿」「カテゴリ」を利用した場合、「パーマリンク設定」⇒「カスタム構造」を選択して「/%category%/%postname%/」とすれば、

http://ドメイン/category/カテゴリー名/投稿名/

/category/が邪魔!なので、プラグイン「WP No Category Base」を利用すれば、

http://ドメイン/カテゴリー名/投稿名/

と、することが出来る。
階層構造的にも非常にスマートで理想的。

では、
デフォルトの「投稿」「カテゴリー」を別の用途で利用していると仮定して、
・「カスタム投稿タイプ」でオリジナルの投稿を作成
・「カスタム分類」でオリジナルのカテゴリーを作成
このような場合は?

・カスタム投稿タイプ
http://ドメイン/カスタム投稿タイプ/投稿名/
・カスタム分類
http://ドメイン/カスタム分類/カテゴリー名(ターム名)/

となる。

※「カスタム投稿タイプ」「カスタム分類」に同じ文字列は利用できない!

よって、

・カスタム投稿タイプ「activity」
・カスタム分類「activity_cat」

などと、
微妙に似た感じにして、それっぽくしてみたりするが、
当然、

http://ドメイン/activity/投稿名/
http://ドメイン/activity_cat/カテゴリー名(ターム名)/

となってしまう!

これは、
親子な入れ子?関係的に、階層構造的に美しくない…..。

いろいろググってみたものの、
通常の「投稿」「カテゴリー」のようにするのは無理!?っぽい。
(きっと、PHPでガシガシいじれる人なら可能なんだろうな….)

^^^^^^^^^^^^^^^

◆’has_archive’ => ‘activity/archive’,の参考ページ
http://varl.jp/note/wp-3-1-custom-post-type-settings-summary

◆カスタム分類のベースのスラッグ(URL)を表示させない!
‘rewrite’ => array(‘slug’ => ”)
http://varl.jp/note/create-custom-taxonomy
※カスタム投稿には使えない!?みたい

結果

http://omizu-mobi.bex.jp/activity/blog/jobcubejob/

http://omizu-mobi.bex.jp/activity/cat/haken/

http://omizu-mobi.bex.jp/activity/archive/

カスタム投稿タイプ、カスタム分類

続きを読む
アーカイブページ, カスタム投稿タイプ, カテゴリー
0

カテゴリーページ(アーカイブ)で複数ループ

WordPress初心者&PHP知識ほぼゼロ…..なので、ハマった期間は軽く3日超。涙
忘れないように、メモ書き!

1、通常の「投稿(post)」を利用して「キャバクラ各店舗ページ」
2、カスタム投稿タイプで「ドレスショップ(dressshop)」を作成
この二つを通常のカテゴリーを利用した「エリア=地域」でカテゴリー分け。

テンプレート「アーカイブ」を利用した各カテゴリー(各エリア)ページには、
上部に1、
下部に2、
を表示されるようにする。

つまり、カテゴリー「上野」のカテゴリーページの
上の段に「上野のキャバクラ一覧」※通常の投稿(post)
下の段に「上野のドレスショップ一覧」※カスタム投稿タイプ(dressshop)

この場合、
複数のループが必要になるらしい。

Magicalog | マジカルリミックスエンジニアブログ様の
WordPressで今見ているカテゴリーのIDを取得し、query_postsに代入(改) | Magicalog
を参考にさせて頂き、下記のように記述。

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>

<p><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></p>

<?php endwhile; ?>

<!--カスタム投稿タイプshop一覧-->
<?
foreach((get_the_category()) as $cat) {
$cat_id = $cat->cat_ID ;
break ;
}
$query = 'cat=' . $cat_id. '&showposts=1';
query_posts($query) ;
?>
<?php global $post; $myposts = get_posts("category=$cat_id&post_type=shop&order=asc&numberposts=40");
foreach($myposts as $post) : setup_postdata($post); ?>
<p><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>の詳細へ"><?php the_title(); ?></a></p>
<!--/カスタム投稿タイプshop一覧-->

<?php else : ?>
<p>キャバクラ店舗の登録がありません</p>


<!--直接応募店舗がない場合のカスタム投稿タイプshop一覧-->
<?
foreach((get_the_category()) as $cat) {
$cat_id = $cat->cat_ID ;
break ;
}
$query = 'cat=' . $cat_id. '&showposts=1';
query_posts($query) ;
?>
<?php global $post; $myposts = get_posts("category=$cat_id&post_type=shop&order=asc&numberposts=40");
foreach($myposts as $post) : setup_postdata($post); ?>
<p><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>の詳細へ"><?php the_title(); ?></a></p>
<!--/直接応募店舗がない場合の紹介・派遣先店舗の一覧-->

<?php endif; ?>

狙い通りの表示に……と思いきや、なんか変。。

————
Magicalog | マジカルリミックスエンジニアブログ様の
WordPressで今見ているカテゴリーのIDを取得し、query_postsに代入(改) | Magicalog

<?
foreach((get_the_category()) as $cat) {
$cat_id = $cat->cat_ID ;
break ;
}
$query = 'cat=' . $cat_id. '&showposts=1';
query_posts($query) ;
?>
<dl class="news">
<?php global $post; $myposts = get_posts("category=$cat_id&post_type=shop&order=asc&numberposts=40");
foreach($myposts as $post) : setup_postdata($post); ?>
<dt style="text-align:center;"><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>の詳細へ"><?php echo post_custom("店舗名アルファベット"); ?></a></dt>
<dd><?php the_title(); ?>【<?php echo get_the_term_list($post->ID, 'type', '', '・'); ?>】</dd>
<?php endforeach; ?>
</dl>

ソースコード全体

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>

<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php $cat = get_the_category(); $cat = $cat[0]; { echo $cat->cat_name; } ?><?php echo post_custom("店舗名アルファベット"); ?>(<?php echo post_custom("店舗名カナ"); ?>)</a></h2>

<div class="contents">

<p class="left"><img src="http://night-arcs.com/data/<?php echo post_custom("店舗コード"); ?>/top-pc.jpg" alt="<?php $cat = get_the_category(); $cat = $cat[0]; { echo $cat->cat_name; } ?><?php echo post_custom("店舗名アルファベット"); ?>(<?php echo post_custom("店舗名カナ"); ?>)店内画像トップ" width="234" height="176" /></p><p><br /><?php echo post_custom("テキスト1"); ?></p>

</div>


<?php endwhile; ?>

<!--カスタム投稿タイプshop一覧-->
<h2><?php single_cat_title(); ?>エリアの「紹介・派遣」先店舗の一覧</h2>
<div class="contents">

<?
foreach((get_the_category()) as $cat) {
$cat_id = $cat->cat_ID ;
break ;
}
$query = 'cat=' . $cat_id. '&showposts=1';
query_posts($query) ;
?>
<dl class="news">
<?php global $post; $myposts = get_posts("category=$cat_id&post_type=shop&order=asc&numberposts=40");
foreach($myposts as $post) : setup_postdata($post); ?>
<dt style="text-align:center;"><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>の詳細へ"><?php echo post_custom("店舗名アルファベット"); ?></a></dt>
<dd><?php the_title(); ?>【<?php echo get_the_term_list($post->ID, 'type', '', '・'); ?>】</dd>
<?php endforeach; ?>
</dl>

</div>
<!--/カスタム投稿タイプshop一覧-->


<?php posts_nav_link_keni(); ?>

<?php else : ?>
<h2>店舗がありません</h2>
	<div class="contents">
	<?php single_cat_title(); ?>エリアに直接応募出来る店舗はございません。
    <p><?php printf( __('Back to <a href="%1$s">%2$s</a>','keni'), get_bloginfo('url'), get_bloginfo('name')); ?></p>
	</div>
	
	

<!--直接応募店舗がない場合のカスタム投稿タイプshop一覧-->
<h2><?php single_cat_title(); ?>エリアの「紹介・派遣」先店舗の一覧</h2>
<div class="contents">

<?
foreach((get_the_category()) as $cat) {
$cat_id = $cat->cat_ID ;
break ;
}
$query = 'cat=' . $cat_id. '&showposts=1';
query_posts($query) ;
?>
<dl class="news">
<?php global $post; $myposts = get_posts("category=$cat_id&post_type=shop&order=asc&numberposts=40");
foreach($myposts as $post) : setup_postdata($post); ?>
<dt style="text-align:center;"><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>の詳細へ"><?php echo post_custom("店舗名アルファベット"); ?></a></dt>
<dd><?php the_title(); ?>【<?php echo get_the_term_list($post->ID, 'type', '', '・'); ?>】</dd>
<?php endforeach; ?>
</dl>

</div>
<!--/直接応募店舗がない場合の紹介・派遣先店舗の一覧-->


<?php endif; ?>

これだけおさえる ネットでバイト様の
ワードプレスで現在のカテゴリーページのIDを取得する方法

<? 
$categoryname = single_cat_title('',false);
$categoryid = get_cat_ID($categoryname);
?>

これで、カテゴリー名⇒カテゴリーIDを取得して、

<? 
$categoryname = single_cat_title('',false);
$categoryid = get_cat_ID($categoryname);
?>
<dl class="news">
<?php global $post; $myposts = get_posts("category=$categoryid&post_type=shop&numberposts=40");
foreach($myposts as $post) : setup_postdata($post); ?>
<dt style="text-align:center;"><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php echo post_custom("店舗名アルファベット"); ?></a></dt>
<dd><?php the_title(); ?>【<?php echo get_the_term_list($post->ID, 'type', '', '・'); ?>】</dd>
<?php endforeach; ?>
</dl>

こうしたら上手くいきました!

全体のソースコード

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>

<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php $cat = get_the_category(); $cat = $cat[0]; { echo $cat->cat_name; } ?><?php echo post_custom("店舗名アルファベット"); ?>(<?php echo post_custom("店舗名カナ"); ?>)</a></h2>

<div class="contents">

<p class="left"><img src="http://night-arcs.com/data/<?php echo post_custom("店舗コード"); ?>/top-pc.jpg" alt="<?php $cat = get_the_category(); $cat = $cat[0]; { echo $cat->cat_name; } ?><?php echo post_custom("店舗名アルファベット"); ?>(<?php echo post_custom("店舗名カナ"); ?>)店内画像トップ" width="234" height="176" /></p><p><br /><?php echo post_custom("テキスト1"); ?></p>

</div>


<?php endwhile; ?>

<?php posts_nav_link_keni(); ?>

<!--カスタム投稿タイプshop一覧-->
<p><br /></p>
<h2><?php single_cat_title(); ?>エリアの「紹介・派遣」先店舗の一覧</h2>
<div class="contents">





<? 
$categoryname = single_cat_title('',false);
$categoryid = get_cat_ID($categoryname);
?>

<dl class="news">
<?php global $post; $myposts = get_posts("category=$categoryid&post_type=shop&numberposts=40");
foreach($myposts as $post) : setup_postdata($post); ?>
<dt style="text-align:center;"><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>の詳細へ"><?php echo post_custom("店舗名アルファベット"); ?></a></dt>
<dd><?php the_title(); ?>【<?php echo get_the_term_list($post->ID, 'type', '', '・'); ?>】</dd>
<?php endforeach; ?>
</dl>

</div>
<!--/カスタム投稿タイプshop一覧-->

<?php else : ?>

<h2>店舗がありません</h2>
<div class="contents">
<?php single_cat_title(); ?>エリアに直接応募出来る店舗はございません。
</div>


<!--カスタム投稿タイプshop一覧-->
<p><br /></p>
<h2><?php single_cat_title(); ?>エリアの「紹介・派遣」先店舗の一覧</h2>
<div class="contents">



<? 
$categoryname = single_cat_title('',false);
$categoryid = get_cat_ID($categoryname);
?>

<dl class="news">
<?php global $post; $myposts = get_posts("category=$categoryid&post_type=shop&numberposts=40");
foreach($myposts as $post) : setup_postdata($post); ?>
<dt style="text-align:center;"><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>の詳細へ"><?php echo post_custom("店舗名アルファベット"); ?></a></dt>
<dd><?php the_title(); ?>【<?php echo get_the_term_list($post->ID, 'type', '', '・'); ?>】</dd>
<?php endforeach; ?>
</dl>

</div>
<!--/カスタム投稿タイプshop一覧-->

<?php endif; ?>

カテゴリー名やID、親カテゴリーIDなどの取得コード
※けどこの方法もこの記事のケースではダメでした

<?php
/* 現在のカテゴリ-の取得 */
$cat_now = get_the_category();
$cat_now = $cat_now[0];
/*親カテゴリーのID取得*/
$parent_id = $cat_now->category_parent;
/*現在のカテゴリーID/カテゴリー名取得*/
$now_id = $cat_now->cat_ID; /* カテゴリID */
$now_name = $cat_now->cat_name; /* カテゴリ名 */
?>

OpenMediaLaboratory Blog様の
WordPressでカテゴリID/カテゴリ名を取得する | OpenMediaLaboratory参考

続きを読む
functions.php設定, アーカイブページ, カスタム投稿タイプ
0

カスタム投稿タイプのアーカイブページ(一覧ページ)

カスタム投稿タイプとカスタム分類をプラグイン無で設定,表示でつくったカスタム投稿タイプの一覧リストを表示するページ(アーカイブページ)を作成する手順。

'show_ui' => true,
'query_var' => true,
'rewrite' => true,
'capability_type' => 'post',
'hierarchical' => false,
'menu_position' => 2,
'has_archive' => true,
'supports' => array('title','editor', 'custom-fields','author','excerpt','comments'),
'taxonomies' => array('type','tokyo','nishi_tokyo','popkey')
);
register_post_type('shop',$args);

↑の、30行目がないとアーカイブ生成されず表示不可能なので、

'has_archive' => true,

を、必ず入れる。(これはWordPressの3.1から追加されて機能)

~~~~~~~~~~~~
最初試しに、http://ドメイン.com/shop/とやってみた時、404エラーにはならずページは存在していた。(もちろん投稿一覧は表示されていませんでしたが)
これは、
テンプレートの優先順位が

1、archive-●●●.php(今回の例だとarchive-shop.php)
2、archive.php
3、index.php

の為、archive.phpで表示されていた!ってことですネ。

VARL(ヴァール)様の
WordPress 3.1 から使う、カスタムポストタイプの設定から表示までのまとめ …的なもの – Website Tips ノート : VARL

Labor Of Love – Laughing Out Loud –様の
WordPressカスタム投稿タイプを使って商品紹介ページを作ったよ-part2 | Labor Of Love – Laughing Out Loud

続きを読む
functions.php設定, カスタム分類, カスタム投稿タイプ
0

カスタム投稿タイプとカスタム分類をプラグイン無で設定,表示

この記事もまだ、途中です….

同じような記事を何度か書いているが、
WordPress初心者の自分なりに試行錯誤した結果、PHPの勉強にもなるし基本はなるべくプラグインに頼らない!にこだわっていくことに決定。(挫折しそうですが…)
なので、
「カスタム投稿タイプ」と「カスタム分類」の自分なりのまとめ的なメモ。

まず、
946696 WordPressのテーマ内functions.phpが長くなりがちなので、functionsフォルダにファイルを分割して置くとき書いとくと便利 – gistlogを参考にして、
/wp-content/themes/適用しているテーマのフォルダ/
に、「functions」というフォルダを作り、
この中に「custom-post-taxonomy.php」を作成。
これを「カスタム投稿タイプ」「カスタム分類」に関する設定を記述する専用ファイルとした上で、functions.phpで読み込ませる為に下記をfunctions.phpに記述。

/*
 * functionsフォルダにあるファイルをすべて読み込む
 */
foreach(glob(TEMPLATEPATH."/functions/*.php") as $file){
	require_once $file;
}

※なるほど!こんな方法があったんですね。どんどん長く解りにづらくなってしまうfunctions.phpへの追加記述もこれならスッキリ!!

そして、
yusk -ユースク- | always as a designer様のカスタム投稿タイプとカスタムタクソノミーをプラグインを使わずに実現するという記事を参考にさせて頂いております。
かちびと.net様のWordPressのカスタム投稿(ポスト)タイプを作成するまでの手順リスト – かちびと. net
を、参考にさせて頂き「カスタム投稿タイプ」「カスタム分類」専用の/functions/custom-post-taxonomy.phpへ下記を記述。

<?php
// カスタム投稿タイプを作成
// 店舗投稿タイプ
function night_custom_post_type()
{

$labels = array(
'name' => _x('店舗情報', 'post type general name'),
'singular_name' => _x('店舗情報', 'post type singular name'),
'add_new' => _x('店舗情報を追加', 'night'),
'add_new_item' => __('新しい店舗情報を追加'),
'edit_item' => __('店舗情報を編集'),
'new_item' => __('新しい店舗情報'),
'view_item' => __('店舗情報を編集'),
'search_items' => __('店舗情報を探す'),
'not_found' => __('店舗情報はありません'),
'not_found_in_trash' => __('ゴミ箱に店舗情報はありません'),
'parent_item_colon' => ''
);
$args = array(
'labels' => $labels,
'public' => true,
'publicly_queryable' => true,
'show_ui' => true,
'query_var' => true,
'rewrite' => true,
'capability_type' => 'post',
'hierarchical' => false,
'menu_position' => 2,
'has_archive' => true,
'supports' => array('title','editor', 'custom-fields','author','excerpt','comments'),
'taxonomies' => array('type','tokyo','nishi_tokyo','popkey')
);
register_post_type('night',$args);

// カスタム分類を作成

//タイプ
$args = array(
'label' => 'タイプ',
'public' => true,
'show_ui' => true,
'hierarchical' => true
);
register_taxonomy('type','night',$args);

//東京23区
$args = array(
'label' => 'エリア東京',
'public' => true,
'show_ui' => true,
'hierarchical' => true
);
register_taxonomy('tokyo','night',$args);

//西東京
$args = array(
'label' => 'エリア西東京',
'public' => true,
'show_ui' => true,
'hierarchical' => true
);
register_taxonomy('nishi_tokyo','night',$args);

//タグタイプ
$args = array(
'label' => '注目キーワード',
'public' => true,
'show_ui' => true,
'hierarchical' => false
);
register_taxonomy('popkey','night',$args);
}

add_action('init', 'night_custom_post_type');
?>

~~~~~
【カスタム投稿タイプに権限を】
The blog of H.Fujimoto様の
WordPress 3.0のカスタム投稿タイプ機能(その2) – The blog of H.Fujimoto内、
「2-8.capability_type」に記載してある!

【カスタム分類に権限を】
The blog of H.Fujimoto様の
register_taxonomy関数の書き方 – The blog of H.Fujimoto内、
「2-9.capabilities」に軽く記載してある!

The blog of H.Fujimoto様にはMTを使っているころより、このブログ&書籍などお世話になりまくりです。

続きを読む
カスタム投稿タイプ, パーマリンク設定, プラグイン
0

WordPressのパーマリンクを自由に設定するプラグイン【Custom Permalinks】

サイドバーの「設定」⇒「パーマリンク設定」で、
WordPressのパーマリンクを自由に設定するプラグイン【Custom Permalinks】パーマリンク設定画面
上記のように共通設定を「投稿名」とした場合、

「投稿」は、http://ワードプレスとは.com/スラッグ名/
「固定ページ」も、http://ワードプレスとは.com/スラッグ名/

ですが、
「カスタム投稿タイプ」では、「投稿タイプ名=afad広告」「ラベル名=広告」という投稿タイプを設定した場合には、
http://ワードプレスとは.com/afad/スラッグ名/
となってしまう。
WordPressのパーマリンクを自由に設定するプラグイン【Custom Permalinks】プラグインイン利用前
こtのカスタム投稿タイプのパーマリンク(URL)を~/afad/~なし、
http://ワードプレスとは.com/スラッグ名/
のようなスッキリとしたURLにしたい場合には、プラグインCustom Permalinksを利用すれば可能。
WordPressのパーマリンクを自由に設定するプラグイン【Custom Permalinks】プラグイン利用後
カスタム投稿タイプだけではなく、「投稿」「固定ページ」なども記事ごと個別に自由にパーマリンクを設定できる。
例えば、サイドバーの「設定」⇒「パーマリンク設定」で、
共通設定を「カスタム構造」「/%category%/%postname%/」とした場合、
http://ワードプレスとは.com/カテゴリー/スラッグ名/
となるが、
プラグインCustom Permalinksを利用すれば、
http://ワードプレスとは.com/○○○/●●●/と、ドメイン/~より後ろを、記事ごと個別に自由にパーマリンク設定することが可能になる。

インストールしたCustom Permalinksのバージョンは0.7.9。
対応するWordPressの最新バージョン: 3.2.1とのことらしいが、WordPress3.3.1でも問題なく動作しています。
【追記】
と、思っていたのですが、「カスタム分類」のパーマリンクだけ設定出来ないことを発見!
上記バージョンでプラグインCustom Post Type UIで設定。
同様に設定した「カスタム投稿タイプ」では個別に自由にパーマリンクを設定できているのに、ナゼ??

Custom Permalinksプラグインのwebサイト
WordPressでパーマリンク(URL)を自由に設定できるプラグイン『Custom Permalinks』 | WordPressの使い方

続きを読む
カスタム投稿タイプ
0

カスタム投稿タイプをプラグイン無しで設定,表示

プラグインを利用せずにカスタム投稿タイプを設定。

◆投稿タイプ名「afad」
◆ラベル「広告」

サイドバーの外観⇒テーマの編集⇒functions.php

function my_custom_post_type() {
    register_post_type( 'afad', array(
        'label' => '広告',
        'public' => true,
        'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'custom-fields' ,'comments' ),
        'menu_position' => 5,
        'has_archive' => true
    ));
}
add_action( 'init', 'my_custom_post_type', 0 );

(参照:WordPress 3.1 から使う、カスタムポストタイプの設定から表示までのまとめ …的なもの – Website Tips ノート : VARLより)

保存して管理画面を見ると、

WordPressのカスタム投稿(ポスト)タイプの設定完了後の管理画面
サイドバーの投稿のすぐ下に「広告」という投稿タイプが新たに追加されました。
これがカスタム投稿タイプです。

—–
WordPressで「カスタム投稿」と「カスタムフィールドテンプレート」 | 8works
WordPress 3.1 から使う、カスタムポストタイプの設定から表示までのまとめ …的なもの – Website Tips ノート : VARL
カスタム投稿タイプ(Custom Post Type)の導入と使い方 [WordPress 3.0] | 8bitodyssey.com

add_action('init', 'my_custom_init');
function my_custom_init()
{
  $labels = array(
    'name' => _x('ワンコ動画', 'post type general name'),
    'singular_name' => _x('犬の動画', 'post type singular name'),
    'add_new' => _x('新しく記事を書く', 'dogs'),
    'add_new_item' => __('ワンコ動画記事を書く'),
    'edit_item' => __('ワンコ記事を編集'),
    'new_item' => __('新しいワンコ記事'),
    'view_item' => __('ワンコ記事を見る'),
    'search_items' => __('ワンコ記事を探す'),
    'not_found' =>  __('ワンコ記事はありません'),
    'not_found_in_trash' => __('ゴミ箱にワンコ記事はありません'),
    'parent_item_colon' => ''
  );
  $args = array(
    'labels' => $labels,
    'public' => true,
    'publicly_queryable' => true,
    'show_ui' => true,
    'query_var' => true,
    'rewrite' => true,
    'capability_type' => 'post',
    'hierarchical' => false,
    'menu_position' => 5,
    'supports' => array('title','editor','thumbnail','custom-fields','excerpt','author','trackbacks','comments','revisions','page-attributes'),
    'has_archive' => true
  );
  register_post_type('dogs',$args);
}

//投稿時のメッセージとか
add_filter('post_updated_messages', 'book_updated_messages');
function book_updated_messages( $messages ) {

  $messages['dogs'] = array(
    0 => '', // ここは使用しません
    1 => sprintf( __('ワンコ動画を更新しました <a href="%s">記事を見る</a>'), esc_url( get_permalink($post_ID) ) ),
    2 => __('カスタムフィールドを更新しました'),
    3 => __('カスタムフィールドを削除しました'),
    4 => __('ワンコ動画更新'),
    5 => isset($_GET['revision']) ? sprintf( __(' %s 前にワンコ動画を保存しました'), wp_post_revision_title( (int) $_GET['revision'], false ) ) : false,
    6 => sprintf( __('ワンコ動画が公開されました <a href="%s">記事を見る</a>'), esc_url( get_permalink($post_ID) ) ),
    7 => __('ワンコ動画記事を保存'),
    8 => sprintf( __('ワンコ動画記事を送信 <a target="_blank" href="%s">プレビュー</a>'), esc_url( add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ) ),
    9 => sprintf( __('ワンコ動画を予約投稿しました: <strong>%1$s</strong>. <a target="_blank" href="%2$s">プレビュー</a>'),
      date_i18n( __( 'M j, Y @ G:i' ), strtotime( $post->post_date ) ), esc_url( get_permalink($post_ID) ) ),
    10 => sprintf( __('ワンコ動画の下書きを更新しました <a target="_blank" href="%s">プレビュー</a>'), esc_url( add_query_arg( 'preview', 'true', get_permalink($post_ID) ) ) ),
  );

  return $messages;
}

//追加したカスタム投稿タイプの投稿ページ上部にあるプルダウンするヘルプ内テキスト
add_action( 'contextual_help', 'add_help_text', 10, 3 );

function add_help_text($contextual_help, $screen_id, $screen) { 

  if ('dogs' == $screen->id ) {
    $contextual_help =
      '<p>' . __('ワンコ動画がなぜ最高なのかを以下に解説します') . '</p>' .
      '<ul>' .
      '<li>' . __('擬似的にモフモフ出来る') . '</li>' .
      '<li>' . __('とにかく可愛い') . '</li>' .
      '</ul>' .
      '<p>' . __('もし貴方がワンコ動画で満足できないならぬこ様動画も試すべきです:') . '</p>' .
      '<ul>' .
      '<li>' . __('擬似的にもふもふ出来r') . '</li>' .
      '<li>' . __('お腹すいた。') . '</li>' .
      '</ul>' .
      '<p><strong>' . __('解決しないときは:') . '</strong></p>' .
      '<p>' . __('<a href="http://codex.wordpress.org/Posts_Edit_SubPanel" target="_blank">ドキュメント</a>') . '</p>' .
      '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">フォーラム</a>') . '</p>' ;
  } elseif ( 'edit-book' == $screen->id ) {
    $contextual_help =
      '<p>' . __('カスタム投稿タイプむずいようで簡単ですね。でも僕にはむずいです。') . '</p>' ;
  }
  return $contextual_help;
}

(参照:WordPressのカスタム投稿(ポスト)タイプを作成するまでの手順リスト – かちびと. netより)

カスタム投稿タイプのパーマリンク設定プラグイン
【Custom Permalinks】
WordPressでパーマリンク(URL)を自由に設定できるプラグイン『Custom Permalinks』 | WordPressの使い方
WordPress のカスタム投稿タイプ毎にパーマリンクを設定できる Custom Post Permalinks の使い方 | ウェブル
※配布終了?
↓↓
似たようなモノで日本人の方がつくっているらしい
↓↓
【Custom Post Type Permalinks】
WordPressをCMSにして、ポートフォリオサイトを構築 | motoraji design
作者ブログ
作者による利用方

続きを読む
カスタム投稿タイプ, プラグイン
0

カスタム投稿タイプ簡単設定プラグイン【Custom Post Type UI】

カスタム投稿タイプ(Custom Post Type)の導入と使い方 [WordPress 3.0] | 8bitodyssey.com

Custom Post Type UI

続きを読む
カスタム投稿タイプ
0

カスタム投稿タイプとは

続きを読む