bbPress 中文主題 CSS 自定義美化樣式

bbPress 中文主題 CSS 自定義美化樣式

bbPress 是一款簡單易用的 WordPress 論壇程序,默認界面並不是很友好,需要主題兼容不然會非常簡陋,這是薇曉朵製作分享的一款 bbPress 中文主題以替代其默認界面。

如何使用和添加代碼:

1 、首先請確保你已經安裝了 bbPress 論壇,可在 WordPress 網站後台直接搜索:bbPress 進行安裝。


2 、請打開網站前台編輯器的 【自定義】,複製下方美化代碼到自定義 css 中。


3 、美化代碼內容如下:

/* bbPress China theme by Weixiaoduo.com * Theme URL: https://www.weixiaoduo.com/themes/bbpress-china-theme * 如下修改 CSS 和界面样式请在下方调整,bbPress 中文通用美化代码由薇晓朵提供,如需帮助请到支持论坛。 * */  html { -webkit-font-smoothing: antialiased; }  body { font: 14px/25px PingFang SC, Microsoft YaHei, WenQuanYi Micro Hei, Arial, Helvetica, sans-serif; }  #bbpress-forums li.bbp-header { border-top: none } #bbpress-forums li.bbp-header, #bbpress-forums li.bbp-footer { background: #f7f7f7 } .content-area .forum-titles { font-weight: bold; font-weight: 600; color: #777; } .content-area .bbp-forum-title, .content-area .bbp-topic-permalink { color: #222; font-weight: bold; font-weight: 600; font-size: 13px; margin: 0; } #bbpress-forums .bbp-forum-info .bbp-forum-content, #bbpress-forums p.bbp-topic-meta { font-size: 13px } #bbpress-forums li.bbp-header, #bbpress-forums li.bbp-footer, #bbpress-forums li.bbp-body ul.forum, #bbpress-forums li.bbp-body ul.topic, div.bbp-forum-header, div.bbp-topic-header, div.bbp-reply-header, li.bbp-body div.hentry { padding: 15px 15px } #bbpress-forums div.odd, #bbpress-forums ul.odd { background: none } #bbpress-forums .bbp-forum-info .bbp-forum-content, #bbpress-forums p.bbp-topic-meta { margin-bottom: 0; margin-top: 0; } .bbp-reply-author { text-align: left !important } #bbpress-forums fieldset.bbp-form label { margin-bottom: 5px } .bbp-topics-front ul.super-sticky, .bbp-topics ul.super-sticky, .bbp-topics ul.sticky, .bbp-forum-content ul.sticky { background: none !important; font-size: 1em; } #bbpress-forums fieldset.bbp-form p, #bbpress-forums fieldset.bbp-form textarea, #bbpress-forums fieldset.bbp-form select { margin-bottom: 20px } div.bbp-submit-wrapper { float: none; margin-top: 0; } div.bbp-submit-wrapper button { width: 100%; } #bbpress-forums div.bbp-the-content-wrapper div.quicktags-toolbar { border: 1px solid #eee; border-radius: 0; } #bbpress-forums div.bbp-the-content-wrapper textarea.bbp-the-content { background: none; border: 1px solid #eee; border-top: none; color: #555; } div.bbp-forum-header, div.bbp-topic-header, div.bbp-reply-header { border-color: #eee } #bbpress-forums div.bbp-forum-header, #bbpress-forums div.bbp-topic-header, #bbpress-forums div.bbp-reply-header { background: #f5f5f5 } #bbpress-forums li.bbp-header, #bbpress-forums li.bbp-footer { font-weight: bold; font-weight: 600; color: #777; } #bbpress-forums li.bbp-footer { display: none } #bbpress-forums .status-trash.odd { background: none } #bbpress-forums .status-spam, #bbpress-forums .status-spam.odd { opacity: 0.3; background: #f7f7f7; } span.bbp-admin-links a { color: #666 } #bbpress-forums div.bbp-reply-content { padding: 15px } #bbpress-forums div.reply { box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; } #bbpress-forums .bbp-search-author, #bbpress-forums .bbp-search-content { text-align: left } .bbp-search .bbp-meta { display: none } #bbpress-forums div.bbp-forum-title h3, #bbpress-forums div.bbp-topic-title h3, #bbpress-forums div.bbp-reply-title h3 { font-size: 14px; font-weight: bold; font-weight: 600; } .bbpress #subscription-toggle {float: right;} /* hide pagination count */ .bbp-pagination-count { display: none } /* search + breadcrumbs */ #bbp_search, #bbp_search_submit { height: 30px; margin-bottom: 20px; padding-top: 0; padding-bottom: 0; } #bbpress-forums div.bbp-search-form { float: none } #bbp_search { width: 70% !important; float: left; height: 40px; } #bbp_search_submit { float: right; width: 28%; height: 40px; line-height: 40px; padding-top: 0; padding-bottom: 0; } /* hide "freshness */ .forum-archive .bbp-topic-freshness, .forum-archive .bbp-forum-freshness, li.bbp-forum-freshness { display: none } li.bbp-forum-info, li.bbp-topic-title { width: 55% } /* hide social */ body.bbpress .social-share-title, body.bbpress .social-share-buttons { display: none } /* login */ .bbp-login-form, .bbp-logged-in { background: #f7f7f7; border: 1px solid #eee; padding: 20px; } .bbp-login-form label { width: auto; margin-bottom: 5px; color: #000; } .bbp-login-form input[type="text"], .bbp-login-form input[type="password"] { background: #fff; width: 100%; max-width: 100%; border: 1px solid #eee; } .bbp-login-form input[type="text"]:focus, .bbp-login-form input[type="password"]:focus { border-color: #bbb; box-shadow: 0 1px 2px rgba(0,0,0,0.1); } #sidebar .bbp-login-form label[for=rememberme] { width: auto } /* logged in */ .bbp-logged-in h4 { margin: 0 0 10px; font-weight: bold; font-weight: 600; font-size: 14px; } .bbp-logged-in .user-submit { float: right } .bbp-logged-in .user-submit img { display: block; background: #fff; padding: 3px; border: 1px solid #e4e4e4; } .bbp-logged-in .user-submit img:hover { opacity: 0.8; -moz-opacity: 0.8; -webkit-opacity: 0.8; } .bbp-logged-in img.avatar { margin: 0 } .bbp-login-form:after, .bbp-logged-in:after { content: ""; display: block; clear: both; } /* bbpress stats */ .widget_display_stats dt { float: left; width: 80%; background: #f7f7f7; padding: 0 12px; text-align: left; height: 40px; line-height: 40px; margin-bottom: 10px; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; border: 1px solid #eee; border-right: none; } .widget_display_stats dd { float: left; width: 20%; background: #f3f3f3; border: 1px solid #eee; color: #000; text-align: center; padding: 0 12px; height: 40px; line-height: 40px; margin-bottom: 10px; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; } /* bbpress notice */ div.bbp-template-notice, div.indicator-hint { border-width: 2px; border-style: solid; padding: 0 0.6em; margin: 5px 0 15px; border-radius: 0px; background-color: #ffffe0; border-color: #e6db55; color: #000; clear: both; } div.bbp-template-notice p { margin: 0.5em 0 10px 0 !important; padding: 5px; font-size: 13px; line-height: 150%; } div.bbp-template-notice p { margin: 0.5em 0 10px 0 !important; padding: 10px; font-size: 13px; line-height: 150%; } div.bbp-template-notice.info { border: #cee1ef 2px solid; background-color: #f0f8ff; } div.bbp-template-notice.important { border: #e6db55 2px solid; background-color: #fffbcc; } #bbpress-forums p.bbp-topic-meta img.avatar, #bbpress-forums ul.bbp-reply-revision-log img.avatar, #bbpress-forums ul.bbp-topic-revision-log img.avatar, #bbpress-forums div.bbp-template-notice img.avatar, #bbpress-forums .widget_display_topics img.avatar, #bbpress-forums .widget_display_replies img.avatar { float: none; margin-bottom: -7px; border: 3px double #ddd; display: none !important; } div.bbp-submit-wrapper button { width: 100%; font-size: 14px; color: #FFFFFF; font-weight: 700; } #bbpress-forums div.bbp-forum-author img.avatar, #bbpress-forums div.bbp-topic-author img.avatar, #bbpress-forums div.bbp-reply-author img.avatar { border: none; max-width: 80px; padding: 0; margin: 12px auto 0 auto; float: none; padding: 5px; /* height: 80px; */ /* width: 80px; */ border: 1px solid #e7e7e7; /* -webkit-box-shadow: 0 0 7px rgba(0,0,0,.1); */ -moz-box-shadow: 0 0 7px rgba(0,0,0,.1); /* box-shadow: 0 0 7px rgba(0,0,0,.1); */ background: #fff; }

