Varient - News & Magazine Script v1.7.1

by Codingest

Getting Started

Thank you for purchasing our script. If you have any questions that are beyond the scope of this help file, please feel free to email via our user page contact form here. You can also directly send an email to codingest@gmail.com by adding your purchase code to your email. Thanks so much!

Introduction

Varient is a multi-purpose news & magazine script. It has clean, responsive and user-friendly desing. You can manage almost everything in your site with its powerful Admin panel. It is multi-author system and all authors have their own panel to manage their posts, videos and audios. It is secured, SEO optimized, fast and easy to use.

The technologies used:
  • PHP CodeIgniter Web Framework
  • HTML 5
  • CSS 3 (Bootstrap)
  • JQUERY
  • AJAX
Key Features:
  • Clean and Responsive Design
  • Built Using Bootstrap
  • Totally Secure System
  • Multilingual System (New Language Can be Added Easily)
  • RTL Support
  • SEO Optimized
  • SEO-Friendly URL
  • Layout Options (Light and Dark Mode)
  • 10 Layout Colors
  • Editable & Sortable Navigation (With Mega Menu)
  • External Link & Dropdown Options for Navigation
  • Responsive & Sortable Slider
  • Responsive Ad Spaces for Any Kind of Ad Codes (Including Google AdSense)
  • Create Ad Codes
  • Adding Unlimited Fully Editable Pages
  • Show & Hide Options for Page, Page Title, Page Breadcrumb, Page Right Column
  • Gallery Page (Enable & Disable Option)
  • Gallery Albums and Categories
  • Add, Delete Photos
  • Contact Page (With Google Map)
  • Search in Site
  • Reading List Page (Add & Remove from List)
  • Featured Posts
  • News Ticker
  • Emoji Reactions
  • Add, Delete, Update Posts
  • Article, Gallery, Ordered List, Trivia Quiz, Personality Quiz, Video and Audio Post Formats
  • Scheduled Posts
  • Pending Posts
  • Drafts
  • Downloadable Files (DOC, ZIP, PDF..) for Posts
  • Add Multiple Images to a Post
  • GIF Support
  • Add, Delete, Update Categories
  • Newsletter (Send Html Email to All Registered Emails)
  • Manage Subscribers
  • Lazy Image Loading
  • Dynamic Tag System
  • Voting Poll (Add, Delete Unlimited Poll)
  • Social Login (Facebook, Google and Vkontakte)
  • Social Sharing
  • Social Media Links
  • Sidebar Widgets (Add, Delete, Update Widgets)
  • Widget: Popular Posts
  • Widget: Recommended Posts
  • Widget: Random Posts Slider
  • Widget: Tags
  • Widget: Voting Poll
  • Page view Counts (Enable & Disable Option)
  • Ajax Comment System
  • Facebook Comments
  • Comment Approval System
  • Manage Comments
  • Manage Contact Messages
  • Advanced Post Options
  • Database Cache System
  • Roles & Permissions System
  • Follow & Unfollow Users
  • Email Verification
  • Sitemap.xml Generator
  • RSS Aggregator System (Auto Update with Cron Job) (Doesn't support full-text RSS)
  • RSS Feeds (With Different Channels)
  • Font Settings (New Google Fonts Can be Added Easily)
  • Route Settings (Static Routes can be Edited)
  • Maintenance Mode
  • Rich Text Editor (Image and Video Can Be Added)
  • Membership System with 4 Roles (Admin, Moderator, Author, User)
  • Manage Registered Users
  • Ban User Accounts
  • Change User Role
  • Admin & Author Profile Page
  • Enable & Disable Membership System
  • Enable & Disable Comment System
  • Secure Authentication
  • Password Reset
  • Google Analytics
  • Advanced Settings Options
  • Visual Settings
  • Change Logo, Favicon, Site Title, Site Description, etc. from Admin Panel
  • Easy Installation Using Installation Wizard
  • Detailed Documentation
  • Runs on PHP 5.6, 7.0, 7.1, 7.2, 7.3, 7.4

Security:
Varient is a secure system. There are various mechanisms to secure application. These mechanisms are:
  • Cross-Site Request Forgery (CSRF) Prevention
  • Cross-Site Scripting (XSS) Prevention
  • Password Hashing
  • Avoiding SQL Injection

Requirements:
There are some requirements for Varient to work on your server. These requirements are:
  • PHP >= 5.6+
  • cURL PHP Extension
  • Mbstring PHP Extension

Files

a) CSS Files
  • AdminLTE.min.css and _all-skins.min.css: Contains general css codes for admin panel.
  • bootstrap-toggle.min.css: Contains bootstrap toggle css codes.
  • custom.css: Contains css fixes for admin panel.
  • style.css: Contains main css codes.
  • responsive.css: Contains reponsive css fixes.
  • colors css files: Contains color options.
  • Style.css file is separated into sections using:

    /* ============ 1. General layout CSS styles ============ */
    code
    /* ============ 2. Header ============ */
    code
    /* ============ 3. Slider ============ */
    code
    etc, etc.
