2012-10-12 50 views
5

我目前使用this tutorial的以下代碼將WordPress帖子內容自動分成2列。但是,如何將此代碼更改爲輸出3列而不是僅輸出2?自動將WordPress帖子內容分成3列?

的functions.php代碼:

function content_split($text, $separator = '<hr/>', $start = false) { 

if ($start === false) { 
$start = strlen($text)/2; 
} 

$lastSpace = false; 
$split = substr($text, 0, $start - 1); 

// if the text is split at a good breaking point already. 
if (in_array(substr($text, $start - 1, 1), array(' ', '.', '!', '?'))) { 

$split .= substr($text, $start, 1); 
// Calculate when we should start the split 
$trueStart = strlen($split); 

// find a good point to break the text. 
} else { 

$split = substr($split, 0, $start - strlen($separator)); 
$lastSpace = strrpos($split, ' '); 

if ($lastSpace !== false) { 
$split = substr($split, 0, $lastSpace); 
} 
if (in_array(substr($split, -1, 1), array(','))) { 
$split = substr($split, 0, -1); 
} 

// Calculate when we should start the split 
$trueStart = strlen($split); 
} 
//now we know when to split the text 
return substr_replace($text, $separator, $trueStart, 0); 

} 

的index.php代碼:

<div class="first-column my-column"> 
<?php $text = get_the_content(); $separator = '</div><div class="second-column my-column">'; echo apply_filters('the_content', content_split($text,$separator)); ?> 
</div> 

回答

3
function content_split($text, $separator = '<hr/>') { 

    $string = ''; 
    $start = ceil(strlen($text)/3); 

    $string.= substr($text,0,$start); 
    $string.= $separator; 
    $string.= substr($text,$start,$start); 
    $string.= $separator; 
    $string.= substr($text,($start*2),$start); 

    return $string; 
} 
+1

工作就像一個魅力,謝謝! –