[英]Customizing the post before post pagination
我想在分页之前执行脚本。
我也成功地通过在分页数据之前执行脚本来实现这一点
if ( false !== strpos( $content, '<!--nextpage-->' ) )
在wp-includes/query.php
我需要根据某些条件更改分页的帖子页面。
让我们说
if(condition == true){
$paged_data = explode('<!--nextpage-->', $content);
$i = 0;
$allpages = "";
foreach($paged_data as $p_data){
if( ($i) % 3 != 0){
$allpages = $allpages.$p_data;
}
else{
$allpages = $allpages . '<!--nextpage-->' .$p_data;
}
$i++;
}
$content = $allpages;
}
但我需要使用一些钩子或过滤器来实现这一点。 因此,在更新wordpress时不会删除代码。
我已经尝试过the_content
钩子,但是在帖子被分页后执行。
即使我已经尝试过the_post
钩子,但它只适用于少数主题。
以下是使用内容分页时如何以块的形式合并页面的示例:
我们可以使用content_pagination
来修改内容分页:
/**
* Content Pagination - Merge pages in chunks
*/
add_filter( 'content_pagination', function( $pages )
{
// Nothing to do without content pagination
if( count( $pages ) <= 1 )
return $pages;
// Number of pages per chunk
$pages_per_chunk = 3; // <-- Edit to your needs!
// Create chunks of pages
$chunks = array_chunk( $pages, $pages_per_chunk );
// Merge pages in each chunk
$merged = [];
foreach( (array) $chunks as $chunk )
$merged[] = join( '', $chunk );
return $merged;
} );
我们根据需要调整$pages_per_chunk
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.