4 、調整為適合你主題的顏色及樣式,

這就看具體情況了,因為是通用代碼,我們儘量沒有加入太多個性化的東西,如果你想要改顏色和樣式的話就需要改上面的 css 來和你自己的主題匹配,


比如我們做的幾款中文主題集成的樣式:

 

升級論壇

升級論壇

隨着 bbPress 的改進,偶爾需要升級數據庫,但有些論壇太大而無法自動升級。使用以下工具手動運行升級例程。

「升級論壇」 工具位於:
WordPress 儀表盤 > 工具 > 論壇 > 升級論壇
(/wp-admin/tools.php?page=bbp-upgrade)

這些工具會產生大量的數據庫開銷,因此一次只能運行 1 個修復作業。

  • 升級用户話題參與度
  • 升級用户話題收藏夾
  • 升級用户話題訂閲
  • 升級用户論壇訂閲
  • 從用户元中刪除收藏夾
  • 從用户元中刪除話題訂閲
  • 從用户元中刪除論壇訂閲
  • 升級 BuddyPress Group 論壇關係

Akismet 反垃圾帖

Akismet 反垃圾帖

bbPress 與 Akismet 完全集成。 Akismet 是一個非常有效的插件和服務,可以捕獲各種類型的垃圾郵件和絕大多數垃圾郵件。如果您還有一個現有的博客,並且允許用户對您的 WordPress 網站上的博客文章發表評論,則此服務特別有用,因為 Akismet 也會接受這一點。

