설명
유행을 타지 않는 우아하고 세련된 토론 게시판을 찾고 계신가요? bbPress는 통합이 간편하고 사용하기 쉬우며, 성장하는 커뮤니티에 맞춰 확장될 수 있도록 설계되었습니다.
bbPress는 워드프레스 기여자들이 개발한, 의도적으로 단순하면서도 무한한 기능을 갖춘 포럼 소프트웨어입니다.
Developer Notes
Count updates in 2.6.17
bbPress now synchronizes its built-in public and hidden topic and reply counts, aggregate forum counts, and user contribution counts on bbp_transition_post_status at priority 10, after WordPress persists the new post status. When a topic crosses the public status boundary, its stored public reply count is applied to the forum aggregate instead of recounting every reply. The action receives the new status, old status, and WP_Post object. The bbp_pre_update_counts_on_transition_post_status filter can short-circuit the complete topic or reply count operation for custom status lifecycles or count storage.
The existing bbp_new_*, bbp_insert_*, bbp_trash_*, bbp_untrash_*, bbp_spam_*, bbp_unspam_*, bbp_approve_*, and bbp_unapprove_* topic and reply actions continue to fire with their existing arguments and timing. Their corresponding completed actions, such as bbp_trashed_*, also remain available. The public count helper functions also remain callable.
For topic and reply creation, the status transition occurs inside wp_insert_post(). The later bbp_new_* and bbp_insert_* actions therefore continue to run after status counts are updated and after bbPress stores its relationship metadata. Creation-specific integrations can remain on those actions.
For moderation, status-count synchronization occurs between the existing pre-transition action, such as bbp_spam_reply, and its completed action, such as bbp_spammed_reply. Extensions that need every persisted topic, reply, forum, and user status-count change should use bbp_transition_post_status at priority 11 or later. Completed moderation actions begin after those counts are finalized.
bbPress no longer attaches its built-in topic, reply, forum, and user status-count callbacks to the creation and moderation actions. Manually firing one of those actions without changing the post status therefore no longer updates those counts. Topic voice counts and engagements remain attached to the creation and completed moderation actions, so manually firing one of those actions can still recalculate voices and engagements without a status change. The priority-11 transition hook does not observe those later updates. Extensions that need both recalculations to finish can use priority 31 or later on the legacy action; bbPress runs engagement callbacks before voice-count callbacks. Count membership comes from the filtered public and non-public status arrays. Extensions that already maintain counts for custom statuses should remove duplicate count callbacks and keep the public and non-public arrays disjoint. The public increase and decrease convenience functions now validate the current topic or reply status; use the lower-level bump functions for an intentional numeric difference. Do not manually fire bbp_transition_post_status to simulate a write because its count callback trusts the supplied statuses as a completed database transition.
Permanent deletion does not produce a post-status transition. Its count maintenance continues through the existing bbp_deleted_topic and bbp_deleted_reply actions.
Count bump functions now use conditional metadata writes and bounded retries so simultaneous requests do not overwrite each other’s existing count changes. Existing bbPress count filters and the standard WordPress metadata filters and actions continue to run. A before-update metadata action may run more than once when a request loses a comparison and retries; its matching after-update action runs only for the successful write. The update-metadata short-circuit filter runs once for the bump call using its first sanitized candidate value. A user-count filter that changes the absolute result retains the previous absolute-update behavior and opts that call out of the atomic difference path.
WordPress metadata tables do not enforce unique object-and-key pairs, so simultaneous first-time inserts retain the same limitation as the core metadata API. A request can also exhaust the bounded retries under unusually high contention. An atomic bump applies a difference to its supplied stored or default value and is not a recount. The bbp_pre_bump_count_meta filter can short-circuit an update, the bbp_bump_count_meta_max_attempts filter controls the default limit of five write attempts, and the bbp_bump_count_meta_types filter controls the post, user, term, and comment metadata types supported by default. bbp_update_user_topic_count() and bbp_update_user_reply_count() accept an optional third $difference argument for this internal bump lifecycle; existing calls remain compatible.
Post-author changes and user deletion with post reassignment now reconcile affected user contribution, topic engagement, and voice counts. Moderator move, merge, and split operations also reconcile source, destination, and ancestor forum counts. Forum count updater functions accept an optional final argument for propagating a recount’s difference through ancestor totals; existing calls remain compatible. Forum reply recounts include public replies only when their parent topics are also public. A public reply beneath a non-public topic is excluded from the public forum total without being included in the pending, spammed, and trashed reply count. Topic engagement recounts honor filtered public topic and reply statuses, and preserve other term-backed relationships.
Subforum counts in 2.6.17
bbPress now maintains subforum counts when forums are trashed, restored, permanently deleted, or moved between parents. Recursive forum counts include public, private, and hidden subforums while excluding subforums with uncountable statuses. bbp_forum_query_subforum_ids() no longer inherits the broader bbp_get_all_child_ids result; extensions that customized subforum count membership through that lower-level filter should use bbp_forum_query_subforum_ids, bbp_get_countable_forum_statuses, or the forum-status filters. The new bbp_post_updated action receives the post ID, the updated WP_Post object, and the previous WP_Post object after any bbPress post type is updated.
The upgrade does not synchronously recount every forum. Sites with known stale metadata can selectively run the applicable count and engagement tools under Tools > Forums > Repair Forums. These tools can be expensive on large sites.
스크린샷







