カスタム投稿タイプを表示するためにページテンプレートを使用します。
カスタム投稿タイプのすべてのコンテンツはパスワードで保護する必要があります。いくつかの追加の公開情報については、ワードプレスエディタを使用したいと思います。ワードプレスのパスワード保護からthe_content();
を除外できますか?
// ================ PUBLIC AREA BEGINNS ================
<h4>Pubic-Area</h4>
<?php
if (have_posts()) : while (have_posts()) : the_post();
the_content();
endwhile;
endif;
// ================ PUBLIC AREA ENDS ================
// ================ PROTECTED AREA BEGINNS ================
if ( post_password_required() ) {
echo get_the_password_form();
}
else {
$index = 'A';
$terms = get_terms('marke');
foreach ($terms as $term) {
if($index != strtoupper(substr($term->name, 0, 1))) {
$index = strtoupper(substr($term->name, 0, 1));
echo '<h1>'. $index . '</h1>';
}
?>
<h2><?php echo $term->name; ?></h2>
<?php $args = array( 'post_type' => 'cpt_auto', 'posts_per_page' => -1, 'orderby' => 'title', 'order' => 'ASC',
'tax_query' => array(
array(
'taxonomy' => 'marke',
'field' => 'slug',
'terms' => array($term->slug)
)
)
);
// ============================= OUTPUT ==============================
$loop = new WP_Query( $args ); while ( $loop->have_posts() ) : $loop->the_post();
the_title('<h3>', '</h3>');
the_content();
endwhile;
}
?>
<?php }
// ================ PROTECTED AREA ENDS ================
?>
ありがとうOgni
パスワードが必要な場合は、条件付きタグif ( post_password_required() ) :
をチェックに使用してからthe_content()
を除外することができます。
// view content, only if password is required
if ( post_password_required() )
the_content();
また、グローバル変数$post
を扱うことも可能です。
if ( ! empty( $post->post_password ) ) :
Ot、最後のチャンスで、それほどうまくないわけではありませんが、クエリを強化するのが便利です。
AND post_password = ''