Akismet 為您的 bbPress 論壇所做的是在將任何新話題或回覆發佈到您的論壇之前對其進行掃描,以確定 bbPress 帖子是否為垃圾郵件,其掃描服務運行數百次測試。如果該服務捕獲到垃圾郵件話題,您將在 WordPress 後端垃圾郵件下的話題部分看到它,並且回覆的過程相同。

這將使節制變得更加容易,這樣您就不必像沒有垃圾郵件一樣處理垃圾郵件。不再有垃圾郵件發送者擾亂您的社區,也不再有自己將帖子標記為垃圾郵件後的帖子。

通常 Akismet 預裝了任何 WordPress 安裝,因此您應該已經安裝了它,但是如果您是不幸的人之一,請轉到插件 > 添加新,然後您應該將 Akismet 視為特色插件之一,然後從那裏安裝。

Akismet 確實需要一個 API 密鑰,您可以通過在其網站上註冊來獲取該密鑰。

Akismet 可免費供個人使用,但不能像您在網站上銷售產品那樣用於商業用途。 如果您需要將該服務用於商業用途,Akismet 為該服務提供了多種計劃。

常見任務

常見任務

移動論壇

可以從不同的父論壇或類別移動論壇。為達到這個;

  1. 登錄到 WordPress 後端並轉到論壇 > 所有論壇
  2. 編輯您要移動的特定論壇
  3. 現在更改所選論壇的父論壇屬性

您還可以選擇選擇  — 無父級 —,這樣論壇將不再有父級論壇或類別。

關閉論壇

關閉論壇可以關閉任何子論壇,也可以限制新話題的創建和對已關閉論壇中現有話題的新回覆。

  1. 登錄到 WordPress 後端並轉到論壇 > 所有論壇
  2. 編輯您要關閉的特定論壇
  3. 現在將所選論壇的狀態論壇屬性更改為已關閉

刪除論壇

  1. 登錄到 WordPress 後端並轉到論壇 > 所有論壇
  2. 您將看到一個論壇列表,每個論壇都有一組鏈接,其中一個是紅色垃圾鏈接。
  3. 單擊要移至垃圾箱的特定論壇的垃圾箱鏈接,然後刪除。
  4. 現在單擊頂部的垃圾操作鏈接以過濾並僅查看已刪除的帖子,然後從那裏刪除或恢復您的論壇。
  5. 要刪除垃圾箱中的所有論壇,請單擊清空垃圾箱按鈕。

編輯話題

