按自定义字段订购 Wordpress 自定义帖子
Order Wordpress custom posts by custom feilds
我正在尝试按自定义字段订购自定义 post。这是我的代码。
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$args = array(
'post_type' => 'pql_Servay',
'paged' => $paged,
'post_status' => 'publish',
'posts_per_page' => 2,
'orderby' => 'meta_value',
'orderby' => 'meta_value_num',
'meta_key' => 'question_order',
'order' => 'ASC'
);
此代码适用于在单个页面上显示所有 post。但是我想每页显示一个post。
我正在使用此代码获取下一个 post 页面 link。
<a href="<?php echo get_next_posts_link(); ?>">Next Post</a>
但是当我单击此 link 时,下一页还显示第一个 post。简而言之,下一个 post 在第一页上显示相同的 post。
我正在创建一个简码来显示这些 posts。
这是完整的简码
<?php
add_shortcode( 'PreQualifyingLeads', 'PreQualifyingLeads_shortcode');
function PreQualifyingLeads_shortcode(){
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$args = array(
'post_type' => 'pql_Servay',
'paged' => $paged,
'post_status' => 'publish',
'posts_per_page' => 2,
'orderby' => 'meta_value',
'orderby' => 'meta_value_num',
'meta_key' => 'question_order',
'order' => 'ASC'
);
?>
<div class="pql-wrapper">
<div class="title-wrapper">
<h2>This is page Title </h2>
</div>
<div class="Question-Wrapper">
<?php
$loop = new WP_Query( $args );
if($loop->have_posts()){
while ( $loop->have_posts() ) {
$loop->the_post();
echo the_title( ).'<br>';
}
}
wp_reset_postdata( );
?>
<a href="<?php echo get_next_posts_link()?>">Next Post</a>
</div>
</div>
<?php
}
您需要在查询中添加分页参数,如下所示:
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
'paged' => $paged
您的 wp 查询应如下所示:
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$args = array(
'post_type' => 'pql_Servay',
'paged' => $paged
'post_status' => 'publish',
'posts_per_page' => 1,
'orderby' => 'meta_value',
'orderby' => 'meta_value_num',
'meta_key' => 'question_order',
'order' => 'ASC'
);
试试这可能是它的 运行
$args = array(
'post_type' => 'pql_Servay',
'paged' => $paged
'post_status' => 'publish',
'posts_per_page' => 1,
'orderby' => array(
'question_order'=>'ASC
)
);
我正在尝试按自定义字段订购自定义 post。这是我的代码。
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$args = array(
'post_type' => 'pql_Servay',
'paged' => $paged,
'post_status' => 'publish',
'posts_per_page' => 2,
'orderby' => 'meta_value',
'orderby' => 'meta_value_num',
'meta_key' => 'question_order',
'order' => 'ASC'
);
此代码适用于在单个页面上显示所有 post。但是我想每页显示一个post。
我正在使用此代码获取下一个 post 页面 link。
<a href="<?php echo get_next_posts_link(); ?>">Next Post</a>
但是当我单击此 link 时,下一页还显示第一个 post。简而言之,下一个 post 在第一页上显示相同的 post。
我正在创建一个简码来显示这些 posts。
这是完整的简码
<?php
add_shortcode( 'PreQualifyingLeads', 'PreQualifyingLeads_shortcode');
function PreQualifyingLeads_shortcode(){
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$args = array(
'post_type' => 'pql_Servay',
'paged' => $paged,
'post_status' => 'publish',
'posts_per_page' => 2,
'orderby' => 'meta_value',
'orderby' => 'meta_value_num',
'meta_key' => 'question_order',
'order' => 'ASC'
);
?>
<div class="pql-wrapper">
<div class="title-wrapper">
<h2>This is page Title </h2>
</div>
<div class="Question-Wrapper">
<?php
$loop = new WP_Query( $args );
if($loop->have_posts()){
while ( $loop->have_posts() ) {
$loop->the_post();
echo the_title( ).'<br>';
}
}
wp_reset_postdata( );
?>
<a href="<?php echo get_next_posts_link()?>">Next Post</a>
</div>
</div>
<?php
}
您需要在查询中添加分页参数,如下所示:
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
'paged' => $paged
您的 wp 查询应如下所示:
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$args = array(
'post_type' => 'pql_Servay',
'paged' => $paged
'post_status' => 'publish',
'posts_per_page' => 1,
'orderby' => 'meta_value',
'orderby' => 'meta_value_num',
'meta_key' => 'question_order',
'order' => 'ASC'
);
试试这可能是它的 运行
$args = array(
'post_type' => 'pql_Servay',
'paged' => $paged
'post_status' => 'publish',
'posts_per_page' => 1,
'orderby' => array(
'question_order'=>'ASC
)
);