2012-07-25 122 views
0

我正在嘗試擁有一個wordpress頁面的圖庫。WordPress的頁面庫

代碼應該獲得某個頁面的所有子頁面,並返回結果與頁面的縮略圖和它的名稱。縮略圖需要是可點擊的鏈接。

我已經得到了這一點,而且我堅持:

<?php $pages = get_pages(array('child_of' => 8)); ?> 

     <?php foreach ($pages as $page): ?> 
      <h1><?php echo $page['post_title'] ?></h1> 
      <a href="<?php echo $page['guid'] ?>"><img src="" /></a> 
     <?php endforeach; ?> 
+0

你有什麼問題?我們需要細節以幫助! – dykeag 2012-07-25 23:10:51

+0

那麼,在目前,上面的代碼似乎不工作,我是PHP的新手。 I.E.我被卡住了。 – Arky 2012-07-26 00:22:47

+0

好的,但不起作用?發生什麼事?什麼沒有發生?你有錯誤嗎?你有沒有輸出? – dykeag 2012-07-26 00:31:29

回答

2

歡迎堆棧溢出。第一件事情是:如果你有任何未來的問題想要提出,那麼說「這行不通」並沒有告訴我們任何事情。如果您的汽車出現問題,您是否會步行到維修店並說「我的車不行,告訴我發生了什麼問題」?

請記住這一點。

要回答您的問題,get_pages或get_posts(或任何標準WP查詢對象)返回的項目不是關聯數組。他們是對象。訪問他們像這樣:

<?php 
$pages = get_pages(array('child_of' => 8)); 
foreach($pages as $page): 
?> 
    <h1><?php echo $page->post_title; ?></h1> 
    <a href="<?php echo $page->guid; ?>"><img src="" /></a> 
<?php 
endforeach; 
?> 

UPDATE:你在做什麼不是每說不好,但它是相當馬虎。這也不是你的錯,因爲它發生在每個人都是WordPress的新手。

你所做的是你基本上創建了一個沒有內容的「空白」頁面,並且你的意圖是將它用作頁面存檔模板的一種Shell(每頁都是繪畫的子項)頁)。事實上,你甚至不需要這樣做。

通過主菜單中的類來判斷,您正在使用菜單對象(位於外觀 - >菜單中)在頁面頂部創建菜單欄。這非常好,並且是生成菜單的最佳方式。對於以「Wordpress友好」方式生成繪畫檔案,您應該創建一個類別(Posts-> Categories),將其命名爲「繪畫」,然後單擊Add New Category按鈕。

然後,將所有已創建的繪畫頁面移至新帖子,然後爲您創建的每個帖子選擇「繪畫」選項。

一旦完成,您可以在菜單對象中爲繪畫類別(現在可在您的類別選擇器的左側可用)中將空的繪畫頁面切換出來。這將創建一個鏈接,告訴Wordpress和您的主題只查詢「繪畫」類型的帖子,並將結果聚合到一個頁面上,這正是您想要的。

關於這一點的好處在於,如果您想將每幅繪畫進一步分類爲不同的子類別,您也可以這樣做。例如,您可以創建一個名爲「水彩畫」的新類別作爲「繪畫」的子項,並將所有水彩帖子標記爲該類別。

你自己的主題似乎並不壞。在嘗試從頭開始分解或創建自己的代碼之前,最好先習慣Wordpress流程和組織。

讓我知道這是否有幫助。

+0

啊,我的道歉。就像我之前說的。新的堆棧溢出。那麼,這是我目前正在做的。也許我這樣做不對: 網站:http://www.jonathandavidlange.com/ 本頁面:http://www.jonathandavidlange.com/paintings/ 有一個主題內的PHP模板歸檔頁面:那麼,我使用它作爲基礎,並創建一個名爲「頁面頁面」的自定義頁面模板,因爲似乎沒有插件可以讓我創建一個頁面庫。 我有的代碼似乎不起作用。正如我正在通過PHP教授我的方式,我沒有其他任何地方可以去。 謝謝, – Arky 2012-07-26 01:19:55

+0

@Arky請檢閱我的更新。我建議在嘗試構建現有主題之前重新組織結構。希望這可以幫助。 – maiorano84 2012-07-26 01:48:48

+0

其實,這很有道理。它似乎工作(測試它與一個頁面)現在我只需要編輯顯示的數據。這是一個節選,我不想那樣。 – Arky 2012-07-26 04:49:35