在前端

  1. 登錄您的網站 前往您網站上的論壇
  2. 要編輯話題,請進入話題並點擊話題帖子上的編輯管理鏈接。
  3. 從那裏您可以執行下面列出的大部分內容,添加或刪除話題的標籤,以及編輯話題的帖子。

在 WordPress 後端

  1. 登錄 WordPress 後端並轉到話題 > 所有話題
  2. 點擊您要編輯的話題的編輯鏈接。

結束話題

關閉或鎖定話題不允許參與者進一步回覆。鍵盤管理員和版主仍然可以回覆。

在前端

  1. 登錄您的網站 前往您網站上的論壇
  2. 要關閉話題,請進入話題並點擊話題帖子上的關閉管理鏈接。您還可以通過單擊 「編輯管理」 鏈接並將 「話題狀態」 更改為 「已關閉」 來編輯話題。

在 WordPress 後端

  1. 登錄 WordPress 後端並轉到話題 > 所有話題
  2. 您將看到一個話題列表,每個話題都有一組鏈接,其中一個是關閉鏈接。
  3. 單擊要禁止任何進一步回覆的任何話題的關閉鏈接。

置頂話題

在前端

  1. 登錄您的網站並訪問您網站上的論壇
  2. 如果您需要將某個話題粘貼到某個論壇或所有論壇的頂部,請進入該話題並點擊 Stick Admin Link 將該話題粘貼到論壇頂部,或者點擊 (To Front)Admin Link to Super Sticky 或者把一個話題放到所有論壇的頂部。您也可以通過單擊編輯管理鏈接來編輯話題 並將話題狀態更改為粘性或超級粘性。

在 WordPress 後端

  1. 登錄 WordPress 後端並轉到話題 > 所有話題
  2. 您將看到一個話題列表,每個話題都有一組鏈接,一個是 Stick 鏈接,另一個是 (To Front) 鏈接。
  3. 單擊 您要設為 Sticky 的話題的 Stick 鏈接。要使話題超級粘,或粘在所有論壇的頂部,請單擊 (到前面) 鏈接。

合併話題

  1. 登錄您的網站並訪問您網站上的論壇
  2. 如果您需要合併一個話題,請進入該話題並點擊 Merge Admin Link 。
  3. 您將看到一個頁面,其中包含配置您希望如何將話題合併在一起的選項。從同一論壇的話題列表中選擇要合併的話題,並配置附加功能,例如保留原始話題的訂閲、收藏夾、話題標籤。
  4. 根據您的喜好進行配置後,單擊提交按鈕。

要將一個話題從另一個論壇合併到另一個話題,您可能需要先將該話題移動到另一個論壇,然後再從那裏合併。

刪除話題

在前端

  1. 登錄您的網站並訪問您網站上的論壇
  2. 如果您需要刪除某個話題,請進入該話題並點擊垃圾管理鏈接 將該話題放入垃圾箱。
  3. 現在您將看到垃圾箱鏈接已轉到刪除管理鏈接,您可以從那裏單擊 刪除以永久刪除該話題。

在 WordPress 後端

  1. 登錄 WordPress 後台並轉到話題 > 所有話題
  2. 您將看到一個話題列表,每個話題都有一組鏈接,其中一個是紅色垃圾鏈接。
  3. 單擊要刪除的話題的垃圾箱鏈接。現在您的話題在垃圾桶裏。
  4. 現在,您可以單擊頂部的垃圾操作鏈接進行過濾並僅查看已刪除的帖子,然後 從那裏刪除或恢復您的話題。
  5. 要刪除放置在垃圾箱中的所有話題,請單擊清空垃圾箱按鈕。

將話題標記為垃圾郵件

在前端

  1. 登錄您的網站並訪問您網站上的論壇
  2. 如果您需要將某個話題標記為垃圾郵件,請進入該話題並點擊垃圾郵件管理鏈接 將該話題放入垃圾郵件隊列。

在 WordPress 後端

  1. 登錄 WordPress 後端並轉到話題 > 所有話題
  2. 您將看到一個話題列表,每個話題都有一組鏈接,其中一個是紅色垃圾郵件 鏈接。
  3. 單擊 要標記為垃圾郵件的話題的垃圾郵件鏈接。現在該話題在垃圾郵件隊列中。
  4. 單擊 頂部的垃圾郵件操作鏈接以過濾並僅查看標記為垃圾郵件的話題,然後單擊 「清空垃圾郵件」 按鈕取消垃圾郵件合法帖子或刪除放置在垃圾郵件隊列中的所有話題。