b) JavaScript Files
  • jquery-1.12.4.min.js: Javascript library
  • app.min.js: This file contains general dashboard script codes.
  • bootstrap-toggle.min.js: Contains bootstrap toggle javascript codes.
  • custom.js: Contains custom script codes. There are custom functions and ajax post functions
  • jquery.cookie.js: JavaScript library for handling cookies
  • script.js: Contains javascript functions for front-end.

    Js files are separated into sections using:
    //ajax post delete image
    code
    //datatable function
    code
    etc, etc.
c) Plugins Plugins used in application:
  • jQuery
    jQuery is a Javascript library that greatly reduces the amount of code that you must write.
  • jQueryUI
    jQuery UI is a curated set of user interface interactions, effects, widgets, and themes built on top of the jQuery JavaScript Library.
  • TinyMCE
    TinyMCE is a browser-based WYSIWYG content editor.
  • Datatables
    DataTables is a plug-in for the jQuery Javascript library. It is a highly flexible tool, based upon the foundations of progressive enhancement, and will add
    advanced interaction controls to any HTML table.
  • ICheck
    Highly customizable checkboxes and radio buttons.
  • Pace
    Automatic page load progress bar.
  • Tagsinput
    jQuery plugin providing a Twitter Bootstrap user interface for managing tags
  • News Ticker
    Jquery news ticker plugin
  • Magnific Popup
    Jquery Gallery plugin
  • Owl-Carousel
    Responsive jquery slider plugin
  • Jquery-confirm
    Jquery-confirm plugin
  • Masonry-filter
    Jquery gallery plugin

License System

According to the Envato license terms, you can use this script on only one domain at the same time. Before installing, you have to create a license key for your domain from this page: http://license.codingest.com/varient-license

Your license code won't work on other domains. If you want to change your domain, you can always send an email that includes your purchase code to codingest@gmail.com. You do not need to have support for license issues. Even if you don't have support, you can send us an email for all your license problems. This is a completely free service.

Localhost License

If you want to install the script to your localhost, you can create a second license code with "http://localhost/" domain. This license code will not affect your main license code.

Moving the Site to Another Server

If you want to move your site to another server, you need to follow these steps:

  1. Move all your files on the FTP to the new directory.
  2. Export your database in ".sql" format. Create a database on your new server and import your .sql file to your new database.
  3. Open your database via phpMyAdmin and change the license code in general_settings>vr_key column.
  4. Open "application/config/database.php" file and enter your new database credentials.
    'hostname' => ' ',
    'username' => ' ',
    'password' => ' ',
    'database' => ' ',

Also, if you want to move your script to your main domain after making some changes on localhost, you can follow these steps.


Installation

Please read License System section before proceeding.

Follow these steps to install the script:

1. Create a new Database with user that has all permissions.
  • Go to cPanel and Click MySQL® Databases



  • Create New Database



  • Add New User



  • Add User To Database



  • Set User Permissions


2. Upload script files to your hosting (FTP).

  1. Open your cPanel and go to File Manager section.



  2. Go to main directory of your site. Most of the time this folder will be "public_html".



  3. Open this folder and upload codecanyon-varient-news-magazine-script.zip file to this folder.



  4. Rigth click the .zip file and select Extract option.



  5. Move all files that in the "varient-v.." folder to main directory.



  6. Delete unnecessary files/folders: "documentation", "varient-v.." and "codecanyon-varient-news-magazine-script.zip".



    .htaccess:
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?/$1 [L]

    If you see "500 Internal Server Error" after uploading files to your FTP, try to add "RewriteBase /" line to your .htaccess:

    RewriteEngine On
    RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?/$1 [L]
3. You will see this page after uploading all files to your FTP. Click "Install" to proceed. If you cannot see this page, you can access install page by entering this link to your browser address bar: http://yourdomain.com/install



4. Click "Generate License Code" button and generate your license code. Enter your license code and then click Next.



5. Check system requirements. If one of these extensions is not enabled, you must enable it from your server settings. If all requirements are provided, click Next.



6. Check folder permissions. If all folders are writable, click Next.



7. Enter your database credentials. Click next.



8. Enter your admin credentials and your Timezone. Click finish.



8. Delete the install folder.

.htaccess:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

SSL & .htaccess

If you have SSL in your site, you can redirect all links on your site to HTTPS by editing .htaccess file.

You can use the one of the following .htaccess options by editing .htaccess file that in your main directory.

Option 1: Redirecting to HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
Option 2: Redirecting to HTTPS (Without 301 redirection)
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
Option 3: Redirecting to HTTPS (A different method)
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

**Do not forget to replace "example.com" with your domain.

Option 4: Redirecting Non-www URLs to www
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
Option 5: Redirecting www URLs to Non-www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
Option 6: Redirecting to HTTPS and www
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
Option 7: Redirecting to HTTPS and Non-www
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

File Upload Settings

If you want to upload large files, you may need to make some settings on your server. Also, Varient performs image optimization while uploading images. This optimization uses memory.

If you try to upload large files without doing some settings on your server, you can get an error.

If you can't upload large files, you need to set these PHP values. These are recommended minimum values.

php_value upload_max_filesize 32M
php_value post_max_size 32M
php_value memory_limit 256M

To set these values follow the steps:

  1. Go to your cPanel and click "Select PHP Version"



  2. Then click "Switch to PHP Options"



  3. Then set the values "upload_max_filesize", "post_max_size" and "memory_limit" as you see in the picture.



Quick Start

