Servento – A service finder and business listing WordPress plugin

Contents

1. Why some WooCommerce payment gateway doesn't complete the booking or hiring process

2. ​How to translate or rename strings in plugin

3. Why email took time to arrive or not working

4. Servento detailed instructions about payments and commissions.

5. Server requirements

6. Servento plugin template structure & Overriding templates via a theme

7. JWT Authentication

8. JWT Authentication

9. Why email took time to arrive or not working

10. Servento add categories and services

11. How to change currency and formatting

12. Paid or free users in the servento

13. Servento providers withdraw earnings

14. The base theme for servento plugin(optional)

15. How to change currency and formatting

1. Why some WooCommerce payment gateway doesn't complete the booking or hiring process

We have used WooCommerce for the packages and booking process and have used the below hooks

Any gateways that default status goes to On Hold or Pending Payment instead of Processing will not process the order against packages update or booking.

As this is not a delivery order which needs to be processing, this should be complete the order straightforward because online bookings

In your payment gateway, this doesn't call the WooCommerce hook which we have used once the order gets completed

2. ​How to translate or rename strings in plugin

How to translate or rename strings in plugin

Loco translate plugin can be used either for Translations into a different language or to change any string without changing the language. Like if your site has the English language then you can create a template for the English language and star-changing strings

You can use the Loco Translate plugin to translate the plugin to any language or to update/change any text in the theme and plugin.

-- Install loco translate plugin

-- Please note: For translations, your WordPress should have selected the same language as the language created in Loco translation.

-- Please make sure you have synced the pot templates for the plugin 

-- Then create and sync the language templates before adding your translations.


Please create a template into a custom folder rather than in the theme or plugin 


Now you can find each string in .po template

-- Please avoid searching long strings. The long string may be in parts so start typing word by word. For example, don't search "Find your NEAREST" but search by typing "Find"


One thing which is more important: Please check loco translate settings. Extracting Strings should have a minimum size

: 10000k




3. Why email took time to arrive or not working

Why email is not working

Please make sure if emails are not in spams or junks folders.

Why email took time to arrive

Email delay(arrival to the inbox) could be due to any reason. First of all, this could be your email content. Some email providers like Gmail take time to read content and decide to either put it to spam or in the inbox.

So your content should be strong and don't write such kind of content which could be suspicious.

This is not related to the theme because when any event trigger then it send an email because PHP functions run.

For testing purposes, you can install this plugin https://wordpress.org/plugins/email-log/

When your click it will trigger an email and you can see the email log it on the back-end.

4. Servento detailed instructions about payments and commissions.

Enable Packages and Bookings:

From Servento settings -> Package settings enable package for providers, and seekers and enable booking option for users.


Providers and seekers purchase packages, and payments go to the administrator account according to WooCommerce payment settings.

Commission:

 If the end-user pays for the provider's service then a certain amount of commission goes to the administrator and the remaining balance is displayed in the provider's wallet.


5. Server requirements

Below are the server requirements for the theme

  1. The PHP version should be 7.4(PHP 8.0 is not tested officially with our plugin/theme)
  2. PHP Zip extension Should be Installed
  3. max_execution_time = 300
  4. max_input_time = 300
  5. memory_limit = 512
  6. max_input_vars = 3000
  7. post_max_size = 50M
  8. upload_max_filesize = 50M
  9. CURL should be enabled to download Unyson extensions and demo content.
  10. Node.js server should be installed( required only for real-time chat ) 
  11. allow_url_fopen and allow_url_include 
  12. Make sure GD & Imagemagick libraries should be installed on your server. Which is required to upload and generate images sizes

Please note due to a lot of Theme Options, your server should have max_input_vars =3000 minimum, otherwise, your last tabs settings will not be saved

6. Servento plugin template structure & Overriding templates via a theme

Servento template files contain the markup and template structure for the front end of your site.

Template files can be found within the /plugins/servento/templates/ directory:

How to Edit Files:

Copy the template into a directory within your theme named /servento keeping the same file structure but removing the /templates/ subdirectory.