移動話題

在前端

  1. 登錄您的網站並訪問您網站上的論壇
  2. 如果您需要移動話題,請編輯該話題,並更改該話題所在的論壇。

在 WordPress 後端

  1. 登錄 WordPress 後端並轉到話題 > 所有話題
  2. 編輯要移動的特定話題
  3. 在所選話題的話題屬性中更改論壇

拆分話題

  1. 登錄您的網站並訪問您網站上的論壇
  2. 如果您需要拆分話題,請進入該話題並在您想要拆分的回覆中點擊拆分管理鏈接。
  3. 您將看到一個頁面,其中包含用於配置如何拆分話題的選項。
  4. 您可以將回復拆分為另一個現有話題,或者從您拆分的回覆中創建一個新話題。您可以配置附加功能,例如保留原始話題的訂閲、收藏夾、話題標籤。
  5. 根據您的喜好進行配置後,單擊提交按鈕。

編輯回覆

在前端

  1. 登錄您的網站 前往您網站上的論壇
  2. 要編輯回覆,請點擊 它附近的編輯管理鏈接。
  3. 從那裏您可以執行下面列出的大部分內容,並編輯回覆帖子。

在 WordPress 後端

  1. 登錄 WordPress 後端並轉到回覆 > 所有回覆
  2. 通過您要編輯的回覆點擊編輯鏈接。

移動回覆

  1. 登錄 WordPress 後端並轉到回覆 > 所有回覆
  2. 通過您要編輯的回覆點擊編輯鏈接。
  3. 您現在將看到 Reply Attributes 的元框。要更改話題,回覆是通過話題更改編號 :您要將其移動到的話題的 ID 。像 Reveal IDs 這樣的插件可以幫助您輕鬆地在 Topics > All Topics 中找到話題的 ID 。
  4. 確保您要移動回覆的話題位於 「論壇:回覆屬性」 中列出的正確論壇中。

您還可以通過將您想要回複線程的回覆的 ID 放在回覆屬性中的回覆: 中,將回復移動到特定回覆下的線程。

刪除回覆

在前端

  1. 登錄您的網站並訪問您網站上的論壇
  2. 如果您需要刪除回覆,請轉到回覆並點擊垃圾管理鏈接 將回復放入垃圾箱。
  3. 現在您將看到垃圾箱鏈接已轉到刪除管理鏈接,您可以從那裏單擊 刪除以永久刪除回覆。

在 WordPress 後端

  1. 登錄 WordPress 後台並轉到回覆 > 所有回覆
  2. 您將看到一個回覆​​列表,每個回覆都有一組鏈接,其中一個是紅色垃圾鏈接。
  3. 單擊要刪除的回覆的垃圾箱鏈接。現在您的回覆已在垃圾箱中。
  4. 現在,您可以單擊頂部的 「垃圾桶」 操作鏈接以進行過濾並僅查看已刪除的帖子,然後 從那裏刪除或恢復話題。
  5. 要刪除放置在垃圾箱中的所有回覆,請單擊清空垃圾箱按鈕。

將回復標記為垃圾郵件

在前端

  1. 登錄您的網站並訪問您網站上的論壇
  2. 如果您需要將回復標記為垃圾郵件,請轉到回覆並點擊垃圾郵件管理鏈接 將回復放入垃圾郵件隊列。

在 WordPress 後端

  1. 登錄 WordPress 後端並轉到回覆 > 所有回覆
  2. 您將看到一個回覆​​列表,每個回覆都有一組鏈接,其中一個是紅色垃圾郵件 鏈接。單擊 要標記為垃圾郵件的回覆的垃圾郵件鏈接。現在回覆在垃圾郵件隊列中。
  3. 單擊 頂部的垃圾郵件操作鏈接以過濾並僅查看標記為垃圾郵件的回覆,然後單擊 「清空垃圾郵件」 按鈕取消垃圾郵件合法帖子或刪除放置在垃圾郵件隊列中的所有回覆。

WordPress 版本兼容性

WordPress 版本兼容性