✓  Accessing Admin Panel: After installation, you will be redirected to home page. Login with your Admin email and password. After login, you will see your username in the navigation, click your username and click "Control Panel" link on the dropdown menu.

✓  Updating Profile Information: Click your username that in the top menu and then click "Settings" link. In this page you can edit your Email Address, Username, Slug and you can add some text about yourself.

✓  Changing Admin Password: Click your username that in the top menu and then click "Settings" link. Click "Change Password" tab. Fill out the form and change you password.

✓  Updating Contact Information: Click your username that in the top menu and then click "Settings" link. Click "Contact Informations" tab. Fill out the form and update your location information.

✓  Adding Social Links to Your Profile: Click your username that in the top menu and then click "Settings" link. Click "Social Media" tab. Fill out the form and update your social links.

✓  Adding Category: Go to "Categories" section from navigation and click Categories. Then fill out the Add Category form and click Add Category button. To add subcategory, Go to "Categories" section and click Subcategories. Then fill out the Add Subcategory form and click Add Subcategory button.

✓  Adding Post: To add a post you should first add a category. After adding a category, go to "Add Post" section. Select you post format and add your post.

✓  Adding Page: Go to "Pages" section from navigation and click Add Page. Then fill out the form and click Add Page button. If you want to manage existing pages: Go to "Pages" section from navigation and click Pages. Then you will see all pages in your site. You can make any change by selecting edit option for each page.

✓  Adding Widget: Go to "Widgets" section from navigation and click Add Widget. Then fill out the form and click Add Widget button. If you want to manage existing widgets: Go to "Widgets" section from navigation and click Widgets. Then you will see all widgets in your site. You can make any change by selecting edit option for each widget.

✓  Adding Poll: Go to "Polls" section from navigation and click Add Poll. Then fill out the form and click Add Poll button.

✓  Adding Images to Gallery: To add images to gallery, first you should add some albums for images. Go to "Gallery" section from navigation and click "Albums". Then fill out the Add Category form and click Add Category button. After adding some albums, go to "Gallery" section and click Images. Then fill out the Add Image form and click Add Image button.

✓  Sending Email to Subscribers (Newsletter): To use newsletter feature, you should first make your email settings. Go to "Settings" section from navigation and click Email Settings link. Enter your mail server informations and click Save Changes button. Then go to "Newsletter" section from navigation and fill out the Send Email to Registered Emails form and click the Send Mail button.

✓  Running Ads: If you want to add your ad codes to your website, this is very easy in the Varient. Go to "Ad Spaces" section and add your ad codes then click Save Changes button.

✓  Managing Users: Go to "Users" section from navigation. You will see all users registered. You can select Change User Role, Delete User and Ban User options for each user.

✓  Adding Author: Varient is a multi-author system, so authors can add posts. To add an author to the system first user should register from register page. Then Admin should go to "Users" section from navigation and should set user role as Author. After this process user will became an Author and he can reach his own Panel to manage his posts.

Admin Panel

There are some counters in the Admin panel's home page. These counters:
  1. Posts: Shows Posts count
  2. Pending Posts: Shows Pending Posts count (Hidden post count)
  3. Drafts: Shows Drafts count
  4. Scheduled Posts: Shows Scheduled Posts count
In addition to these, there are also sections which the last five comments, last contact messages and last registered users are shown in the index page.

Themes

You can select a layout option from this section.

Pages

You can add, update or delete your pages from this section.

Add Page: Go to "Pages" section from navigation and click Add Page. Then fill out the form.
  • Title: Your page title.
  • Slug: Slug for SEO friendly url. If your page title consists of special characters your title slug will not be generated. In this case you should add custom slug.
  • Description: You can add Description (Meta Tag) for page.
  • Keywords: You can add Keywords (Meta Tag) for page.
  • Parent Link: You can select parent link.
  • Menu Order: Your pages will order according to this value.
  • Location: You can select your page link location.
  • Visibility: You can hide or show your page.
  • Show Only to Registered Users: If you want to show page only to registered users you should select yes.
  • Show Title: You can hide or show your page title.
  • Show Breadcrumb: You can hide or show your page breadcrumb.
  • Show Right Column: You can hide or show sidebar on your page.
  • Content: Your page content. You can add image and video with text editor.
Update Page: Go to "Pages" section from navigation and click Pages. You will see page list and you can make changes on pages by selecting "Edit" option for each pages.

Delete Page: On the same list you can delete pages by selecting "Delete" option for each pages.

Add Post

You can add posts from this section. After clicking "Add Post" link from the navigation, you will see post format options. You need to select one of these options to add your post.

  • Title: Post title.
  • Slug: Slug for SEO friendly URL. If you leave this field empty, the system automatically generate your title slug.
  • Summary: You can add short description about post.
  • Keywords: You can add Keywords (Meta Tag) for post.
  • Visibility: You can hide or show your post.
  • Category: You should select a category for post.
  • Subcategory: You can select a subcategory for post.
  • Show Right Column: You can hide or show right column. If you hide it, your post will be displayed full page.
  • Add to Featured: You can add your post to the featured posts.
  • Add to Breaking: You can add your post to the breaking news (newsticker).
  • Add to Slider: You can add your post to the index slider.
  • Add to Recommended: You can add your post to the recommended posts.
  • Show Only to Registered Users: If you want to show post only to the registered users you can select this option.
  • Send Post to All Subscribes (Newsletter): If you want you can send post via email to all subscribers by selecting this option.
  • Scheduled Post: You can select a future date for your posts. Your posts will be automatically published when the date you select is reached.
  • Tags: Tags for post.
  • Optional Url: If you enter a url here there will be a button in your post page to access this url.
  • Show Only to Registered Users: If you want to show post only to the registered users you can select this option.
  • Main Image: Image for post.
  • Content: Post content. You can add image and video with text editor.