Example: To override the admin order notification, copy: 

wp-content/plugins/servento/templates/search-providers.php to wp-content/themes/yourtheme/servento/search-providers.php

wp-content/plugins/servento/templates/user-type-js-templates.php to wp-content/themes/yourtheme/servento/user-type-js-templates.php

The copied file will now override the Servento plugin default template file.

Warning: Do not edit these files within the core plugin itself as they are overwritten during the upgrade process and any customizations will be lost.

7. JWT Authentication

JWT Authentication

While using our plugin you need to make sure that your hosting service enabled the Authorization header because we are using JWT for authentication that needs an authorization header, if your hosting server disabled the Authorization header then you need to enable it in the .htaccess file for example.

Just copy the below code and paste it into the .htaccess file location on the WordPress root

Throughout this plugin, we have used WordPress REST API to Add/Edit the data. So for security tokens in the REST API, we have used JWT Authorization

Most of the shared hosting has disabled the HTTP Authorization headers by default To enable this option you’ll need to edit your .htaccess file adding the following

RewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

WPENGINE

To enable the header option you’ll need to edit your .htaccess file adding the following

SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

8. JWT Authentication

JWT Authentication

While using our plugin you need to make sure that your hosting service enabled the Authorization header because we are using JWT for authentication that needs an authorization header, if your hosting server disabled the Authorization header then you need to enable it in the .htaccess file for example.

Just copy the below code and paste it into the .htaccess file location on the WordPress root

Throughout this plugin, we have used WordPress REST API to Add/Edit the data. So for security tokens in the REST API, we have used JWT Authorization

Most of the shared hosting has disabled the HTTP Authorization headers by default To enable this option you’ll need to edit your .htaccess file adding the following

RewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

WPENGINE

To enable the header option you’ll need to edit your .htaccess file adding the following

SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

9. Why email took time to arrive or not working

Why email took time to arrive or not working

1) Why email are not working

Please make sure if emails are not in spams or junks folders.

2) Why email took time to arrive

Email delay(arrival to the inbox) could be due to many reason. First of all this could be your email content. Some email providers like gmail take time to read content and decide either put it to spam or in inbox.

So your content should be strong, and don't write such kind of content which could be a suspicious.

This not related to application because when any event trigger then it send email because php functions runs.

You might check other SMTP host other than gmail, like sendgrid which give the 100% accuracy to target the inbox and send emails timely

https://sendgrid.com/docs/for-developers/sending-email/laravel/

10. Servento add categories and services

How to add provider services:

You need to add services in different categories after login in as a provider from the provider profile. Once services will be added in categories, they will be displayed at the front of the search provider page.

From the provider user profile "Services & teams" tab, you can add services.

Here is the following video to add services.

Admin dashboard categories listing:

From the admin dashboard "Product->Categoreis" you can see all the product categories listed. The categories listing count column represents the total number of services that are assigned to a category.

Search providers by category:

Parent Categories that are assigned to services will be shown in the category dropdown on the search page. Once the parent category will be selected it will display its child categories with the checkbox. Users can search providers by subcategory checkbox selection.



11. How to change currency and formatting

How to change currency

Admin can change the currency from WooCommerce settings page


12. Paid or free users in the servento

Paid or free users in the servento plugin

Admin can allow the free or paid profiles. When packages are enabled then providers have to buy a package to get full access to the profile like gallery upload or business hours

When it will be disabled(free) the provider will be able to access the full profile without paying to admin


For the service seekers

If enabled then users have to pay for the booking with the provider as well as the allow the user to add the contact details which will be visible on the profile detail page



13. Servento providers withdraw earnings

From the provider dashboard "My earnings" tab user needs to add payout details according to the payment plan.

For the default withdrawal method user need to check the radio button.

Withdraw:


14. The base theme for servento plugin(optional)

The base theme for servento plugin(optional)

Please note that this theme is optional and our plugin can work with any other theme

https://amentotech.com/themes/expertio.zip

15. How to change currency and formatting

How to change currency

Admin can change the currency from WooCommerce settings page