2014-05-22 82 views
0

我試着在Wordpress中的<!--more-->標籤之前分離出一篇文章的內容。Wordpress在多標籤處分割

我有兩列:

  • 左側,包括入門標題和「副標題」一切由之前的<!--more-->標籤。
  • 右側文章排除<!--more-->標籤前的所有內容。

我用下面的代碼來這兩個部分分開: 這是「子標題」

<h2><?php global $more; $more=0; the_content(''); $more=1; ?></h2> 

這是本文的其餘部分。

<?php the_content('', true); ?> 

一切正常,但我還剩兩件神器。

  • 「副題」被包裹在<p class="p1">...text...</p>
  • 在文章中有這樣<p><span id="more-15"></span></p>

我怎樣才能擺脫文物?我現在真的有想法,他們正在擰我的佈局。

謝謝!

回答

1

這應該可以讓你走。

<?php 
//Output sub-title 
global $more; 
$more = 0; 
$out = apply_filters('the_content', get_the_content('')); 
$out = str_replace(']]>', ']]&gt;', $out); 
$out = strip_tags($out, '<br><a><em><u><strong>'); //may need to add more tags 
echo '<h2>'.$out.'</h2>'; 
$more = 1; 
?> 

<?php 
//Output content 
$out = apply_filters('the_content', get_the_content('', TRUE)); 
$out = str_replace(']]>', ']]&gt;', $out); 
$repl = '<p><span id="more-' . get_the_ID() . '"></span></p>'; 
$out = str_replace($repl, '', $out); 
echo $out; 
?> 

一個更好的方法是使這些作爲過濾器the_content,但不知道你的整個網站結構,這可能會引入其他佈局錯誤。

+0

嗨,謝謝,它的工作原理。但是,在副標題中添加了「更多」鏈接。有沒有辦法不顯示它。 和'the_content'的過濾器是如何工作的? – paelzer

+0

像在原始示例中那樣向'get_the_content()'添加一個空字符串應該抑制這一點。我編輯了我的代碼來顯示它。對於過濾器,您可以通過[閱讀本文](http://codex.wordpress.org/Plugin_API)來啓動這個兔子洞。 – cpilko

+0

謝謝,這真的有很大的幫助。 – paelzer