Additional Images: If you want to add more than one main image to your post, you can select more images from this section. If you select an image from here, the slider will be active (There will be a slider in post details page).

Files: If you want to add downloadable files to your posts (PDF, ZIP, DOC .. etc), you can add them from this section.

Adding Video Post

You can upload or embed your video to add a video post. If you want to upload your video, you can upload it via file manager and then select it for your post. If you want to embed a video from Youtube, Vimeo, Dailymotion or Facebook, you can enter your video URL to "Video URL" field. After adding your link to this field, you need to click "Get Video" button. When you click this button, your video will be added to your post.
If you want to add a video from sites other than these sites, you can add your video embed code to the "Video Embed Code" field.


Posts

You can add, update or delete posts from this section.

Post Options

You can access post options by clickling "Select an option" button in the posts page.

  • Edit: You can edit posts with this option.
  • Add to Slider: This option will add the post to the slider.
  • Add to Featured: This option will add the post to the featured section (the four boxes at the right side of the slider).
  • Add to Breaking: This option will add the post to the breaking news (newsticker).
  • Add to Recommended: This option will add the post to the recommended posts (the posts in the sidebar of the site).
  • Delete: You can delete posts with this option.

Pending Posts

You can see the posts that have not been approved yet from this section. Admin can select "Approve" option for these posts to approve them. Also, if you select "Hide" for "Visibility" option for posts, these posts will be added to Pending Posts.

Scheduled Posts

You can see your scheduled posts from this section. Your post will be automatically published when the date you select is reached. If you want to publish immediately, you can click "Publish" option.

You need to create a cron job function to automatically publish your posts. Read this section to see how you can add a cron job function in your server: Cron Job

This is the URL that you need to run with your cron job function: http://domain.com/cron/check-scheduled-posts
**Do not forget to change "domain.com" with your domain name.

Drafts

You can see drafts (the posts not yet added) from this section.

RSS Feeds

You can add, update or delete RSS Feeds from this section.

Import RSS Feed

Go to "RSS Feeds" section from navigation and click Import RSS Feed. Then fill out the form.

  • Feed Name: Feed name.
  • Feed URL: You should enter a valid RSS Feed URL to this field.
  • Number of Posts to Import: You can define posts count that you want to add your site.
  • Category: Posts will be added to category that you selected.
  • Subcategory: Posts will be added to subcategory that you selected.
  • Images: If you want to download the images to your server, you need to select "Download Images to My Server" option. If you don't want to download the images, you need to select "Show Images from Original Source" option
  • Auto Update: You can select this option if you want to update with Cron Job.
  • Show Read More Button: You can hide or show Read More button with this option.
  • Add Posts as Draft: You can add your posts as draft by selecting this option.
  • Read More Button Text: You can add a text for the Read More button.

Update Feed

Go to "RSS Feeds" section from navigation and click RSS Feeds. You will see RSS feeds list and you can make changes on RSS feed by selecting "Edit" option for each RSS feeds.

Delete Feed

On the same list you can delete RSS feeds by selecting "Delete" option for each RSS feeds.

Cron Job

You need to create a cron job function to automatically add posts from your RSS feed. Read this section to see how you can add a cron job function in your server: Cron Job

This is the URL that you need to run with your cron job function: http://domain.com/cron/update-feeds
**Do not forget to change "domain.com" with your domain name.

Categories

You can add, update or delete categories from this section.

Add Category

Go to "Categories" section from navigation and click Categories. Then fill out the Add Category form.

  • Category Name: Category name.
  • Category Slug : Slug for SEO friendly url. If your category name consists of special characters your slug will not be generated. In this case you should add custom slug.
  • Category Description: You can add Description (Meta Tag) for category.
  • Category Keywords: You can add Keywords (Meta Tag) for category.
  • Category Color: You should select a color for category. This color will be used for your category block color and category label color.
  • Menu Order: Your categories will be listed according to this order.
  • Show on Menu: You can show or hide your categories on the menu.
  • Show at Homepage: You can show or hide your categories at Homepage.
  • Category Block Style: You should select a block style for category.

Update Category

Go to "Categories" section from navigation and click Categories. On the category list you can make changes on categories by selecting "Edit" option for each categories.

Delete Category

On the same list you can delete categories by selecting "Delete" option for each categories.

Subcategories

You can add, update or delete subcategories from this section

Add Subcategory

Go to "Categories" section from navigation and click Subcategories. Then fill out the Add Subcategory form.

  • Category Name: Category name.
  • Category Slug : Slug for SEO friendly url. If your category name consists of special characters your slug will not be generated. In this case you should add custom slug.
  • Category Description: You can add Description (Meta Tag) for category.
  • Category Keywords: You can add Keywords (Meta Tag) for category.
  • Parent Category: You should select a top (parent) category.

Update Subcategory