설치
워드프레스 알림판에서
- ‘플러그인 > 새로 추가’ 방문
- ‘bbPress’ 검색
- 플러그인 페이지에서 bbPress를 활성화하세요. (환영 페이지가 표시됩니다.)
WordPress.org에서
- bbPress를 다운로드하세요.
- ‘bbpress’ 디렉토리를 ‘/wp-content/plugins/’ 디렉토리에 원하는 방법(ftp, sftp, scp 등)을 사용하여 업로드합니다.
- 플러그인 페이지에서 bbPress를 활성화하세요. (환영 페이지가 표시됩니다.)
활성화 된 경우
- ‘포럼 &t; 새로 추가’로 이동하여 포럼을 만듭니다. (나중에 언제든지 삭제할 수 있습니다.)
- 예쁜 퍼머링크를 사용 설정한 경우 example.com/forums/를 방문하고, 예쁜 퍼머링크를 사용 설정하지 않은 경우 example.com?post_type=forum을 방문하세요.
- ‘설정; 포럼’으로 이동하여 커뮤니티의 요구사항에 가장 적합한 설정을 구성하세요.
- 기존 포럼을 bbPress로 변환하려는 경우 ‘도구 > 포럼 > 포럼 가져오기’로 이동하세요.
구성 완료
- bbPress에는 거의 모든 워드프레스 테마와 잘 어울리도록 설계된 강력한 테마 호환성 API가 포함되어 있습니다. 모든 요소가 완벽하게 보이도록 하려면 일부 스타일을 직접 조정해야 할 수도 있습니다.
- 사이트에 더 잘 맞도록 회원가입/활성화/로그인/비밀번호 분실 처리 절차를 사용자 정의할 수 있습니다. bbPress에는 이를 가능하게 해주는 다양한 쇼트코드가 포함되어 있으며, 해당 목록은 다음 링크에서 확인할 수 있습니다: https://codex.bbpress.org/shortcodes/
- bbPress는 매우 인기 있고 강력한 두 가지 워드프레스 플러그인인 Akismet과 BuddyPress에 대한 기본 지원 기능도 제공합니다. 이 중 하나를 사용하고 계신다면, 포럼 설정 페이지로 이동하여 통합 설정이 올바르게 되어 있는지 확인하시기 바랍니다.
후기
기여자 & 개발자
“bbPress”(은)는 오픈 소스 소프트웨어입니다. 다음의 사람들이 이 플러그인에 기여하였습니다.
기여자변경이력
출시 페이지에서 확인하세요.
