WordPress用のプラグインを作成しようとしています。目標は、!--nextpage-->
タグを移動する場所 (ページネーション) にショートコードを使用することです。次に、通常の訪問者 (ログインしていない) には投稿にページネーションを設定しますが、ログインしているすべての訪問者に対しては、投稿をこれまでになく続けます。ページネーションを見る(人々がメンバーになることを奨励するため).
問題は、ログインしたメンバーには何も表示しないようにすることはできますが、このコードを使用して、ログインしていない訪問者のページネーションを追加せずにページをロードすることです。そのため、ページネーションがなく、途中にリンクがあるだけでコンテンツ全体が表示されます。
正しくロードするには、何を微調整する必要がありますか?
function pagination_show( $atts = null ) {
extract( shortcode_atts( array(
'nextpage_text' => 'CONTINUED ON NEXT PAGE',
'previous_text' => 'CONTINUED FROM PREVIOUS PAGE',
), $atts ) );
$pagination = '';
if(!is_user_logged_in()){
$pagination = '<div class="plugin-pagination" style="overflow:auto;">';
$next_post = get_next_post();
if (!empty( $next_post )):
$pagination .= '<strong style="float:left;" class="nextpage"><em><a href="'.get_permalink( $next_post->ID ).'">'. esc_attr($nextpage_text) .'</a></strong></em><!--nextpage-->';
endif;
$prev_post = get_previous_post();
if (!empty( $prev_post )):
$pagination .= '<strong style="float:right;" class="previouspage"><em><a href="'.get_permalink( $prev_post->ID ).'">'. esc_attr($previous_text) .'</a></strong></em><!--previouspage-->';
endif;
$pagination .= '</div>';
}
return $pagination ;
}
add_shortcode('pagination', 'pagination_show');