Go to "Categories" section from navigation and click Subcategories. On the category list you can make changes on categories by selecting "Edit" option for each categories.

Delete Subcategory

On the same list you can delete categories by selecting "Delete" option for each categories.

Widgets

You can add, delete or update sidebar widgets from this section.

Add Widget

Go to "Widgets" section from navigation and click Add Widget. Then fill out the form.

  • Widget Title: Widget title.
  • Widget Order: Widgets will be listed according to this order.
  • Widget Visibility: You can hide or show a widget.
  • Content: Widget content.

Update Widget

Go to "Widgets" section from navigation and click Widgets. On the widget list you can make changes on widgets by selecting "Edit" option for each widgets.

Delete Widget

On the same list you can delete widgets by selecting "Delete" option for each widgets.

Polls

Varient has poll feature. You can add unlimited polls and you can manage these polls from this section.

Add Poll: Go to "Polls" section from navigation and click Add Poll. Then fill out the form.
  • Question: Poll question.
  • Options: Options for your question.
  • Status: You can enabled or disabled a poll.
Update Poll: Go to "Polls" section from navigation and click Polls. On the poll list you can make changes on polls by selecting "Edit" option for each polls.

Delete Poll: On the same list you can delete poll by selecting "Delete" option for each polls.

Contact Messages

You can see the messages that users sent from the contact form on the site from this section.
If you want to delete a message from list, click the Select an option button and click delete.

Comments

Varient has comment approval system. Only approved comments will be published in the site. If you want to disable this system and publish directly all the comments, you can disable this system from "Preferences" section in the Admin panel.

Pending Comments

You can see and approve the pending comments from this section.

Approved Comments

You can see and delete the approved comments from this section.

Newsletter

The Newsletter allows you to share some updates and interesting things with the users.
You can see the all subscribers and you can send an email to these emails from this section.

Ad Spaces

If you want to run ads on the site, you can add your ad codes from this section.
Because the ad spaces are responsive, you need to enter the code at different metrics for each ad.
Also you can create your ad codes by uploading banner image and adding ad URL.

Our ad spaces are responsive. Each ad slot has 3 different sizes.

728x90 Banner: This ad slot will be shown on screens larger than 1140px.
468x60 Banner: This ad slot will be shown on screens larger than 540px and smaller than 1140px.
234x60 Banner: This ad slot will be shown on screens smaller than 540px.

AdSense Activation Code

You can add your Google Adsense code from this section. This code will be added to footer of the site and it will be enabled for all pages. After adding this code, you can add your ad codes to ad spaces.

Users

You can manage registered users from this section. Go to "Users" section from navigation.

Options

  • Change User Role: If you want to change user role you can use "Change User Role" option.
  • Confirm User Email: You can verify a user email with this option.
  • Ban User: If you want to ban a user you can use "Ban User" option.
  • Edit: You can edit a user by selecting edit option.
  • Delete: You can delete a user by selecting delete option.

There are 4 roles in the system and you can manage permissions for these roles from "Roles & Permissions" section.

Add User

You can add a new user from this section.

Administrators

You can see administrators from this section.

Password Reset

To use the Password Reset section, you need to make your Email Settings. The system will send a password reset link, so it is necessary to enter a working email server credentials to use email system. You can read more about email settings from here.

If you have not set up your email settings yet and have forgotten your password, you can reset your password from your database.
To do this, open your database via phpMyAdmin. Click on the users table and find your account in this table. Paste the following code to your password column. Make sure there is no space at the beginning or the ending of the code.

$2a$08$drmgGpMVGzdyiv7q5LUt3eUne8xh05XKrJPgMKaR3RgRwCQKXZpdu
After adding this code to your password column, you can login with "1234" password.

Roles & Permissions

Varient is a multi-author system, so there are different roles in the system. These roles are: Admin, Moderator, Author and User.

You can set permissions for these roles from this section.

Seo Tools

You can manege your site title, site keywords, site description etc. from this section.

  • Site Title: You site title.
  • Home Title: Your homepage title.
  • Site Description: Your site description.
  • Keywords: Your site keywords.
  • Google Analytics: You can add your Google Analytics code from here.

Generate Sitemap

You can generate a sitemap.xml file from this section.

Update Sitemap: This option will create a sitemap.xml file on your main directory. You can access this file with "http://domain.com/sitemap.xml" URL.

Download Sitemap: This option will download sitemap.xml file.

You need to create a cron job function to automatically update your sitemap. Read this section to see how you can add a cron job function in your server: Cron Job

This is the URL that you need to run with your cron job function: http://domain.com/cron/update-sitemap
**Do not forget to change "domain.com" with your domain name.

Social Login Settings

You can make your social login settings from this section.

Facebook Login

  1. Go to https://developers.facebook.com/ URL.
  2. Click "Create App" option.



  3. Fill the form and click "Create App ID" button.



  4. Select "Facebook Login" option.



  5. Select "Web" option.



  6. Enter your site URL and click "Save" button. It should be a HTTPS URL. E.g: https://varient.codingest.com/



  7. Click "Facebook Login > Settings" link from sidebar menu.
    Enter redirect URL: "https://domain.com/facebook-callback" and click "Save Changes" button.



  8. Click "Settings > Basic" link from sidebar menu.
    Enter your domain to "App Domains" and "Privacy Policy URL" fields.
    Select a category for your application and click "Save Changes" button.



  9. Change your APP Status to "Live".
    Copy "App ID" and "App Secret" values from this page and enter these values from "Social Login Configuration" section.