bbPress 在最新可用版本的 WordPress 上運行時效果最佳——我們針對最新和最好的版本進行了優化。出於這個原因,bbPress 團隊強烈建議所有 WordPress 安裝保持最新。但是,我們努力保持對許多舊版 WordPress 版本的支持——通常是四個或五個主要版本。

在每個開發週期開始時,我們都會重新評估 bbPress 所需的最低 WP 版本。我們的粗略指導方針如下:

  • 如果 WordPress 版本在一年多以前就過時了,那麼它就是一個被刪除的候選者。有關 WP 發佈日期的列表,請參閲 https://wordpress.org/news/category/releases/
  • 如果 WordPress 版本的使用率低於所有 WP 安裝的 5%,則它是一個強有力的刪除候選者。有關 WordPress 版本使用情況的信息,請參閲 https://wordpress.org/about/stats/

當我們説 bbPress 「支持」 給定版本的 WordPress 時,我們是什麼意思?大致:

  • bbPress 應該在 WP 版本上無錯誤地運行 (即,沒有致命錯誤或 PHP 通知) 。
  • 如果新版本的 bbPress 包含需要最新版本 WordPress 的功能,則應在較早的 WP 版本上正常禁用該功能。
  • WP 版本將包含在我們的自動化測試版本中

通過擴展:當我們 「放棄支持」 某個版本的 WordPress 時,這意味着我們停止將其包含在我們的構建中,停止回答與該特定 WP 版本相關的支持問題,並停止 function_exists() 在構建時針對該版本進行檢查 (等) 新的 bbPress 功能。放棄支持並不意味着我們會積極嘗試破解舊版本的 WP ????

搜索重定向到首頁

搜索重定向到首頁

此問題包括從論壇索引頁面上方的搜索表單、話題索引頁面或 bbPress 論壇搜索小工具在 bbPress 論壇搜索中進行的任何搜索,以某種方式重定向到您網站的首頁。

原因

這可能是用户 在 「單一論壇 Slug」 部分的 「設置」>「論壇」 中編輯論壇搜索 slug 引起的用户問題。一些用户將論壇搜索變成了一些包含兩個單詞之間的空格的東西,比如 「論壇搜索」 。最後,在使用這個 slug 時會輸出一個%20 之類的 url  來代替空格,並且幾乎肯定會每次都重定向到主頁。

在某些情況下,在 「設置」>「論壇」 中禁用論壇 root slug 可能會出現相同的問題。

解決方案

將 「設置」>「論壇」 中的論壇搜索自定義 slug 編輯為不帶空格的內容,只需將空格替換為例如破折號,例如 (forum-search) 。

如果您在論壇中禁用了論壇 root slug,請使其不再出現問題,或者將論壇搜索 slug 更改為默認 slug「搜索」 以外的其他內容。

如果問題仍然存在,請確保您已完成此處所述的插件和話題問題解決方案: 故障排除

收藏夾和訂閲

收藏夾和訂閲

bbPress 2.6 改變了收藏夾和訂閲在數據庫中的存儲方式。此頁面解釋了原因,以及如果升級沒有自動為您觸發,您可能需要採取哪些步驟。

如果升級在完成之前失敗,那沒關係。您可以隨時安全地重新運行升級,Tools > Forums 而不會破壞或複製數據。

警告

對於用户少於 10,000 的小型論壇,bbPress 將嘗試自動遷移您的收藏夾和訂閲。如果您的論壇有超過 10,000 名用户,bbPress 知道它可能需要比可用資源更多的資源,並且會跳過升級。

解釋

bbPress 2.6 之前的所有版本都存儲了收藏夾和訂閲,wp_usermeta 每個站點上的每個用户都有 1 個值。在具有許多用户的多站點安裝中,這會導致低效的數據庫查詢和許多從未以全局方式使用的全局可用行。

bbPress 2.6 採用將每個個人收藏和訂閲存儲在 wp_postmeta 數據庫表中的方法。這允許進行一些不同的改進

  • 兩種方式都可以更輕鬆地查詢 - 每個用户和站點的訂閲數,以及每個話題的訂閲數
  • 更少的行 wp_usermeta 導致 WordPress 和 bbPress 中的單方面性能改進
  • 收集用户電子郵件地址以發送訂閲現在是一個非常簡單且快速的數據庫查詢

