Documentation / Activation and Setup / Getting Started

Introduction

Welcome to the official documentation for the Duzz Custom Portal plugin. This document will guide you on how to make the most out of the plugin, with references to other documentation, latest updates, and code examples.


Using the Github Repository

Our Github repository serves as the central hub for all development-related activities of the Duzz Custom Portal plugin. Here, you’ll find the source code, latest releases, feature updates, and community contributions.

  • Source Code: Explore the inner workings of the plugin, and get a clear understanding of its architecture and functionality.
  • Latest Releases: Stay updated with the most recent stable versions of the plugin. It’s always recommended to use the latest release for improved performance and features.
  • Contribute: Feel free to contribute to the plugin’s development by submitting pull requests or suggesting new features.

To get started, visit our Github Repository. If you’re new to Github or open-source contribution, you might want to check out Github’s official documentation or beginner-friendly guides to get acquainted.


Security

Duzz Custom Portal operates on a zero trust system, so your customers aren’t logging into the WordPress backend, which could be a security vulnerability. Customers don’t create an account or password, a factor that often leads to a 30% loss in sales as customers don’t want to create an account. Instead, they get a unique tracking number and link, just like a FedEx Package. The plugin is designed to allow the addition of a password system if needed in the future.

For security purposes, limited data is included on the page your customers view. But it is possible to update the code if you know PHP so that fields and data are viewable by the customer. That’s not currently included in the plugin. Duzz is only as secure as your hosting provider and WordPress security plugins. Avoid storing sensitive customer information. Do not collect social security numbers or other personal ID numbers.


Requirements

While Duzz Custom Portal works out of the box, for full functionality, we suggest the following:

  • Advanced Custom Fields (ACF) basic version from WordPress repository
  • WPForms basic for simple fields for Name and Email
  • WPForms Plus for fancy fields that allow full Duzz functionality
  • Hosting provider should allow PHP emails as Duzz does not currently use SMTP.
  • Hosting provider that allows you to turn off server side caching.

Choosing a hosting provider

Because of these extra requirements for Duzz Custom Portal, many hosting providers might not be compatible. Your site will become more dynamic and increase the usage of the CPU usage of your site as your site will get more usage with all the customer interactions.

The main issue though is that since Duzz Custom Portal makes your site more dynamic and interactive, any hosting provider with heavy server-side caching could prevent customer pages from updating. Avoid GoDaddy Managed WordPress as they have the most heavy server-side caching. GoDaddy Managed WordPress does not allow you to turn off server-side caching.

If you insist on using GoDaddy, try their more expensive Enhance – Web Hosting Plus. If you are looking for a smaller, cheaper hosting provider, many don’t allow PHP emails or have caps on the quantity of PHP emails that can be sent per hour. So reach out to a hosting provider first to check as they don’t usually mention this on their website. Many will tell you that they only allow SMTP emails which we currently do not support.

We recommend Siteground as they allow you to turn off server-side caching with their SG Optimizer plugin. They also allow for 300 PHP emails per hour. And they are recommended for security purposes.

If you plan to use Siteground, use our referral link to support us:


Click here for our referral


NOTE: Let us know if Duzz works with your hosting provider or not! We will create a list on our website of compatible hosting providers.


Other details

  • When a project is created, it creates an ID number called a project_id. When you view the URL for a project, the URL would look like this:
    http://duzz.io/project/?project_id=8817231306050603
    While the URL your customer views would look like this:
    http://duzz.io/your-project/?project_id=8817231306050603
  • Duzz creates an ACF field called ‘archived’. The archived status is either a 1 or a 0.
  • When the ACF field ‘approved_status’ is marked as Closed – Lost, it automatically archives the project.
  • Duzz automatically creates all needed pages on plugin activation. It will also create pages for your WP Forms and automatically add the forms on the pages.
  • For all the WP Forms and ACF fields connections in the Duzz Portal settings pages, you do not have to have field numbers and keys for every piece of data. If you are not using the field ‘website’ for example, you do not need to update the default value. Just save it as is.
  • If you delete a field number or key from Duzz Settings that connects with WP Forms and ACF, and save it as empty, it will revert to the default value. It will never be saved as empty. If you don’t use a field, just leave it as is with the default value as it won’t affect anything if you are not using it.
  • If you have duplicate values, Duzz will give you an error message. Change the values to make them unique and then click ‘Save Changes’.
  • This plugin works best with WP Forms and Advanced Custom Fields installed. When the plugin is installed, the plugin automatically creates AFC fields if AFC is already installed. Once Duzz Custom Portal is installed, you should add two forms within WP Forms. One for customers to create a project and one for you to create a project. When you create a project it does not send an email yet to your client so you can load all your projects and check all the details before sending them an invite at a later time.
  • The plugin creates a bot that posts automatic updates to the feed when the project is updated. You can choose which data stored by ACF is not added to the feed.

External Libraries

This plugin utilizes Composer for dependency management, which means an autoloader is in place for handling PHP classes and libraries. If you’re a developer wanting to understand the structure or extend the functionality, be aware of this setup.

Composer:
Used For: Dependency management for PHP.
Source: https://getcomposer.org/
Autoloader Path: duzz-custom-portal/vendor/autoload.php
Tribute.js:
Used For: Enhancing user interactivity and creating mentions.
Source: https://github.com/zurb/tribute
Included Version: duzz-custom-portal/js/tribute.js
Featherlight:
Used For: Lightweight jQuery lightbox.
Source: https://github.com/noelboss/featherlight
Included Version: duzz-custom-portal/js/featherlight.js
Stripe:
Used For: Handling online payments.
Source: https://github.com/stripe/stripe-php
Included Version: duzz-custom-portal/vendor/stripe/stripe-php
Select2:
Used For: Making long dropdowns more user-friendly.
Source: https://github.com/select2/select2
Included Version: duzz-custom-portal/vendor/select2/select2

Feel free to review the original, non-altered source on the provided links. These libraries are included in this plugin in good faith, with the intention of enhancing functionality, and all rights and credits belong to their respective authors.