XenForo là gói phần mềm diễn đàn Internet thương mại được viết bằng ngôn ngữ lập trình PHP. Phần mềm được phát triển bởi các nhà phát triển chính trước đây của Kier Darby và Mike Sullivan. Phiên bản beta công khai đầu tiên của XenForo được phát hành vào tháng 10 năm 2010, phiên bản ổn định vào ngày 8 tháng 3 năm 2011
XenForo mang đến một triển vọng mới cho phần mềm diễn đàn với khả năng bảo mật cao, trực quan kết nối mạng xã hội nhanh chóng. Phiên bản Xenforo 2 phát hành với khả năng tùy biến nhanh chóng, dễ lập trình và tùy biến phù hợp nhiều thể loại website.
THIẾT KẾ XENFORO
XenForo 2.2.7 vô tình được phát hành với yêu cầu tối thiểu ngầm định là PHP 7.1 do cách mà các phiên bản mới hơn của trình soạn thảo cố gắng xác thực nền tảng của bạn có tương thích với các yêu cầu đi kèm hay không.
Nếu bạn hiện đang chạy PHP 7.0, có thể bạn đã không thể nâng cấp lên hoặc chạy XenForo 2.2.7. Patch 1 loại bỏ kiểm tra nền tảng này.
Ngoài ra, nếu bạn hiện đang chạy PHP 7.0, chúng tôi thực sự khuyên bạn nên xem xét nâng cấp lên phiên bản mới hơn càng sớm càng tốt. XenForo 2.3 sẽ được phát hành với yêu cầu tối thiểu là PHP 7.2.5. Chúng tôi hiện khuyên bạn nên nâng cấp lên PHP 8.0 nếu có thể.
Xenforo 2.2.7
Ngoài các bản sửa lỗi và cải tiến thông thường, có một sự thay đổi lược đồ cơ sở dữ liệu có thể mất nhiều thời gian để thực hiện. Nếu bạn có bảng xf_attachment và xf_attachmet_data đặc biệt lớn (vài triệu bản ghi) thì chúng tôi khuyên bạn nên thực hiện nâng cấp CLI.
XenForo 2.2.7 cũng là phiên bản đầu tiên hỗ trợ dọn dẹp các tập tin thuộc các add-on đã gỡ cài đặt. Bạn có thể đọc thêm về điều đó.
Các mẫu công khai sau đây đã có những thay đổi:
Khi cần thiết, nên sử dụng hệ thống hợp nhất trong trang "outdated templates" để tích hợp những thay đổi này.
- _help_page_bb_codes
- bb_code_tag_quote
- conversation_add
- conversation_invite
- core_blockmessage.less
- core_datalist.less
- core_input.less
- core_overlay.less
- editor_base.less
- forum_post_thread
- member.less
- member_tooltip
- member_tooltip.less
- member_view
- select2.less
- setup.less
- thread_list_macros
XenForo 2.2.6 hỗ trợ nhúng YouTube chứa ID danh sách phát cho phép xem video nhúng trong ngữ cảnh của danh sách phát mà nó là một phần. Mặc dù điều này hoạt động tốt, nhưng YouTube dường như đã thực hiện một thay đổi vào ngày 23/7 để ngăn tất cả các video nhúng trên YouTube hiển thị vì nhiều người trong số họ sẽ có tham số danh sách trống trong URL nhúng.
Điều này chỉ ảnh hưởng đến những khách hàng đã nâng cấp lên XenForo 2.2.6 hoặc XenForo 2.2.6 Patch 1. XenForo 2.2.6 Patch 2 giải quyết vấn đề này.
Các mẫu công khai sau đây đã có những thay đổi trên Xenforo 2.2.6:
- account_upgrades
- alert_thread_reply_ban
- tệp đính kèm. không có
- bb_code.less
- core_datalist.less
- core_setup.less
- delete_confirm
- fa.css
- font_awesome_setup
- forum_overview_wrapper
- forum_post_thread_chooser
- forum_view
- helper_attach_upload
- helper_js_global
- message.less
- message_macros
- multi_quote_macros
- Payment_cancel_recurring_paypal
- Payment_initiate_stripe
- post_macros
- profile_post_macros
- push_thread_reply_ban
- reaction_item_profile_post
- reaction_item_profile_post_comment
- reaction_list_row
- search_forum_view
- setup_fa.less
- xem chủ đề
- whats_new_posts
XenForo 2.2.5 is now available for all licensed customers to download. We strongly recommend that all customers running previous versions of XenForo 2.2 upgrade to this release to benefit from increased stability.
This release changes the default CAPTCHA method from reCAPTCHA to hCaptcha. If you were using the default CAPTCHA settings, you will automatically be switched over to hCaptcha. If you provided your own reCAPTCHA keys or chose a different CAPTCHA method, your existing CAPTCHA settings will be retained. If you are unable to upgrade to this release, you may need to change CAPTCHA settings to avoid disruption.
Some of the changes in XF 2.2.5 include:
The following public templates have had changes:
- Bail out of Less color parsing if we already have a valid-CSS color.
- Adjust Request::isHostLocal to only return true for loopback addresses (and add a further explanation about its intended usage).
- Ensure that HTML is not shown in node bookmark descriptions.
- Improve checks that control whether a user's "about" section is shown.
- Do not require a custom statement descriptor when setting up Stripe, unless we can't derive a valid descriptor automatically.
- Ensure that clicking "open link" in the RTE always opens the link in a new tab.
- If a custom privacy policy or terms URL is selected but not provided, ensure that they are never shown as accessible help pages.
- In the RTE, maintain single leading spaces on new lines (particularly for code blocks).
- Fix faded out text display in article previews in RTL languages.
- Ensure that all pending rebuilds are triggered before asking about statistic collection when upgrading via the CLI.
- Allow embedded attachments with a height resize only to maintain the correct aspect ratio.
- Prevent a JS error related to app badge updates if the input value isn't the expected type.
- Ensure that user ignore caches are rebuilt correctly when merging users.
- Change the thread type selector to reduce the amount of wasted space on mobile and flip to a horizontally scrollable system when needed.
- Support additional phrase modifiers in option format parameters.
- When encountering a SMTP server error while sending email, attempt to establish a fresh connection before sending any further messages.
- Prevent an error when deleting a user if they have voted for content that relates to a disabled add-on.
- Use an alternative reCaptcha URL to ensure better availability.
- Check the correct scope when marking alerts as read via the API.
- Improve accessibility of radio and checkbox rows using ARIA roles.
- When editing custom field values, ensure that labels are associated with the related input for accessibility purposes.
- Ensure that inputs are associated with their labels whenever possible to improve accessibility of certain forms.
- Fix performance regression with emoji conversion and skip emoji conversion code entirely if using natively-styled emoji.
- Only skip spam cleaning via the approval queue if the user was spam cleaned recently.
- Do not cache the edit tags overlay to workaround an issue with tags duplicating in the tags editor.
- Add missing phrase for 'x_weeks' and fix issue with time based phrases not displaying the correct count.
- Limit the width of embedded Facebook content to be consistent with other embeds.
- Reduce peak memory usage when executing certain template/phrase rebuild jobs.
- Correctly handle errors when inlining CSS into emails with PHP 8.
- account_privacy
- attachment_macros
- bookmark_item_node
- captcha_recaptcha
- color_picker_macros
- core.less
- core_datalist.less
- core_filter.less
- core_formrow.less
- core_input.less
- core_menu.less
- custom_fields_macros
- date_input
- forum_post_thread
- helper_js_global
- helper_user_dob_edit
- inline_mod_actions
- input_extended.less
- member_about
- notice_enable_push
- poll_macros
- post_article_macros
- post_macros
- prefix_macros
- rating_macros
- search_form_post
- setup.less
- tag_macros
- two_step_backup
Some of the changes in XF 2.2.4 include:
The following public templates have had changes:
- Ensure multi-quote system does not overwrite unintended parts of the attachment upload request.
- Allow the "must login or register to reply" button to wrap if needed.
- Prevent an error from being sporadically triggered when cleaning up the filesystem cache.
- Prevent an error when checking if a conversation can be started with a user who is unexpectedly missing part of their profile data.
- Ensure that "click to expand" links are treated as buttons and are keyboard-navigation accessible.
- When logging in via an API generated token, allow the existing logged in user to be replaced (if logged in as a different user) with the new user if force=1 appended to the URL.
- When an account that does not have a password set is requesting a new password, ensure some amount of rate limiting is imposed to avoid repeat requests.
- Add support for using $context inside widget display condition field.
- Properly maintain the full table markup when selectively quoting only part of a table.
- Fix search result highlighting issues with certain non-ASCII characters.
- Prevent double conversion of CSS rules to BB code equivalents in some situations.
- When viewing the registerd members list, ensure unviewable member stat categories are filtered out from the sidebar.
- Ensure toggle:hidden event is triggered correctly when hiding toggle elements.
- Clean up news feed records belonging to posts when their thread is hard deleted.
- If a thread as multiple sort options, ensure the additional links are marked as nofollow
- Mark go-to links in quotes as nofollow
- When viewing the latest activity of an ignored member, show a link to view ignored content
- Prevent HTML errors outputting from Xdebug in some cases.
- When searching within a specific forum, ensure child forums are included in all cases.
- Adjust Auth::actionPost API documentation to recommend the login/password parameters should be passed into the request body to go along with a general recommendation in our development documentation that this should generally be done for all non-GET requests.
- When a pre-registration action is triggered, only show the welcome message if this is newly registered user.
- Correctly pass state of $forceCaptcha to contact_form template
- Disable a table quick insert button that sometimes appears in the rich text editor.
- Update phpdoc on entityColumnsToJson method to indicate the correct return type.
- If the unregistered group has the view permission revoked ensure that failed CAPTCHAs can successfully be reloaded in the event of an error.
- Fix an issue preventing installs from the command line when using PHP 8
- Avoid unexpected layout shifts when embedded images/attachments have known dimensions.
- Throw a required input missing error if the avatar file is not included in the request. PHPdoc updated to reflect the requirement in the online API docs.
- Ensure user rejection reasons can't exceed the 200 character limit
- Update PhpBb3 authentication handler to support verifying passwords using native PHP methods where possible.
- Render phrases presented as $value to XML createDomElement()
- Don't merge identical sibling URL and EMAIL bbcode tags
- For consistent behavior across PHP versions, explicitly trigger a notice if an array is passed in to XF::escapeString
- When inserting multiple attachments, allow the "thumbnail" button to insert audio/video attachments which do not support thumbnails.
- Maintain the single thread search constraint when returning to the advanced search form.
- Ensure that about and signature are not censored before rendering as BB code.
- In question and suggestion forums, ensure that all tab constraints are maintained in the filtering menu.
- Save undo points in the RTE when triggering certain actions such as quoting a message.
- Prevent an error on some browsers when inserting a video through the rich text editor.
- When importing users, if the primary user_group_id also appears in the secondary_group_ids field then remove it.
- Create a new POST post/{id}/mark-solution endpoint, to toggle/switch the solution post. Returns old_solution_post and new_solution_post to allow switching behaviours.
- Adjust universal lightbox option explanation
- Properly escape some phrases in HTML attributes
- Fix group sorting of field cache data
- Add a note about step dependencies to the import step chooser
- Don't throw an error when trying to add an admin on PHP 8
- Check permissions before displaying add-on control links
- Display option values when editing the current email transport method
- Trigger events when toggling the display of disabler containers
- Adjust new thread and search forum widget expanded display explanation
- When autolinking post content do not autolink if we match www. followed by an additional dot.
- When installing XF via the command line if the confirm password doesn't match the original password then go back to the original password prompt.
- Allow 'sort' to be passed to profile-posts/{id}/comments in order to get posts in asc/desc date order
- PAGE_CONTAINER
- alert_macros
- alert_post_pre_reg
- alert_user_pre_reg_failed
- approval_queue_macros
- bb_code_tag_quote
- bookmark_macros
- connected_account_associated_facebook
- contact_form
- core_bbcode.less
- editor_dialog_media
- editor_insert_gif
- forum_filters_type_question
- forum_view_type_question
- forum_view_type_suggestion
- helper_attach_upload
- member_latest_activity
- member_macros
- member_recent_content
- member_tooltip
- member_view
- nestable.less
- offline.less
- post_article_macros
- post_macros
- post_question_macros
- push_post_pre_reg
- push_user_pre_reg_failed
- search_form_macros
- search_form_post
- service_worker_offline
- thread_view
Hôm nay, sau giai đoạn ngắn thử nghiệm và phát hành bản Candidate, chúng tôi vui mừng thông báo rằng XenForo 2.2.0 hiện đã được chuẩn bị, tẩm gia vị, nướng và phục vụ, thay thế XenForo 2.1.11 làm phiên bản XenForo được hỗ trợ chính của chúng tôi.
Bản phát hành này bổ sung một bộ sưu tập các tính năng mới tuyệt vời cho XenForo, bao gồm tính năng sử dụng lại các diễn đàn làm kho lưu trữ bài viết, một cách mới để khuyến khích khách đăng ký, một ứng dụng web được cải tiến và một trình soạn thảo văn bản đa dạng thức được thiết kế lại hoàn toàn. Kiểm tra danh sách sau để biết một vài điểm nổi bật:
Đây không phải là danh sách đầy đủ về những tính năng mới trong phiên bản 2.2 và bạn có thể tìm hiểu thêm về các tính năng nổi bật ở trên và những thay đổi / cải tiến mới khác.
- Diễn đàn và hệ thống các loại chủ đề
- Đã cập nhật trình chỉnh sửa văn bản đa dạng thức
- Banner hồ sơ người dùng
- Yêu cầu thay đổi tên người dùng
- Tìm kiếm diễn đàn
- Kiểm soát SEO diễn đàn
- Viết trước khi hỗ trợ đăng ký
- Ứng dụng web cải tiến
- Email tóm tắt hoạt động
- Nhập và xuất giao diện
- Bổ sung API REST
- Thêm tệp đính kèm bài đăng trang hồ sơ
Chúng tôi cũng đã sơ bộ hỗ trợ bổ sung cho bản phát hành chính sắp tới của PHP 8.0.
Sau bản phát hành vào thứ 4 tuần trước, chúng tôi đã quay trở lại chu kỳ phát hành thường xuyên vào thứ ba với phiên bản 2.2.0 Beta 6. Chúng tôi hy vọng rằng đây có thể là bản phát hành beta cuối cùng trước khi chúng tôi chuyển sang giai đoạn Phát hành bản chính thức.
Chúng tôi đặc biệt khuyên mọi người nên thử nghiệm 2.2 trong quá trình nâng cấp phiên bản beta này mỗi khi phiên bản beta mới được phát hành.
Bạn có thể tìm thấy chi tiết cụ thể hơn về các lỗi được sửa trong bản phát hành này cũng như giải quyết các lỗi trên diễn đàn.