手動升級

如果您是少數幸運的人之一,因為您擁有 10,000 多個用户,因此需要手動升級您的論壇,那麼您需要查看 3 個 bbPress 功能 bbpress/includes/admin/tools.php:

  • bbp_admin_upgrade_user_forum_subscriptions()
  • bbp_admin_upgrade_user_topic_subscriptions()
  • bbp_admin_upgrade_user_favorites()

這 3 個函數執行以下操作:

  • 查詢 wp_usermeta 通過 meta_key 為所有用户誰已經收藏或訂閲
  • 循環遍歷每一行,並將其拆分為帖子 ID
  • 循環遍歷每個帖子 ID,並將用户 ID 添加到它的元數據中,並使用適當的 meta_key
  • 如果添加的項數與原來匹配,usermeta 則刪除 2.6 之前的

您可能想要執行以下操作:

  • 增加可用於 PHP 和 Web 服務器軟件 (Apache 、 Nginx 等) 的內存量
  • 增加運行這些腳本的服務器的物理內存
  • 增加超時長度以允許這些腳本按原樣運行幾分鐘
  • 修改原始查詢以限制用户 ID 結果循環。 (通常一次 1000 個用户是一個不錯的數字。)
  • 註釋掉 對測試的調用 add_post_meta() 和 delete_metadata_by_mid() 試運行

對於添加的上下文,這些是 bbPress 團隊用來升級 BuddyPress.org 、 bbPress.org 、 WordCamp.org 和 WordPress.org 的相同腳本和技術。它們工作正常,而且工作得很好,但我們理解移動數據是可怕的,並希望您對幕後發生的事情做好準備並感到舒適。

bbp_setup_current_user

bbp_setup_current_user

該 bbp_setup_current_user() 函數與 WordPress 的 set_current_user 操作相關聯。在內部,它只調用 bbp_setup_current_user 動作,bbPress 使用該動作向希望掛鈎 bbPress 用户功能的第三方插件宣佈自己。

這有點黑客技巧,因為插件依賴項在 WordPress 中不存在,但它仍然是定位 bbPress 並專門為其創建插件的絕佳方式。

存儲的數據庫數據

存儲的數據庫數據

用户

所有用户和用户數據都存儲在這些表中。

  • wp_users
  • wp_usermeta

內容

bbPress 在這些表中安裝和存儲所有論壇、話題和回覆文章類型及其數據。

  • wp_posts
  • wp_postmeta

bbPress 設置以_bbp_此處為前綴並存儲在此處。

  • wp_options

標籤

bbPress 安裝話題標籤,它們的數據都存儲在這些表中。

  • wp_terms
  • wp_term_relationships
  • wp_term_taxononmy

修訂

修訂

修訂日誌使用 WordPress 內部現有的修訂系統來存儲任何帖子編輯的記錄,並在任何 bbPress 主題或已編輯的回覆的前端顯示此信息。

要啓用在編輯後顯示話題或回覆的修訂日誌的功能:

  1. 轉到 WordPress 後端中的設置 > 論壇
  2. 然後在論壇功能部分確保啓用 「允許話題和回覆修訂日誌記錄」

每當您通過單擊帖子上的編輯管理鏈接來編輯話題或回覆時,您將看到類似於下圖顯示的內容。

 

修訂記錄編輯回覆

默認情況下會啓用一個複選框,表示 「保留此編輯的日誌」,如果您不希望在帖子的前端顯示修訂日誌,用户可以取消選中該複選框。

還有一個輸入框,用户還可以選擇在其中輸入編輯原因。這有助於論壇中的其他用户瞭解您編輯特定帖子的原因,無論是拼寫錯誤還是版主留下用户帖子被編輯的原因。

在編輯話題或回覆並允許修訂日誌顯示在前端後,保留此編輯的日誌複選框保持不變,修訂日誌看起來與此類似。

修訂記錄顯示

修訂日誌會顯示帖子是話題還是回覆、帖子被編輯的時間、上次編輯帖子的用户,以及如果用户包含編輯帖子的原因,它也會顯示。

如果最後一個編輯回覆或話題的用户是能夠編輯其他用户帖子的用户,默認情況下是 Keymaster 或版主,那麼它將在修訂日誌中顯示該用户的頭像和個人資料鏈接。