2017-02-14 75 views
0

我正在尋找一種方法來在我的內容中x段落後動態顯示側邊欄。在x段落後顯示側邊欄

問題:dynamic_sidebar (' name ')不顯示文本:var_dump($ad_code) = bool(true)結果:我的側邊欄在標題中顯示兩次,一次顯示內容,右側顯示數字「1」。

add_filter('the_content', 'prefix_insert_post_ads'); 

function prefix_insert_post_ads($content) { 
    $ad_code = dynamic_sidebar('sidebar-6'); 

    if (is_single() && ! is_admin()) { 
     return prefix_insert_after_paragraph($ad_code, 1, $content); 
    } 
    return $content; 
} 

function prefix_insert_after_paragraph($insertion, $paragraph_id, $content) { 
    $closing_p = '</p>'; 
    $paragraphs = explode($closing_p, $content); 
    foreach ($paragraphs as $index => $paragraph) { 

     if (trim($paragraph)) { 
      $paragraphs[$index] .= $closing_p; 
     } 

     if ($paragraph_id == $index + 1) { 
      $paragraphs[$index] .= $insertion; 
     } 
    } 

    return implode('', $paragraphs); 
} 

回答

0

我只補充一點:

ob_start(); 
dynamic_sidebar('sidebar-id'); 
$sidebar = ob_get_contents(); 
ob_end_clean(); 

它的工作!