Google Login

  1. Go to https://developers.google.com/identity/sign-in/web/sign-in URL.
  2. Click "Configure a Project" button.



  3. Select "+ Create a new project" option and enter your project name. Click Next.



  4. Enter a display name for your app. Click Next.



  5. Select "Web server" option and enter your redirect URL: "https://domain.com/connect-with-google". Click Create.



  6. Copy "Client ID" and "Client Secret" values and enter these values from "Social Login Configuration"section. Click Done.

VK Login

  1. Go to https://vk.com/dev URL.
  2. Click "My Apps" link.



  3. Click "Create Application" button.



  4. Select "Website" option and enter your domain to "Website address" and "Base domain" fields. Click "Connect Site" button.



  5. Enter redirect URL to "Authorized redirect URI" field: "https://domain.com/connect-with-vk"
    Copy "App ID" and "Secure Key" values and enter these values from "Social Login Configuration" section.

Cache System

You can enable or disable cache system from this section.
  • Refresh Cache Files When Database Changes: If you select yes, the cache files will be refreshed, if there is a change in the database.
  • Cache Refresh Time (Minute) : Cache files will automatically refresh after this time.

Cron Job

A cron job is a Linux command for scheduling a task to be executed sometime in the future. You can set a cron job to update your sitemap, scheduled posts or RSS feeds periodically.

Follow these steps to set up cron job:

  1. Go to your cPanel and click cron jobs.



  2. Select the time interval that the cron job will run and your command and create the cron job.



    Commands

    Update Sitemap:
    wget -O /dev/null http://domain.com/cron/update-sitemap
    Check Scheduled Posts:
    wget -O /dev/null http://domain.com/cron/check-scheduled-posts
    Update RSS Feeds:
    wget -O /dev/null http://domain.com/cron/update-feeds

    You need to paste these commads to "Command" field and you need to create a different cron job for each task.
    **Do not forget to change "domain.com" with your domain name.

Preferences

You can manage your site settings from this section.

General

  • Multilingual System: You can enable or disable multilingual system in your site.
  • Registration System: You can enable or disable registration system in your site.
  • RSS: You can enable or disable RSS in your site.
  • Newsletter: You can enable or disable newsletter in your site.
  • File Manager: You can show all files to all users or you can show only users own files with this option.
  • Audio Download Button: If you want to enabled download option for the audios that you uploaded, you can enable this option.

Homepage

  • Show Featured Section: You can show or hide featured (slider and the four boxes at the right of the slider) section in your site.
  • Show Latest Posts on Homepage: You can show or hide latest posts on your homepage.
  • Show News Ticker: You can show or hide news ticker.
  • Sort Slider Posts: You can sort slider posts with by date or slider order with this option. If you select "by Date" option, last added posts will be displayed on your slider.
  • Sort Featured Posts: You can sort featured posts with by date or featured order with this option. If you select "by Date" option, last added posts will be displayed on your featured posts section.

Posts

  • Comment System: You can enable or disable comment system in your site.
  • Comment Approval System: You can enable or disable comment approval system with this option. If you disable this system, the comments will be directly displayed in your site.
  • Facebook Comments: You can enable or disable Facebook comments in your site.
  • Emoji Reactions: You can enable or disable emoji reactions in your site.
  • Show Post Author: You can show or hide post author.
  • Show Post Date: You can show or hide post date.
  • Show Post View Count: You can show or hide post page view count.
  • Approve Added User Posts: If you enable this option, new added users posts will require approval.
  • Approve Updated User Posts: If you enable this option, updated users posts will require approval.
  • Number of Posts Per Page (Pagination): You can set post count in each page from this field.

Post Formats

You can enable or disable post formats from this section.

Route Settings

You can change static routes in your site from this section.

Email Settings

You can make your email settings from this section. To send emails, you must create a mail account on your server and you must enter your email account credentials to these fields. Also, you can use Gmail server to send emails.

  • Mail Library: Varient has 3 different email libraries. You can select one of them to send emails.
  • Mail Protocol: Your mail protocol (SMTP or Mail). Default SMTP. But some mail servers use Mail protocol. In this case you should set this value to Mail.
  • Mail Title: Your email title
  • Mail Host: Your mail server (E.g: mail.example.com)
  • Mail Port: Your mail port (Default: 587)
  • Mail Username: Your username (E.g: mail@example.com)
  • Mail Password: Your password
Sending Email with SMTP:
If you want to send emails with SMTP, you can select one of the email libraries from "Mail Library" field. Also, you must select "SMTP" from "Mail Protocol" field.

Sending Email with PHP Mail Function:
If you want to send emails with PHP Mail Function, you must select "CodeIgniter Mail" from "Mail Library" field and you must select "Mail" from "Mail Protocol" field.



Using Gmail Mail Server

1. Mail Library

If you select "Swift Mailer" or "PHP Mailer", you need to use these settings:

Mail Protocol: SMTP
Mail Host: smtp.gmail.com
Mail Port: 587
Mail Username: example@gmail.com (your email)
Mail Password: your email password
If you select "CodeIgniter Mail", you should use these settings:

Mail Protocol: SMTP
Mail Host: ssl://smtp.googlemail.com
Mail Port: 465
Mail Username: example@domain.com (your email)
Mail Password: your email password
  
2. You have to allow less secure devices from this url: https://myaccount.google.com/lesssecureapps

3. Go to settings in your Gmail account and click "Forwarding and POP/IMAP" tab.



4. Select Enable IMAP option.



After these settings you can use Gmail to send emails.


Using Yandex Mail Server

If you want to use Yandex mail server to send emails, you can use these settings:

Mail Library: Swift Mailer, PHP Mailer or CodeIgniter Mail
Mail Protocol: SMTP
Mail Host: smtp.yandex.com
Mail Port: 587
Mail Username: example@yandex.com (your email)
Mail Password: your email password



Email Verification: You can enable or disable email verification from this section.

Contact Messages : If you want to send contact messages to your email address, you can select "Yes" for "Send Contact Messages to Email Address" option by adding your email address.

Visual Settings

You can make your visual settings from this section.

  • Site Color: General site color
  • Top Header and Block Heads Color: Header and block background colors
  • Post Item Block Style: If you select first option, your posts will be listed vertically. If you select second option, your posts will be listed horizontally.
  • Logo: You can change your logo from here.
  • Logo Footer: You can change your footer logo from here.
  • Logo Email: You can change your email logo from here.
  • Favicon: You can change your favicon from here.

Font Settings

You can change your site fonts from this section.

Add Font

If you want to add new fonts to your site, you can add them from this section. Follow these steps to add a new font:

  1. Go to Google Fonts: https://fonts.google.com
  2. Click the red plus icon for the font that you want to add.
  3. You will see "Family Selected" box at the right bottom of the page. Click on this box.
  4. Copy the font URL and enter it to "URL" field.
    E.g: <link href="https://fonts.googleapis.com/css?family=Open+Sans&display=swap" rel="stylesheet">
  5. Copy the CSS rule and enter it to "Font Family" field.
    E.g: font-family: 'Open Sans', sans-serif;

Language Settings

Default Language: You can change your site default language with this option.

Text Editor Language: You can change your text editor language with this option.

Add Language: You can add a new language from this form.

Languages: You can see your languages on this table and you can update or delete a language. Also you can edit all translations in your language. You can access this page with "Edit Translations" button.

Genaral Settings

Genaral Settings

  • Timezone: You can set your timezone from this field.
  • Application Name: Your site name.
  • Footer About Section: About your site. This will be shown in the footer.
  • Post Optional Url Button Name: You can set a new name for your optional button.
  • Copyright: You can update copyright section from here.

Contact Settings

  • Address: Your address
  • Email: Your email address
  • Phone: Your phone number
  • Contact Text: You can add some text about contact.

Social Media Settings

You can add your social links from this section.

Facebook Comments

If you want to use Facebook comment plugin you have to add your plugin code to this section.

How to Get This Code:
  1. Go to https://developers.facebook.com and click Add a new app.
  2. Click Settings and then click +Add platform.
  3. Select website and enter your site url and click save changes.
  4. Then go to https://developers.facebook.com/docs/plugins/comments/ URL. Enter your site URL to "URL to comment on" field. Enter 750 to "Width" field and click Get Code button.
  5. Then copy the code in the "STEP 1" and paste to Facebook Comments field.

Cookies Warning

You can show a warning for using cookies from this section.

Custom CSS Codes

You can add custom CSS codes from this section. These codes will be added in the <head> tags of your site.

You need to add your CSS codes between <style></style> tags.
Example:

<style>
body {
background-color: #00a65a;
}
</style>

Custom JavaScript Codes

You can add custom JavaScript codes from this section. These codes will be added to footer of your site.

You need to add your JavaScript codes between <script></script> tags.
Example:

<script>
alert('Hello!'); </script>

Google reCAPTCHA

Varient uses Google reCAPTCHA to protect website from spam and abuse. To enable this feature:

  1. Go to this link: https://www.google.com/recaptcha/intro/v3beta.html
  2. Click Admin Console button.
  3. Click "+" button at the top menu.
  4. Select "reCAPTCHA s2" and "I'm not a robot Checkbox" options and generate your API keys.

Maintenance Mode

If you want to prepere your site before going live or if you want to close your site to visitors, you can enable this mode. If you enable it, only Admin can access the site. Other visitors will see a "Coming Soon!" text.

Editing Script Codes

Editing codes is not included in item support. If you want to edit the script codes, you need to edit the codes by yourself or you need to ask help from a PHP developer.

Editing HTML Codes

If you want to edit the HTML codes, you can edit the files in the "application/views" folder.

Header: You can edit header of the site in the "application/views/partials/_header.php" file. <head></head> tags are located in this file. If you want to add something between these tags, you need to edit this file.

Index: You can edit homepage of the site in the "application/views/index.php" file.

Footer: You can edit footer of the site in the "application/views/partials/_footer.php" file.

Editing CSS Codes

If you want to edit the CSS codes, you can edit "assets/css/style.min.css" file. If you are using the Chrome browser, you need to reset the browser cache to see the changes.



Update Guide

You can find all instructions to update your site in this section. If you don't know your current version, you can check it from the version.txt file in the main directory of your site.

Update from v1.7 to v1.7.1

