Documentation

SocialProofo by AltumCode

Overview

In this page you can find the needed documentation for you to fully install and configure the product.

Requirements

Please make sure your server meets the following requirements before attempting to install or purchase the product.

The product installation procedure is straight forward and does not require any special / out of the ordinary task. Minimum knowledge on how to work with a database and managing files on a server is required.

PHP PHP 7.4+
Extensions cURL, OpenSSL, mbstring, MySQLi
MySQL MySQL 5 (or higher)
Apache with mod_rewrite

Installation Services

I also offer quality installation services at a low cost.

Product Installation - $19

The product installation package includes the following (you must own a s:

  • Uploading the product files on your server (requires a fully configured and ready to go server).
  • Creating and configuring the database that is going to be used.
  • Full installation of the product.

Full Server Installation - $79

The full server installation package includes the following:

  • Setting up a new server on one of those platforms: Cloudways, Vultr, DigitalOcean
  • Setting up the domain for the server
  • Free SSL Certificate Installation (Let's Encrypt)
  • Installation of Apache, MySQL with MySQLi, PHP
  • Installation and configuration of PHP's necessary modules / extensions
  • Full installation of the product
Get in touch

Installation

This installation process should take no more than 10 minutes if followed and done correctly.

Watch a video tutorial on how you can install the product a shared web host with cPanel.

1. Prepare the database

  1. Create a new Database User for the upcoming new database (optional)
  2. Create a new Database
  3. Prepare the Database Host, Name, Username and Password for the upcoming steps.

2. Upload the product

Upload the content of the product/ folder on your webhost.

The product can be uploaded either on a subdomain, domain or subfolder, depending on your needs.

3. Prepare the product files

You need to set the permissions (CHMOD) of the following files / folders to either 755, 775, or 777 which will depend on your actual server.

  • /uploads/favicon/
  • /uploads/logo/
  • /uploads/opengraph/
  • /uploads/cache/
  • /uploads/offline_payment_proofs/
  • /config.php

4. Start the installation process

  1. Access the product on your website and access the /install path. (ex: https://yourdomain.com/install)
  2. Follow the steps in the installation process
  3. You can now access the website and login with your admin account

5. Cron job setup

The cron job must be set up as it is responsible for handling background tasks.

  1. Make sure to login and go to the Admin Panel -> Website Settings -> Cron tab
  2. Create a new cron job with each cron job commands that you see in there.

Update

This part of the documentation is for the time when you want to update your current installation to newer releases.

Watch a video tutorial on how you can update the product a shared web host with cPanel.

1. Backup

Before even starting with the updating process, you must backup to make sure that if something goes wrong, you can always restore to the previous version.

  1. Backup your database
  2. Backup your files

2. Files update

  1. Download & unzip the latest version of the product.
  2. Go inside of the product folder, copy and upload all the files and folders to your server where you have the product installed.

Do not replace nor upload the following files/folders:

  1. /config.php
  2. /install/
  3. /uploads/

3. Database update

  1. Go to your website and access the /update path, just like the following format: https://domain.com/update.
  2. Follow all the steps inside of the updating process.
  3. After you are finished, make sure to delete the update folder as you do not need it anymore.

Extra Configuration

Here are the integrations that you can configure on the product after installation.

Nginx Servers

The product was designed to work by default for Apache servers. This is an extra thing that I provide for NGINX users although support is NOT guaranteed for NGINX servers.

The rewrite rule for NGINX that you need to add so that the urls work is the following:

if (!-e $request_filename){ rewrite ^\/(.+)$ /index.php?altum=$1 last; }

This command should be added in your domain.conf nginx file in the location / { ... } field.

Facebook Login

The Facebook Login integration gives your users the ability to skip normal registration and login directly with their Facebook account.

  1. Go to Facebook Developers page.
  2. Make sure to login to your Facebook account.
  3. Click on the My Apps menu dropdown and click on Create app.
  4. Add your details to the form and click submit the form to create the new app.
  5. Go to Settings from the sidebar menu and click on Basic.
  6. Fill out your Facebook app details in there.
  7. From the sidebar, under Facebook Login click on Quickstart link.
  8. Click on the Web platform and add your website URL. Skip the next steps.
  9. From the sidebar, under Facebook Login click on Settings link.
  10. In the Valid OAuth redirect URIs field, add your website's URL in this format: https://yourdomain.com/login/facebook (replace yourdomain.com with your own domain name).
  11. Save the changes.
  12. Go to App Profile page and copy the App ID and App Secret.
  13. Go to your new Product's Admin Panel -> Website Settings -> Facebook Login Tab and enter the App ID and App Secret keys.
  14. Make sure to Enable Facebook Login and Submit the new settings.

PayPal

The PayPal integration gives your users the ability to pay via PayPal on your website.

  1. Go to PayPal Developer Console and Login to your account after clicking the Log into Dashboard button
  2. Go to REST API apps section and click the Create App button.
  3. Add your own details for the new app and create it.
  4. Switch to Live by clicking the button near your new App's Name.
  5. Copy the Client ID and Secret
  6. Go to your new Product's Admin Panel -> Website Settings -> Payment Tab and enter the Client ID and Secret keys.
  7. Make sure to also switch the Mode to Live and Submit the new settings.
  8. Go to the newly created App in the Paypal Developer Console and click on the Add Webhook button.
  9. In the Webhook Url field, add your website's URL in this format: https://yourdomain.com/webhook-paypal (replace yourdomain.com with your own domain name).
  10. In the Event types field, check the Payment sale completed event and submit the Webhook.

Stripe

The PayPal integration gives your users the ability to pay via Stripe on your website.

  1. Go to Stripe Dashboard and Login to your account.
  2. Go to Stripe API Keys page.
  3. Make sure your API keys are set to Live Mode so that you can accept real payments.
  4. Copy the Publishable key and Secret key.
  5. Go to your new Product's Admin Panel -> Website Settings -> Payment Tab and enter the Publishable key and Secret Key.
  6. From the sidebar, under Developers click on Webhooks link.
  7. Click on the Add endpoint button
  8. In the Endpoint URL field, add your website's URL in this format: https://yourdomain.com/webhook-stripe (replace yourdomain.com with your own domain name).
  9. In the Events to send field, select the checkout.session.completed, invoice.paid, invoice.upcoming and click the Add endpoint button.
  10. Copy the Signing secret key and paste it in the product's Webhook Secret field in the admin panel.

Offline payments

The offline payments integration gives your users the ability to pay offline (bank transfer, for example), give you the proof of payment and receive what the customer paid for when the payment is approved.

  1. As an admin you can enable the offline payments system from the Admin Panel -> Website Settings -> Payment tab.
  2. In the Instructions field you can write details for the user on where to send an offline payment.
  3. The customer will have the ability to choose the offline payment method when checking out.
  4. The customer will see the Instructions for the payment and also be required to upload a proof of payment.
  5. When the customer checks out, the admin will need to go in the Admin Panel -> Payments page and review the proof of purchase and then, approve it.
  6. After the approval, the customer will get the plan that was chosen
  7. If the proof of payment is not correct and the payment is fake, simply delete the payment from the list.

Google Recaptcha

The Google Recaptcha integration will replace the basic captcha with Google's Recaptcha system.

  1. Go to Recaptcha Admin Panel and Login to your Google account.
  2. Make sure to select the reCAPTCHA v2 type
  3. Fill in the other needed details from the form.
  4. Make sure your API keys are set to Live Mode so that you can accept real payments.
  5. Copy the Site Key and Secret Key.
  6. Go to your new Product's Admin Panel -> Website Settings -> Captcha Tab Tab and enter the Site Key and Secret Key.

Plugins

Here are some more details about the plugins available for SocialProofo.

Pro Notifications Pack (10 new notification types)

This plugin adds 10 new notification types to your socialproofo system.

Get plugin
  1. Update your SocialProofo installation to the latest version.
  2. Download the files that you got from the plugin.
  3. Copy the app/includes/pro_notifications.php file to your SocialProofo installation folder in app/includes/
  4. Copy the themes/altum/views/partials/notifications/ files to your SocialProofo installation folder in themes/altum/views/partials/notifications/
  5. The new notifications are now ready to be enabled from the admin panel.

Hosting & domains

VPS Hosting

(intermediate, advanced)

If you are just starting out to work with VPS servers & do not want to complicate yourself with server management, manually installing & configuring the server, then I would highly suggest Cloudways.

Get Cloudways hosting

If you do not need the managed cloud hosting solution and you are confortable with managing and configuring your own VPS, I would suggest going for Vultr.

Get $100 on Vultr

Shared hosting

(beginner)

When you are starting out and you do not have that much knowledge, I would highly suggest getting a shared webhosting plan.

Why? Because you get a lot of value for the money, such as: a free domain (in some cases), cpanel, support, documentation, custom domain email...etc.

Namecheap web hosting

Domains

Since I have found NameCheap almost 2 years ago, I have personally transferred all my domains from Godaddy to Namecheap as they offer better deals, prices for domains and a much more intuitive and simpler user interface.

Namecheap domains

FAQ

Here are the most popular questions and their answers.

  • How can I update text on the website?
    Any from the website can be changed from the app/languages/english.json file for the frontend part. The admin panel translations are found in the app/languages/admin/enlish.json file.
  • How can I create my own language?
    Duplicate the app/languages/english.json file, rename the duplicated file to your actual language name and start editing the newly created file. The same process needs to happen for the admin panel translations, app/languages/admin/enlish.json.
  • When I click on any link it returns 404 Not Found, why?
    That means that you either didn't add the .htaccess file or that your webhost doesn't have mod_rewrite enabled on the apache server.
  • Is there any Sitemap?
    Yes, you can access the sitemap by accessing the /sitemap path on the website.
  • Do you have any extra documentation?
    Yes, you can check out the SocialProofo Blog for more.

About

I build High quality, ready to use & affordable software. Here's where you can find me:

Support is only done through Codecanyon's email form or comments section.