2011-08-25 71 views
0

我正在尋找檢索頁面上的簡碼的對象(或數組)。所以基本上我有一個簡碼,我的用戶可以在頁面中插入錨點,我正在尋找基於頁面上的簡碼動態輸出菜單。有什麼方法可以檢索用戶在頁面呈現中放入的內容嗎?檢索Wordpress簡碼

回答

1

這裏就是我所做的是能夠把一個帖子的部分在邊欄:

在header.php中定義一個全局varibale保存的信息:你的簡碼的

// Initialize sidebar content. 
$GLOBALS['mySidebar'] = ''; 

每個實施應該將信息添加到該全局變量。我的簡碼只是增加了對簡碼內容的HTML,你應該抓住短碼的含義:

add_shortcode('sidebar', 'addToSidebar'); 

// Add content to the sidebar. 
function addToSidebar($attributes, $content) { 
    $GLOBALS['mySidebar'] .= do_shortcode($content); 
    return ''; 
} 

渲染頁面元素,使用全局變量:

<?php if (have_posts()) : 
    the_post(); 

    // Get content first to retrieve the sidebar. 
    $content = get_the_content(); 
    $content = apply_filters('the_content', $content); 
    $content = str_replace(']]>', ']]&gt;', $content); ?> 

    <?php if (!empty($GLOBALS['mySidebar'])) :?> 
     <div id="sidebar"> <?php echo $GLOBALS['mySidebar']; ?> </div> 
    <?php endif; ?> 
    <div id="content"> 
    ... render the post. 
<?php endif; ?> 
+0

我在想,一個全球性的會是解決這個問題的唯一方法。我明天將在工作中給予這一點,謝謝! – Matt