1. Open your FTP and replace these files with files in the version 1.7.1:

application/controllers/Home_controller.php
application/controllers/Post_controller.php
application/controllers/Ajax_controller.php
application/controllers/Auth_controller.php

application/models/Auth_model.php
application/models/Sitemap_model.php
application/models/Post_model.php
application/models/Rss_model.php
application/models/Post_admin_model.php
application/models/Tag_model.php

application/helpers/custom_helper.php
application/helpers/post_helper.php
application/config/config.php
application/config/routes.php
application/core/Core_Controller.php

application/views/reading_list.php
application/views/post/_post_share_box.php
application/views/post/post.php
application/views/partials/_header.php
application/views/partials/_footer.php
application/views/partials/_featured_slider.php
application/views/partials/_sidebar_widget_popular_posts.php
application/views/partials/_sidebar_widget_recommended_posts.php
application/views/admin/post/pending_posts.php
application/views/admin/post/posts.php
application/views/admin/index.php

assets/css/rtl.css
assets/css/rtl.min.css
assets/admin/css/rtl.css
assets/admin/css/custom.css

2. Upload "varient-v1.7.1/assets/css/style-1.7.1.css" and "varient-v1.7.1/assets/css/style-1.7.1.min.css" files to "/assets/css" folder in your FTP.

3. Add this line to "application/language/default/site_lang.php" file:
$lang["all_time"] = "All Time";

If you have other languages, you also need to add this line for your other languages.

4. Upload "documentation/updates/.htaccess" to "uploads" folder in your FTP.

5. Clear your browser cache. This is important. If you do not clear, your browser may continue to run old codes.


** If you don't want to update your site like this, you can update your site by following all steps in the Updating FTP Files (Click Here) section. If you update all your files with this method, your site will be updated to version 1.7.1.

Update from v1.6.x to v1.7.1

  1. Follow all steps in the Updating FTP Files section.
  2. Follow all steps in the Updating Database section. You can find update_database.php file in the "documentation/updates/Update from v1.6.x to v1.7.1" folder.
  3. If you've added additional languages, you need to add the new added phrases to your language files. To do this, open "documentation/updates/Update from v1.6.x to v1.7.1/new_phrases.txt" file, copy all text in this file and paste it to end of "application/language/language_folder/site_lang.php" file.
  4. Clear your browser cache. This is important. If you do not clear, your browser may continue to run old codes.

Update from v1.5.x to v1.7.1

  1. Follow all steps in the Updating FTP Files section.
  2. Follow all steps in the Updating Database section. You can find update_database.php file in the "documentation/updates/Update from v1.5.x to v1.7.1" folder.
  3. If you've added additional languages, you need to add the new added phrases to your language files. To do this, open "documentation/updates/Update from v1.5.x to v1.7.1/new_phrases.txt" file, copy all text in this file and paste it to end of "application/language/language_folder/site_lang.php" file.
  4. Clear your browser cache. This is important. If you do not clear, your browser may continue to run old codes.

Update from v1.4.x to v1.7.1

  1. Follow all steps in the Updating FTP Files section.
  2. Follow all steps in the Updating Database section. You can find update_database.php file in the "documentation/updates/Update from v1.4.x to v1.7.1" folder.
  3. If you've added additional languages, you need to add the new added phrases to your language files. To do this, open "documentation/updates/Update from v1.4.x to v1.7.1/new_phrases.txt" file, copy all text in this file and paste it to end of "application/language/language_folder/site_lang.php" file.
  4. Clear your browser cache. This is important. If you do not clear, your browser may continue to run old codes.

Update from v1.3.x to v1.7.1

  1. Follow all steps in the Updating FTP Files section.
  2. Follow all steps in the Updating Database section. You can find update_database.php file in the "documentation/updates/Update from v1.3.x to v1.7.1" folder.
  3. If you've added additional languages, you need to add the new added phrases to your language files. To do this, open "documentation/updates/Update from v1.3.x to v1.7.1/new_phrases.txt" file, copy all text in this file and paste it to end of "application/language/language_folder/site_lang.php" file.
  4. Clear your browser cache. This is important. If you do not clear, your browser may continue to run old codes.

Updating FTP Files

  1. Open your cPanel and go to File Manager section.



  2. Go to main directory of your site.



  3. Create a new folder named "old". You can use another name. It won't make any differences.



  4. Move all of your files to this folder.



  5. Upload "codecanyon-varient-news-magazine-script.zip" file to this directory.



  6. Rigth click the .zip file and select "Extract" option.





  7. Move all files that in the "varient-v.." folder to main directory.



  8. Delete unnecessary files/folders: "documentation", "uploads", "varient-v..", "install" and "codecanyon-varient-news-magazine-script.zip".



  9. Copy old/uploads folder to main directory.



  10. Open application/config/database.php file and enter your database credentials.



  11. If you added new languages to your site, you need to copy your language files from your old files. To do this, open old/application/language folder and copy your language folder(s) to application/language folder. You don't need to do this for "default" folder.



Updating Database

  1. Upload update_database.php file to your main directory.



  2. Open your browser and enter this URL: yourdomain.com/update_database.php
    Example:



  3. When you go to this URL, you will see an update wizard. Enter your license code and Click Update My Database button.



  4. After you see the success message, close this page and delete "update_database.php" file.