2017-02-17 2 views
0

私は、コードのこの部分のための助けを必要とする:ページごとのポストを持つカスタムwpdbクエリ?

<?php 
global $wpdb; 
$id = get_the_ID(); 
$querystring = "SELECT * FROM wp_candle WHERE id = $id"; 
$results = $wpdb->get_results($querystring ,OBJECT); 
foreach($results as $result) 
{ 
    echo 
    '<div class="kerzenbox clearfix"> 
    <article class="post boxrechts" id=""> 
    <h2> "'.$result->contactName.'" </h2> 
    <p> "'.$result->worte.'" </p> 
    <img src="myImagePath" width="50" height="70"/> 
    </article> 
    </div>'; 

} 
?> 

私はページオプションあたりのポストが実装必要がありますが、私は方法がわかりません。この特定のクエリのページごとの投稿がなければ、ページは本当に奇妙に見えます。

+0

唯一の解決策であるカスタムページネーションを追加するか、または非常に使いやすいwordpressクエリを使用してください。 –

+0

はいわかりました。ページ番号を付けておくと、クエリの量を制限することしかできません。それ以上のページはありません。または私はページネーションをカスタマイズできますか? –

+0

に従ってください。http://www.freezecoders.com/2014/01/simple-pagination-using-php-mysql.html – Samyappa

答えて

0
<?php 

    global $wpdb; 

    $rows_per_page = 8; 

    $current = (intval(get_query_var('paged'))) ? intval(get_query_var('paged')) : 1; 

    $rows = $wpdb->get_results("SELECT * FROM wp_candle WHERE id = $id "); 

    global $wp_rewrite; 

    $pagination_args = array(

    'base' => @add_query_arg('paged','%#%'), 

    'format' => '', 

    'total' => ceil(sizeof($rows)/$rows_per_page), 

    'current' => $current, 

    'show_all' => false, 

    'type' => 'plain', 

    ); 

    if($wp_rewrite->using_permalinks()) 
    { 
    $pagination_args['base'] = user_trailingslashit(trailingslashit(remove_query_arg('s',get_pagenum_link(1))) . 'page/%#%/', 'paged'); 
    } 


    if(!empty($wp_query->query_vars['s'])) 
    { 
    $pagination_args['add_args'] = array('s'=>get_query_var('s')); 
    } 

    echo paginate_links($pagination_args); 

    ?> 
関連する問題