2016-05-03 72 views
0

我們有一個Wordpress網站,其中有10個子網站(博客)。我們在主站點上顯示這些子站點的最新帖子。最近,我們添加並使用Advanced Custom Field,它現在在主站點和所有這10個子站點上都是活動的,在每個站點中,我們只是坐在一個真/假字段中,其名稱是:is_announce。 在每個站點(主站點或子站點),我們可以通過get_field訪問該字段,它的效果很好。 問題是,主要的網站上,我們沒有獲得亞sites.It的這些領域似乎get_field良好的工作只是爲每個站點的範圍(主或子網站)獲得ACF在wordpress中子網站的字段值

我們怎樣才能解決這個問題?

此外:正如我告訴你,我們顯示每個子網站的最新帖子。每一個都有一個自定義字段(is_announce)。我們要閱讀它的價值,如果它是True,請在每篇文章的頂部顯示一些內容,如標籤。

+1

您可能需要使用'開關blog'功能 – RST

+0

非常感謝你的幫助。這真的很有用:)我會發布我的代碼。 –

回答

0

基於RST的評論,我可以解決我的問題:

   <?php 

         $slug = $post->blogname; 
         $blog_id = get_id_from_blogname($slug); 

         switch_to_blog($blog_id); 

         if(get_field('is_announce')) 
         { 
          echo "<div class='announce-container'>ANNOUNCE</div>"; 
         } 

         restore_current_blog(); 

       ?> 
+0

感謝您分享您的代碼示例。很高興你有它的工作。 – RST

+0

@RST我把這段代碼放到了一個foreach循環中。它適用於第一張唱片,但其他唱片不適用。你認爲這是因爲restore_current_blog還是其他? –

+0

可能過早恢復當前的博客? – RST

相關問題