カテゴリーとカスタム投稿タイプを同期

カスタム投稿タイプにWPのカテゴリーに登録しても、カテゴリー一覧に表示されないのでfunctions.phpで同期させる。

/*************************************************
// カテゴリーを同期
**************************************************/
function my_main_query( $query ) {
	if ( is_admin() || ! $query->is_main_query() )
		return;

	if ( $query->is_category() || $query->is_tag() ) {
		$query->set( 'post_type', array( 'post', 'カスタム投稿タイプ名' ) );
		return;
	}
}
add_action( 'pre_get_posts', 'my_main_query' );

参考:https://haniwaman.com/mix-custom/

RSSキャッシュをオフに

記事内でRSSを読み込み時に反映されないことがあるので、キャッシュをオフに

/*************************************************
// RSSキャッシュオフ
**************************************************/
function do_not_cache_feeds(&$feed) {
	$feed->enable_cache(false);
	}
	add_action( 'wp_feed_options', 'do_not_cache_feeds' );

タクソノミースラッグ、ラベルを取得

<?php echo esc_html(get_post_type_object(get_post_type())->label); ?>
<?php echo esc_html(get_post_type_object(get_post_type())->name); ?>

投稿タイプ(post)とカスタム投稿タイプで分ける場合

<?php
$taxonomy_slug = esc_html(get_post_type_object(get_post_type())->name);
$taxonomy_label = esc_html(get_post_type_object(get_post_type())->label);
if($taxonomy_slug == 'post') {
    $cat = get_the_category();
    $taxonomy_slug  = 'category/' . $cat[0]->category_nicename;
    $taxonomy_label = $cat[0]->cat_name;
}
?>

<!--タクソノミーへのリンク-->
<a href="<?php echo esc_url( $this->get( 'home_url' ) . $taxonomy_slug ); ?>/"><?php echo $taxonomy_label ?></a>

エディタ側とフロント側

エディタ用設定
"className":"xxx"

フロント用
class="xxx"

AMP WordPressのメモ