As we promised in the previous update post, this release will be more dedicated to adding new functionality. We kept our promise and tried to add as many new features and improvements as possible. Some improvements have boosted the performance of our Classifieds/Marketplace CMS and the loading speed of site pages. We also have copied the functionality that was made available to the online Service Booking software to our other scripts.
Handling high loads with the updated caching module
Previously, the internal caching module made it possible to use 3 types of cache:
- File (storing data in files on the server),
- Memcached, and
- APC.
By default, the file system is used to store cached data as JSON strings. Under heavy loads or a large amount of stored data, the system could spend a lot of time and server resources accessing such data, which slowed down the site as a whole. Also, with the advent of PHP 7 version, the “apc” module became outdated and was replaced by “apcu”. We have reworked the internal data caching algorithm and integrated the symfony/cache component for greater performance. This made it possible to use a single interface for working with data, regardless of the type of cache used. Storing data in files now uses native PHP arrays, which has greatly increased the speed of handling them. In this case, the “opcache.enable” directive must be enabled in the PHP settings (php.ini). We also added the ability to use Redis as an alternative storage for cached data.
The DeepL translation service integrated
The previous version of our online Classifieds Software used only Google Translator to translate phrases when creating a new language. Now the system for translating languages and phrases is divided into separate modules, which made it possible to integrate the DeepL API service as an alternative translator. There are now two phrase translation services to choose from in the admin panel. Deepl services are provided on a paid basis. You can learn more about their plans here.
The Fancyapps library updated
We use the Fancyapps library to display images in the gallery on the Listing Details page, with the ability to scroll, enlarge photos, and view as a slideshow. We have updated the version of this library to version 5.0.33 and all its used modules in order to have an up-to-date version with all the errors and improvements resolved in it and to be able to use all its features. Also, the updated version made it possible to use its modules in boxes with categories and replace the old code that was used there for scrolling a large list of categories.
The News module reworked
The News module has been significantly redesigned and improved. We added the ability to create/edit news categories to divide news by topic. The news also got a view counter, which is displayed both in the site interface in the news and in the news manager in the admin panel. We added the long-awaited ability to upload photos for news.
We’ve added the “Read more news” block to the article page. The block may offer other news from the same category or recent news from different categories.
Category block structure reworked
We have updated and improved the structure of category blocks. We have moved some category block settings from the listing type manager directly to the category manager for ease of configuration. Added several options to configure the display of categories in blocks: Category box format, “View more” button style, and Merge with other category boxes.
The new option “Merge with other category boxes” allows you to merge category blocks of different listing types into one if they are in the same position and on the same page. Previously, this feature was only available in the classifieds script and worked automatically, but now the administrator has the ability to manage it.
We also improved the category box on the listing type and category pages. Now the content box offers a nice category tree and useful breadcrumbs navigation at the top of the box.
Icons of social networks added
The previous version displayed Facebook and Twitter icons in the footer of the site, to which the administrator could add links. In the new version, we have expanded the list of icons by adding WhatsApp, Instagram, and X. We have also updated the design of all icons. The administrator can manage links to all social networks from the admin panel by adding links. If you want to hide some social networks from the list you can just leave the link field empty.
SEO improvements
The previous software version loaded Google Fonts from Google servers. This often took a lot of time, slowed down page loading, and could lead to ranking drops. These fonts change extremely rarely, so we added them directly to the system files and now they are loaded directly from the site’s server, which should increase the page loading speed and improve the SEO score.
We also added lazy loading for ad images, which should also have a positive effect on page loading speed and, as a result, on the site’s ranking in search results. It works like this: the browser analyzes the visible part of the site’s content and initially downloads only those images that the user needs at that moment. The remaining images are loaded as the user scrolls and views the page content.
Automatic translation of text field values added
If a site offers several languages and multilingual support is enabled for the text fields, then users or the administrator have to manually translate data in such fields or simply copy the values from one language into others. This can harm SEO and user experience, as the same texts are displayed on different multilingual pages of the site.
So, when creating an ad or an account, the user fills in the data only in his language; the system will automatically translate the texts into all other languages in the background. If the user is not satisfied with the results of the automatic translation, he can always edit the translated text later. The system will use the translation service selected by the administrator.
The nofollow option enabled for the system pages
In this update, we’ve enabled the nofollow option for all system pages accessible only to logged-in users. The new setting allows you to add the rel=”nofollow” attribute and the “robots” meta tag with the value “noindex, nofollow”. The option allows you to exclude system pages from indexing that should not be included in the results by default.
We would also like to highlight new features that were included in the first version of the Service Booking Script that were not included in version 4.9.2.
A multifile upload field added
We have added a new type of file upload field that can accept the following formats: xls, csv, xlsx, pdf, zip, rar, doc, rtf, docx, jpg, jpeg, png, gif, webp, and txt. The field settings allow you to upload a file of any extension from the list of available ones or several files with different extensions. The field manager allows the administrator to limit the number of files to upload.
The “human readable” date option added
Instead of displaying a static date in an ad, we have integrated the ability to display the time interval that has passed since the ad was added, for example, the ad was added “4 hours ago.” The option supports multi-language mode.
Minimum software compatibility
increased to PHP 7.3
The previous version of our software required PHP 7.2 for minimum compatibility. We have increased this requirement to version 7.3. To ensure the stable operation of our classifieds software, we recommend using PHP 8.2.
Bugfixes:
- An error when a listing form loaded fields from the primary category instead of the parent one fixed
- A MySQL error when adding multiple fields to the listing form fixed
- A Viber issue when the messenger icon is clicked on Android devices fixed
- An error in the admin panel when saving an account type with disabled permission on PHP 8 fixed
- A get method issue when browsing search results pages fixed
- A primary category form issue with the enabled “Divide cache into fragments” option fixed
- A PHP 8 issue in the admin panel when adding a listing to a category with no fields fixed
- A membership service issue after editing accounts fixed
- A user data issue in pop-ups when a membership plan disallows them fixed
- A PHP 8 issue on the user end after disabling all payment gateways in the admin panel fixed
- An issue with the redirect to the new account page after enabling the wildcard subdomains fixed
- An inactive transaction issue after paying via PayPal fixed
- A PHP 8 issue in search forms with no field groups fixed
- A price issue in search forms on PHP 8 after adding the price field to the form and disabling all currencies fixed