Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 短代码中的WordPress分页功能始终显示在顶部_Php_Wordpress_Function_Pagination_Shortcode - Fatal编程技术网

Php 短代码中的WordPress分页功能始终显示在顶部

Php 短代码中的WordPress分页功能始终显示在顶部,php,wordpress,function,pagination,shortcode,Php,Wordpress,Function,Pagination,Shortcode,快捷码中的WordPress分页功能始终显示在顶部。请看下面的代码 /*-------------------------------------------------------------------------*/ /* Custom Pagination */ /*-------------------------------------------------------------------------*/ function suareztheme_pagination($pa

快捷码中的WordPress分页功能始终显示在顶部。请看下面的代码

/*-------------------------------------------------------------------------*/
/* Custom Pagination */
/*-------------------------------------------------------------------------*/

function suareztheme_pagination($pages = '', $range = 2){

    $showitems = ( $range * 2 ) + 1;  

    global $paged;
    if(empty($paged)) 
        $paged = 1;

    if($pages == ''){

        global $wp_query;
        $pages = $wp_query->max_num_pages;

        if(!$pages){

            $pages = 1;
        }
    }

    if( 1 != $pages ){

        $pagination_html .= '<div class="pagination">';

        if( $paged > 2 && $paged > $range + 1 && $showitems < $pages ){

            $pagination_html .= '<a href="' . get_pagenum_link( 1 ) . '">&laquo;</a>';

        }

        if( $paged > 1 && $showitems < $pages ){

            $pagination_html .= '<a href="' . get_pagenum_link( $paged - 1 ) . '">&lsaquo;</a>';

        }

        for ( $i = 1; $i <= $pages; $i++ ){

            if ( 1 != $pages && ( !($i >= $paged+$range+1 || $i <= $paged-$range-1) || $pages <= $showitems )){

                if ( $paged == $i ){

                    $pagination_html .= '<span class="current">' . $i . '</span>';

                } else{

                    $pagination_html .= '<a href="' . get_pagenum_link( $i ). '" class="inactive">' . $i . '</a>';

                }
            }

        }

        if ( $paged < $pages && $showitems < $pages ){

            $pagination_html .= '<a href="' . get_pagenum_link( $paged + 1 ) . '">&rsaquo;</a>';

        }

        if ( $paged < $pages - 1 &&  $paged + $range - 1 < $pages && $showitems < $pages ){

            $pagination_html .= '<a href="' . get_pagenum_link( $pages ) . '">&raquo;</a>';

        }

        $pagination_html .= '</div>';

        return $pagination_html;
    }

}
/*-------------------------------------------------------------------------*/
/*自定义分页*/
/*-------------------------------------------------------------------------*/
函数suareztheme_分页($pages='',$range=2){
$showitems=($range*2)+1;
全球$paged;
如果(空($paged))
$paged=1;
如果($pages==''){
全局$wp_查询;
$pages=$wp\u query->max\u num\u pages;
如果(!$页){
$pages=1;
}
}
如果(1!=$pages){
$pagination_html.='';
如果($paged>2&&$paged>$range+1&&$showitems<$pages){
$pagination_html.='';
}
如果($paged>1&&$showitems<$pages){
$pagination_html.='';
}
对于($i=1;$i=$paged+$range+1 | |$i“true”,
“日期”=>“正确”,
“列”=>“4”,
“限制”=>“-1”,
“title”=>“true”,
“description”=>“true”,
“猫鼻涕虫”=>“,
“post_类型”=>“”,
“摘录长度”=>“15”,
“readmore_text=>”,
“分页”=>“假”
)美元(附件);;
全球$员额;
$postformat=get_post_format();
....
if(获取查询变量('paged')){
$paged=get_query_var('paged');
}elseif(获取查询变量('page')){
$paged=get_query_var('page');
}否则{
$paged=1;
}
......
if(have_posts()):while(have_posts()):the_post();
$postformat=get_post_format();
如果($postformat==”)$postformat=“标准”;
$protected=“”;
$portfoliogrid.='';
.....////
$portfoliogrid.='';
.......
$portfoliogrid.='';
//如果需要显示标题和说明。
如果($title==“true”| |$description==“true”){
$portfoliogrid.='';
......
$portfoliogrid.='';
}
$portfoliogrid.='';
endwhile;endif;
如果($pagination==“true”){
if(isset(附加循环)){
echo suareztheme分页($additional_loop->max_num_pages);
}否则{
echo suareztheme_分页();
}
如果(存在函数(“suareztheme”分页){
}否则{
下一篇文章链接(“老文章”);
以前的帖子链接(“较新的帖子”);
}
}
wp_reset_query();
返回$portfoliogrid;
}
添加_短代码(“最近博客”、“最近博客”);

上面的代码工作正常,但有一个问题,当它显示在特定页面中时,无论它位于何处,它总是显示在顶部。因此,感谢您的支持帮助我,提前感谢。

在短代码回调中,您需要连接并返回html,例如:

$portfoliogrid .= suareztheme_pagination();

请注意,您将不得不使用
get\u next\u posts\u link()
get\u previous posts\u link()
而不是
next\u posts\u link()
previous\u posts\u link()

非常感谢@diggy。它现在工作得很好。还有一个问题,我应该什么时候使用ob\u start(),Tut建议在函数前后添加它。谢谢。不客气。不需要使用输出缓冲,除非您无法返回所需的数据。Hi@diggy我的问题仍然出现,它工作正常,除了顶部的
a
标记显示,您可以在此处查看我的站点:这是我的代码:
if($readmore_text!=''| |$comments==''true“| |$vote=''”{$portfoliogrid.='';$portfoliogrid.=dot_-irecommittedthis();$portfoliogrid.=''。注释弹出链接('Leave a-Reply','1','%');$portfoliogrid='.'''.
dot-irecommittedthis()
注释弹出链接一样,都是html的回声
(请参阅),因此您必须使用输出缓冲(
ob
stuff)来返回html。
$portfoliogrid .= suareztheme_pagination();