怎麼優化 query_posts 取得 wordpress文章時,減少資料庫查詢次數?
怎麼優化下面的wordpress 程式碼,目前它是分別查詢,導致資料庫查詢次數過多,其實就是想實現 一次取得資料後,循環輸出 分類名稱,分類下的文章篇數。
<code><?php $loop_cate_id=array(1,3,8); //指定要输出的分类id $num=10;//指定每次循环输出的文章篇数 ?> <?php foreach($loop_cate_id as $key=>$value){ ?> <?php $posts = query_posts($query_string . "&cat={$value}&orderby=date&showposts={$num}" ); ?> <h2><a href="<?php echo get_category_link($value); ?>"><?php single_cat_title(); ?></a></h2> <ul> <?php while(have_posts()) : the_post(); ?> <li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a> </li> <?php endwhile; ?> </ul> <?php }?> </div> </code>
回覆內容:
怎麼優化下面的wordpress 程式碼,目前它是分別查詢,導致資料庫查詢次數過多,其實就是想實現 一次取得資料後,循環輸出 分類名稱,分類下的文章篇數。
<code><?php $loop_cate_id=array(1,3,8); //指定要输出的分类id $num=10;//指定每次循环输出的文章篇数 ?> <?php foreach($loop_cate_id as $key=>$value){ ?> <?php $posts = query_posts($query_string . "&cat={$value}&orderby=date&showposts={$num}" ); ?> <h2><a href="<?php echo get_category_link($value); ?>"><?php single_cat_title(); ?></a></h2> <ul> <?php while(have_posts()) : the_post(); ?> <li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a> </li> <?php endwhile; ?> </ul> <?php }?> </div> </code>
開啟快取不就解決了?
1.現在問題就在分類太多,每次分類要查詢一次,那是否可以先查找該頁分類的所有數據,因為是查詢所有而且你有排序跟文章數要求,這裡可以與group by合用獲取要求數據。 (這樣首頁分類資料這塊應該是只有一次查詢)
2.然後在根據程式碼邏輯為其組成一個數組,數組可以參考我下面給你的格式。
<code>$postList[cate_id]['title']; $postList[cate_id]['article'][];//将文章按分类id当成键值存入数组 foreach($postList as $post) { foreach($post['article'] as $value){ } } </code>
自己頂下吧,期待有熟悉wp的朋友看看。
對wp不熟 也沒怎麼看你的程式碼。你可以用鍵值對 那樣就只用寫一個循環了。
先查所有分類組成鍵值對數組。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

有四種方法可以調整 WordPress 文章列表:使用主題選項、使用插件(如 Post Types Order、WP Post List、Boxy Stuff)、使用代碼(在 functions.php 文件中添加設置)或直接修改 WordPress 數據庫。

要使用 WordPress 主機建站,需要:選擇一個可靠的主機提供商。購買一個域名。設置 WordPress 主機帳戶。選擇一個主題。添加頁面和文章。安裝插件。自定義您的網站。發布您的網站。

更換 WordPress 主題頭部圖片的分步指南:登錄 WordPress 儀錶盤,導航至“外觀”>“主題”。選擇要編輯的主題,然後單擊“自定義”。打開“主題選項”面板並尋找“網站標頭”或“頭部圖片”選項。單擊“選擇圖像”按鈕並上傳新的頭部圖片。裁剪圖像並單擊“保存並裁剪”。單擊“保存並發布”按鈕以更新更改。

IIS和PHP可以兼容,通過FastCGI實現。 1.IIS通過配置文件將.php文件請求轉發給FastCGI模塊。 2.FastCGI模塊啟動PHP進程處理請求,提高性能和穩定性。 3.實際應用中需注意配置細節、錯誤調試和性能優化。

可以通過以下方法查看 WordPress 前端:登錄儀錶盤並切換到“查看站點”選項卡;使用無頭瀏覽器自動化查看過程;安裝 WordPress 插件在儀錶盤內預覽前端;通過本地 URL 查看前端(如果 WordPress 在本地設置)。

導入 WordPress 源碼需要以下步驟:創建子主題以進行主題修改。導入源碼,覆蓋子主題中的文件。激活子主題,使其生效。測試更改,確保一切正常。

多次調用session_start()會導致警告信息和可能的數據覆蓋。 1)PHP會發出警告,提示session已啟動。 2)可能導致session數據意外覆蓋。 3)使用session_status()檢查session狀態,避免重複調用。

WordPress 編輯日期可以通過三種方法取消:1. 安裝 Enable Post Date Disable 插件;2. 在 functions.php 文件中添加代碼;3. 手動編輯 wp_posts 表中的 post_modified 列。
