<a href="<?php echo get_post_type_archive_link('カスタム投稿名'); ?>">
地味ハマり。
<a href="<?php echo get_post_type_archive_link('カスタム投稿名'); ?>">
地味ハマり。
管理者以外で用意した投稿フォームから投稿してもhtmlタグが変換されない。
bbpressがそういう仕様ではあるのだが、それでもhtmlを使いたい場合。
Topic: Allowing Participants to post “unrestricted HTML” · bbPress.org
このスレの一番下より
WordPressにUser Role Editorというプラグインを導入。
指定したユーザにunfiltered_htmlを割り振る。
ユーザを全て管理者にするよりはいいはず。
brew install bradp/vv/vv
でおk。
最近になってbrew install vvが使えなくなったぽい。
//現在のカテゴリを取得
$categories = get_the_category($post->ID);
$category_slugs = array();
foreach($categories as $category){
$cat = $category;
array_push($category_slugs,$cat->slug);
//親のカテゴリがなくなるまで回す
while ($cat->parent) {
$cat_parent_id = $cat->parent;
$cat = get_category($cat_parent_id);
array_push($category_slugs,$cat->slug);
}
}
わりと頑張ってPHP書いてる。
$category = get_category('id');
$category->slug
んでスラッグを取得
通常テーマ内でカスタム投稿を表示させる時に
$args = array( "posts_per_page" => 5,
"post_type" => 'news'
);
$the_query = new WP_Query( $args );
if($posts):
と書けば表示されるのに、プラグイン化していたので表示されなかった話。
functions.phpでカスタム投稿を追加している場合は必要ないが、newsというカスタム投稿をプラグイン化していたので、以下の記述が必要でした。
public function __construct() {
add_action( 'pre_get_posts', array($this, 'add_my_post_types_to_query') );
}
// queryにnewsをセットする
function add_my_post_types_to_query( $query ) {
if ( is_home() && $query->is_main_query() )
$query->set( 'post_type', array( 'post', 'page', 'news' ) );
return $query;
}
WordPressプラグインの作り方は、また後日ちゃんとした記事にしたいと思ってます。今回はとりあえず忘れそうなのでメモだけで失礼。