A concise guide to Osclass 8.0.2 changes that improve security posture, performance, and daily administration.
May osclass update comes after several months of work and follow continuous improvements from 8.0.1. Today we will do just quick summary to avoid long stories :-)
New function has been added into core that greatly helps developers to update or insert data into database without need to explicitly check if record already exists in table
It is possible now to change canvas background for media and can be switched from white to black. This means, if you do not use "best crop" or "force image aspect" features, white background added to image can now be changed to black.
Admin can now change the way how username of user is being generated. Until now, if no field was provided on registration page, username was equal to user ID and only admin could change it. Now, unique username can be generated based on user real name, improving SEO and links structure, as user public profile URL use username.
One of last sections with terrible design and functionality should now bring more options to manage listings media. We hope you like design enhancements!

Admin can now easily renew listings those are eligible for renew. Elible means, that renew button is visible (or is enabled) to listing owner in front office.

Numerous updates and improvements made especially when switching language, using language code in URL (static pages) etc. Osclass now supports also 2-letter language codes (when switching language). Static pages also supports 2-letter language codes (i.e. yourdomain.com/ru/static-page-p22).
Themes can now push their tables to core queries in order to reduce amount of queries required to generate page, especially on home & search page. This includes theme item and category tables.
Read full osclass changelog.
Previous: Osclass 8.0.1. Next: Osclass 8.1.0.
Question: What does the Osclass 8.0.2 upsert helper do?
Answer: Osclass 8.0.2 adds an upsert helper so a plugin can insert or update a row without a separate exists query. Use it in custom code instead of select-then-insert. Core listing save is unchanged. Site owners see fewer race errors in plugins that adopt it. Theme files do not need this helper.
Question: How do I switch Osclass 8.0.2 image canvas from white to black?
Answer: Osclass 8.0.2 can set the media canvas background to black instead of white when best crop and force aspect are off. Letterboxed thumbnails then get black bars. Change it in Media settings. Best crop still fills the box without bars. Regenerate if existing thumbnails still show the old canvas.
Question: How does Osclass 8.0.2 generate a username from the real name?
Answer: Osclass 8.0.2 added configurable username-generation based on the user real name instead of using the user ID. Public profile URLs use that username. Enable the generator in user settings. Existing IDs are not rewritten until you change them. This is a URL setting, not a guaranteed ranking benefit.
Question: Can I renew an Osclass listing from oc-admin in 8.0.2?
Answer: Osclass 8.0.2 adds a renew button in backoffice for listings that already show renew to the owner on the front. If the seller cannot renew, the admin button stays hidden too. It is a staff shortcut, not a new Osclass Pay republish product. Open the listing in oc-admin to see the control.
Question: Does upgrading to Osclass 8.0.2 affect existing listings and static pages?
Answer: Upgrading to Osclass 8.0.2 keeps existing listings. Username generation, media canvas, and two-letter language codes in static page URLs are opt-in or additive. Test language switch on a static page such as /ru/static-page-p22. This is not the 8.1 language-in-base-URL Friendly URL beta. Backup before the package.
Question: Can osc_register_script add async or defer in Osclass 8.0.2?
Answer: osc_register_script in Osclass 8.0.2 can set async or defer on the script tag. Use it from the theme or a plugin instead of editing core header.php. The Osclass generator meta tag can also be hidden in backoffice on this release. Check page source after you register the script.