News
2024 Update - Site Sunset
I will soon lock down the b2evolution.net site. It will become read only and neither you nor me will be able to post new content to it.
- I will keep the read-only site up for reference for as long as practical. I might convert it to all static pages at some point (and still retain the content).
- I will post future updates on stateoftheevolution.com.
- You may continue to discuss issues on GitHub.
Read more...
Posted July 10, 2024 | 2:51 pmView all b2evolution News...
Drupal 11.3.0 is now available
The third feature release of Drupal 11 is here with the biggest performance boost in a decade. Serve 26-33% more requests with the same database load. New native HTMX support enables rich UX with up to 71% less JavaScript. Plus, enjoy the new stable Navigation module, improved CKEditor content editing, native content export, and cleaner OOP hooks for themes.

New in Drupal 11.3
Biggest performance boost in a decade
Database query and cache operations on both cold and warm caches have been significantly reduced. Our automated tests show that the new optimization for cold caches is about one third and on partially-warm cache requests by up to one fourth. Independent testing shows even bigger improvements on complex sites.
The render and caching layers now combine database and cache operations, notably in path alias and entity loading. BigPipe also now uses HTMX on the frontend, leading to a significant reduction in JavaScript weight.
Read more about performance improvements in Drupal 11.3.0.
Native HTMX: Rich UX with up to 71% less JavaScript
Drupal 11.3.0 now natively integrates HTMX, a powerful, dependency-free JavaScript library. HTMX dramatically enhances how developers build fast, interactive user interfaces. It enables modern browser features directly in HTML attributes, significantly reducing the need for extensive custom JavaScript.
Read more about HTMX support in Drupal 11.3.0.
Navigation module is now stable
The Navigation module is now stable, offering a superior and more modern experience than the old Toolbar. While it is an experience worth installing on all sites, it is most useful for sites with complex administration structures. While not yet the default, we strongly encourage users to switch and benefit from its improvements.
Improved content editing
CKEditor now natively supports linking content on the site by selecting it from an autocomplete or dropdown (using entity references).. CKEditor also has new, user-friendly options for formatting list bullets and numbering.. Finally, a dedicated Administer node published status permission is introduced to manage publication status of content (which does not require Administer nodes anymore).
Object-oriented hooks in themes
Themes can now use the same #[Hook()] attribute system as modules, with theme namespaces registered in the container for easier integration. This change allows themers to write cleaner, more structured code. Themes' OOP hook implementations are placed in the src/Hook/ directory, similarly to modules'. Themes support a defined subset of both normal and alter hooks.
Native support for content export
Drupal core now includes a command-line tool to export content in the format previously introduced by the contributed Default Content module. Drupal can export a single entity at a time, but it is also possible to export the dependencies of the entity automatically (for example, images or taxonomy terms it references).To use the export tool, run the following from the Drupal site's root:
php core/scripts/drupal content:export ENTITY_TYPE_ID ENTITY_ID
PHP 8.5 support
PHP 8.5 itself was released last month. Drupal 11.3.0 not only ensures full compatibility and support for PHP 8.5, but made core testing also run on it. PHP 8.5 is expected to become the minimum required version for Drupal 12, planned to be released in 2026.
New experimental database driver for MySQL/MariaDB for parallel queries
A new, experimental MySQLi database driver has been added for MySQL and MariaDB. It is not yet fully supported and is hidden from the user interface.
While the current default drivers use PDO to connect to MySQL or MariaDB, this new database driver instead uses the mysqli PHP extension. MySQLi is more modern and allows database queries to be run in parallel instead of sequentially as with PDO. We plan to add asynchronous database query support in a future Drupal release.
Core maintainer team updates
Since Drupal 11.2, we reached out to all subsystem and topic maintainers to confirm whether they wished to continue in their roles. Several long-term contributors stepped back and opened up roles for new contributors. We would like to thank them for their contributions.
Additionally, Roy Scholten stepped back from his Usability maintainership and Drupal core product manager role. He has been inactive for a while, but his impact on Drupal since 2007 has been profound. We thank him for his involvement!
Mohit Aghera joined as a maintainer for the File subsystem. Shawn Duncan is a new maintainer for the Ajax subsystem. David Cameron was added as a maintainer of the Link Field module. Pierre Dureau and Florent Torregrosa are now the maintainers for the Asset Library API. Finally, codebymikey is the new maintainer for Basic Auth.
Going forward, we plan to review core maintainer appointments annually. We hope this will reduce the burden on maintainers when transitioning between roles or stepping down, and also provide more opportunities for new contributors.
Want to get involved?
If you are looking to make the leap from Drupal user to Drupal contributor, or you want to share resources with your team as part of their professional development, there are many opportunities to deepen your Drupal skill set and give back to the community. Check out the Drupal contributor guide.
You would be more than welcome to join us at DrupalCon Chicago in March 2026 to attend sessions, network, and enjoy mentorship for your first contributions.
The Core Leadership Team is always looking for new contributors to help steward the project. As recently various new opportunities have opened up. If you are looking to deepen your Drupal skill set, we encourage you to read more about the open subsystem and topic maintainer roles and consider stepping up to contribute your expertise.
Drupal 10.6 is also available
The next maintenance minor release of Drupal 10 has also been released, and will be supported until December 9, 2026, after the release of Drupal 12. Long-term support for Drupal 10 gives more flexibility for sites to move to Drupal 11 when they are ready while staying up-to-date with Drupal's dependencies.
This release schedule also allows sites to move from one long-term support version to the next if that is the best strategy for their needs. For more information on maintenance minors, read the previous post on the new major release schedule.
Read more...
Posted December 17, 2025 | 4:04 amView all Drupal News...
e107 v2.3.3 Bootstrap CMS Released
The wait is finally over! e107 v2.3.3 Bootstrap CMS is finally out. This marks the last release that will support PHP 5.6.
This release supports all versions of PHP from 5.6 through to 8.2.
Enjoy!
Features
- Add missing setMetaTitle() method to e_admin_response #5112
- Change length of newsfeed_image field in db #5108
- Add option to alt_auth plugin #5107
- Improve system notifications handling in the admin area. #5106
- Display current time when settings timezone in admin preferences. #5099
- Add option to e_file::getRemoteFile() to prevent time out on larger files or slow connections. #5098
- Allow developers to choose which fields to export in e107Export(). #5094
- Render favicon in admin area the same way as on frontend #5062
- Add option to email any critical error message to an admin #4986
- Add {NEWS_MODIFIED} shortcode for modified date #4978
- Add FontAwsome 6 support #4969
- Add support for PUT or JSON POST to e_file::initCurl() method #4941
- Provide more options to resize the rich text editor. (bbarea, Tinymce) #4927
- Allow plugins to provide their own routing for notifications. #4922
- Allow plugins to use their own email templates when using e107::getEmail()->sendEmail(); #4919
- Improved Database SQL Verify page use of space by using 3 columns. #4907
- Admin-UI: Allow for entry of Primary ID in create/edit modes if needed. #4906
- Enhance e107 to allow for third-party email address validation. #4900
- Update plupload #4887
- Add eventName to Featurebox like News #4841
- Add dedicated Pages/Menus "delete" perms #4827
- Allow plugins to create siteLinks in areas other than the main navigation. #4810
- Exclude the currently viewed news item for the 'latest news' menu. #4786
- Custom SEO title for News and Pages #4783
- Add This Week, This Month and This Year to Admin-UI date filtering options. #4778
- Allow developers to set the URL that users will be directed to after they log out #4777
- Add support for images in plugin-generated sitemaps. #4760
Fixes
- Comments without ajax issue #5111
- Cron Schedule might not trigger with some timezones set in the preferences. #5096
- Admin-UI: Using the label 'True' or 'False' in a select (dropdown) displays incorrect labels. #5093
- Plugin Builder - Generated customPage method contains an error. #5092
- Errors showing up in error_log when running cron. #5091
- Admin-UI: renderValue() of type boolean ignores custom true/false readParm string values when inline editing is not enabled. #5089
- activatejavascript.org as found in default header is a broken link #5087
- Array order not being retained by x-editable inline dropdown/checkbox list. #5083
- PHP 8.1 - Fatal error: Uncaught Error: Undefined constant "USERNAME" in ***ehandlersmail.php on line 451 #5080
- "Force user to update settings" breaks home page for logged in users on PHP 8 #5052
- An Admin with only "Quick Add User" permission can see all users and access inline edit for all #5045
- Force user to update settings causes fatal error im PHP 8.2 #5041
- sendEmail() may render an 'info' message "Could not access file:" under some circumstances. #5020
- Emptying browser cache adds "Empty Thumbnail Cache" to the system logs. #5017
- Admin-UI: Setting readonly=true for a field containing an array value, posts 'Array' in the form results. #5016
- e107 corrupts form-submitted array values when GET method is used. #5005
- Canonical URL is not consistent when parked domains are in use. #4994
- Fatal errors - userposts.php - IMODE is not defined #4966
- Banner plugin - banner_campaign is saving only first campain #4959
- $_GET contains 'configure' key on all pages of admin area. #4945
- Flexpanel layout is not working #4940
- Cron 'Last-Run' value in admin area is always empty #4933
- National characters in title are not converted to sef url correctly. #4925
- sendMail() not using latest PHPMailer methods. #4924
- data-modal-submit attribute fails when an input tag is used instead of a button tag #4923
- Anomoly with some plugins losing their entry from e_url_list after upgrading others. #4917
- FAQs - PHP 8 error #4916
- Bootstrap-notify won't display alerts in admin area #4915
- Wrong HTML markup for date field in advanced search #4904
- PHP 8 - Fatal error LAN_PLUGIN_DOWNLOAD_NAME in comment's search #4890
User Contributions
- Bump guzzlehttp/guzzle from 7.4.3 to 7.4.4 in /e107_tests by @dependabot #4791
- Bump guzzlehttp/guzzle from 7.4.4 to 7.4.5 in /e107_tests by @dependabot #4796
- Some corrections by @yesszus #4788
- 4844: File Inspector: Do not traverse above the base directory by @Deltik #4845
- 4830: Sensible no delete log in
admin_log_ui::maintenanceProcess() by @Deltik #4831 - Add support for wrappers in contact menu by @Jimmi08 #4850
- Fix for #4860 and correct fix for #3983 - correct second authorization by @Jimmi08 #4864
- Login flow consistency: Do not use redirect in admin area login box by @Deltik #4865
- sef-url for RSS news - category news #4868 by @Jimmi08 #4870
- Add support for wrapper in custom menus by @Jimmi08 #4873
- Bump twig/twig from 3.4.1 to 3.4.3 in /e107_tests by @dependabot #4877
- Fix #4847 - mistypo in route by @Jimmi08 #4882
- add wrapper support on fpw page #4883 by @Jimmi08 #4884
- Fix for #4895 - wrong message chatbox plugin by @Jimmi08 #4896
- 4897 class parameter for CB_AVATAR shortcode by @Jimmi08 #4898
- Tests: MDEV-29446 workaround: Ignore COLLATE clause in SHOW CREATE TABLE by @Deltik #4913
- Hotfix for tests failing after PHP 8.2 released by @Deltik #4921
- missing national character from toAscii() by @Jimmi08 #4926
- 4929: Fix type mismatch in usage of
e107forum::getForumClassMembers() by @Deltik #4931 - 4938: Workaround for PHP 8.2.0 segmentation fault / assertion error by @Deltik #4939
- Reintroduce automated acceptance tests by @Deltik #4943
- fix for ranks in top.php #4967 by @Jimmi08 #4975
- Fix news category breadcrumbs by @RichardBarrell #4982
- deprecated static::method() calls for PHP 8.2 by @Jimmi08 #4988
- news: Fix category link in both breadcrumb and menu by @Deltik #4984
- 4991: Fix improper array access in sc_signup_extended_user_fields by @Deltik #4993
- Bump guzzlehttp/psr7 from 2.4.3 to 2.5.0 in /e107_tests by @dependabot #4995
- partial fix #4517 - fix for settings of plugin.xml by @Jimmi08 #5029
- Fix #5025: Type error when sending a PM without the attachment field by @Deltik #5027
- Fix #5013 False Error if UEF type DBField has no records by @Jimmi08 #5014
- fix #5031 for false error when deleting plugin DB field by @Jimmi08 #5032
- Fix #4517 UEF settings in plugin.xml - fix for parms by @Jimmi08 #5033
- Fix #5000 user profile UEF change added to event by @Jimmi08 #5036
- fix for feed logo image #4866 by @Jimmi08 #5015
- fix for type checkboxes and filtering #4474 by @Jimmi08 #5048
- Missing preferences in bootstrap5 #4683 by @Jimmi08 #5058
db_verify::getIndex(): Support index_col_name optional parts by @Deltik #5055- Unify logic of
e_user_model::checkAdminPerms() and getperms() by @Deltik #5070 - install.php: PHP 8.2 exception handler signature compatibility by @Deltik #5073
New Contributors
- @RichardBarrell made their first contribution #4982
Full Changelog: https://github.com/e107inc/e107/compare/v2.3.2...2.3.3
Read more...
Posted November 23, 2023 | 1:08 pmView all e107 News...
🧠 Boost Your Geeklog SEO with AI-Generated Meta Tags
Automatically create meta descriptions, keywords, and SEO titles for your articles
In modern SEO, small details often make a big difference. Meta tags such as meta_description, meta_keywords, and page_title still play an essential role in how your content is displayed and understood by search engines. They directly influence how your stories appear in results, and therefore how often users click them.
I’ve recently built a simple, lightweight utility that helps Geeklog site administrators automatically generate these fields using OpenAI’s API. It works with any Geeklog 2.x site and doesn’t require additional plugins or modifications.
⚙️ Simple, fast, and content-friendly automation
The Geeklog AI SEO Updater connects directly to the Geeklog database and detects any stories missing a meta_description. For each one, it uses the gpt-4o-mini model to analyze the article’s title and introduction, then generates:
- a short optimized meta description (≤ 155 characters),
- a list of relevant meta keywords (5–10 per story),
- and a SEO-friendly page title (≤ 65 characters).
The script automatically detects the language of your site from $_CONF['language'] — it works in French, English, German, Spanish, Italian, and Japanese. You can test results safely in preview mode (?dry=1) or apply them in update mode with a defined article limit.
🔍 Why meta tags still matter
While modern search engines rely on full-page analysis, meta descriptions remain key to how your site looks in results. They act as your article’s “headline” on Google or Bing and have a strong effect on click-through rate.
Meta keywords, even though no longer used by Google for ranking, remain valuable inside Geeklog. They can be used for internal linking or automated features such as:
- a related stories system that connects articles with similar topics,
- a tag cloud for quick exploration,
- or a contextual search module based on shared keywords.
💡 For example, another script could automatically link stories that share two or more identical keywords, creating a stronger internal SEO structure.
🚀 Benefits for site administrators
- Save hours updating metadata across hundreds of stories.
- Keep consistent SEO formatting site-wide.
- Improve visibility and click performance in search results.
- Optionally notify Bing through the IndexNow plugin after each update.
The script only updates stories with empty meta descriptions and checks that you have the proper story.edit admin rights before execution.
🧩 Example usage
# Preview mode (no database update)
https://yourdomain.com/admin/utils/update_meta.php?dry=1
# Update 10 stories
https://yourdomain.com/admin/utils/update_meta.php?limit=10
You can also schedule it as a weekly cron job to automatically optimize metadata for newly published stories.
💡 A foundation for smarter features
This script lays the groundwork for more semantic features inside Geeklog. The generated keywords can later feed new modules such as:
- AI-related stories based on keyword similarity,
- smart internal linking or tag clusters,
- or even advanced search filtering.
By combining Geeklog’s simplicity with AI-assisted metadata, content becomes easier to navigate and better structured for both users and search engines.
📦 Availability
The full documented code is available on the Geeklog Community Forum: 👉 https://www.geeklog.net/forum/index.php?forum=10
It supports PHP 5.6 +, Geeklog 2.x, and optionally integrates with the IndexNow plugin to notify Bing. Every line of the shared version is commented for easy understanding and adaptation.
🧭 Final thoughts
With this AI-powered updater, Geeklog proves it can stay modern and efficient without losing its core simplicity. This approach helps keep older content relevant, visible, and better connected — with minimal effort and full control from the admin panel.
🧩 Author: Ben, Geeklog community contributor Discuss and download on the forum: https://www.geeklog.net/forum/index.php?forum=10
Read more...
Posted October 28, 2025 | 7:41 pmView all Geeklog News...
View all Joomla News...
View all Nucleus News...
phpBB 3.3.15 Release - Please update
Greetings everyone,
We are pleased to announce the release of phpBB 3.3.15 “In Memory of
Mark D. Hamill”. This version is a maintenance and security release of the 3.3.x branch which fixes one security issue, introduces a number of improvements aimed at enhancing the user experience and overall stability of the software and resolves some issues noticed in previous releases.
Since the introduction of phpBB 3.1, phpBB has been using JavaScript and jQuery to improve the responsiveness of prosilver. We did receive a report about a potentially dangerous code in this section. After an internal audit of this and related code, we noticed that some of the handling of data added by an admin is potentially insecure and could lead to cross site scripting.
The improvements include better handling of HTTPS connections in the version check since switching to Guzzle in the previous release as well as the introduction of proper support for TLS v1.3 with SMTP servers.
Notable bug fixes in this release include resolving an issue that resulted in PHP fatal errors when converting from phpBB 2 with Attachment MOD and issues with the pagination resulting in incorrect ordering when searching for users posts. Furthermore, an issue with duplicate users being displayed on the memberlist while sorting and a potential overflow of the topic views count have been addressed.
The full list of changes is available in the changelog file within the docs folder contained in the release package. You can find the key highlights of this release
below and a list of all issues fixed on our tracker at
https://tracker.phpbb.com/issues/?filter=16790The packages can be downloaded from our downloads page.The development team thanks everyone who contributed code to this release: rxu, Kailey M Snay, Alexey Dolzhenko, Neo-CTC, NeoDev, battye, cabot, phpBB TR
If you have any questions or comments, we'll be happy to address them in the
discussion topic.
- The phpBB Team
Read more...
Posted April 2, 2025 | 6:58 amView all phpBB News...
View all Plone News...
View all PHPNUKE News...
Is there a hook associated with memberlist markup?
Idle question: if some idiot wanted to have avatars on the memberlist, is there a hooks-only way of doing it?
Read more...
Posted January 22, 2026 | 1:24 pmView all SMF News...
Be Part of WordCamp Asia 2026
WordCamp Asia is back in 2026, this time in Mumbai, India, and it’s building on a year that showed just how ambitious and connected the WordPress community has become. Now is the time to get involved. Get your ticket, explore sponsorship opportunities, and help spread the word. In 2025, more than 1,400 attendees from 71 […]
Read more...
Posted January 21, 2026 | 4:07 amView all WordPress News...
XOOPS PHPMailer Security Patches Released
The
XOOPS Development Team is pleased to announce the release of
security patches for XOOPS 2.5.8 and XOOPS 2.5.7.2. These patches includes the latest version of PHPMailer to address a serious vulnerability. All XOOPS users are encouraged to update as soon as possible.
Both full distributions and patch files (from the most recent prior release) for both the 2.5.7 and 2.5.8 series are available.
Any users that are running older XOOPS versions are advised to update to
XOOPS 2.5.8.1 now.
Get XOOPS 2.5.8.1Release files are available on
GitHub.
The 2.5.8.1 files are also mirrored on the
XOOPS File Repository on SourceForgeGet XOOPS 2.5.7.3Release files are available on the
XOOPS File Repository on SourceForgeRead more...
Posted January 1, 2017 | 12:51 amView all XOOPS News...