Category: Wordpress

  • WPCreator – The Ultimate WordPress Membership Plugin for Creators and Businesses

    WPCreator – The Ultimate WordPress Membership Plugin for Creators and Businesses

    Whether you’re a content creator, coach, educator, or run a digital business — WPCreator is the all-in-one WordPress membership plugin that helps you build a seamless and flexible subscription system powered by WooCommerce.

    Designed with simplicity and scalability in mind, WPCreator empowers you to control access, monetize your content, and manage subscribers — all from your WordPress dashboard.


    🎯 Why Choose WPCreator?

    WPCreator isn’t just another plugin. It’s a carefully crafted, developer-friendly solution packed with powerful features that offer complete control over your membership system.

    Whether you’re offering exclusive content, premium communities, or coaching sessions — WPCreator makes managing members and subscriptions effortless and intuitive.


    ✨ Features That Make WPCreator Stand Out

    • Create Custom Membership Plans – Use WooCommerce products to define unique subscription packages.
    • Frontend Membership Dashboard – Users can manage subscriptions, view history, and monitor their membership access from a central dashboard.
    • Access Control – Easily restrict access to posts, pages, or custom post types using metabox fields.
    • WooCommerce Integrated – Handle coupons, payments, cancellations, and refunds through WooCommerce’s reliable system.
    • Membership Cancellation & Logging – Automatically log subscriptions or cancellation actions.
    • Developer Hooks & Filters – Extend plugin behavior with well-documented actions and filters.

    🧩 Flexible & Extendable

    WPCreator is designed to grow with your needs. While the basic version is powerful, upcoming Pro Add-ons will unlock advanced capabilities such as:

    • One-on-one text, audio, or video support for members
    • Custom onboarding fields for member profiles
    • Drip content scheduling
    • Advanced usage analytics and reporting

    📘 How to Get Started with WPCreator

    Getting started is simple and quick. Just follow these steps:

    1. Install and activate the WPCreator plugin.
    2. Ensure WooCommerce is installed and configured.
    3. Create WooCommerce products and mark them as membership packages.
    4. Use the shortcode [wpcm_dashboard] on a page to display the user dashboard.
    5. Use metabox fields on the posts, pages, or custom post types to limit content visibility to specific membership packages.

    🚀 Try WPCreator Today

    If you’re looking for a reliable, customizable, and developer-friendly membership solution for WordPress — look no further than WPCreator.

    Start building your member-driven platform today with a plugin that grows with your business!

    👉 Download WPCreator now and transform your WordPress site into a powerful subscription platform.


  • 12 Most In-Demand Custom WordPress Plugins Buyers Want in 2025

    The demand for custom WordPress plugins is skyrocketing as businesses seek tailored solutions to enhance their websites. Whether you’re a freelancer or an agency, knowing what buyers need can help you create high-value plugins that sell.

    Here are the 12 most in-demand types of WordPress plugins buyers frequently request:

    1. E-Commerce & WooCommerce Customization

    With WooCommerce powering millions of online stores, buyers often need custom enhancements:

    • Custom Checkout Fields & Process Modifications (e.g., conditional fields, custom payment gateways)
    • Dynamic Pricing & Discounts (e.g., role-based pricing, BOGO offers)
    • Subscription & Membership Plugins (e.g., recurring payments, restricted content)
    • Product Add-ons & Customization (e.g., product configurators, custom engraving options)

    2. Booking & Appointment Systems

    Service-based businesses require custom booking solutions, such as:

    • Advanced Booking Plugins (multi-vendor booking, dynamic pricing)
    • Doctor, Lawyer, or Salon Appointments (calendar integration, SMS/email reminders)
    • Event Management Plugins (ticketing, attendee management)

    3. LMS (Learning Management System) & Course Management

    With online learning booming, course creators need:

    • LearnDash or LifterLMS Customization (dynamic certificates, unique course enrollment rules)
    • Gamification & Engagement Plugins (badges, points, leaderboards)
    • Student Progress Tracking & Analytics (detailed reports, learning paths)

    4. Membership & User Role Management

    Custom membership functionalities include:

    • Custom User Role Plugins (multi-tier memberships, front-end login/dashboard)
    • Content Restriction Plugins (restrict pages based on user roles or subscriptions)
    • Multi-Vendor & Directory Plugins (marketplace membership systems)

    5. SEO & Performance Optimization

    Websites need speed and ranking improvements:

    • Custom SEO Plugins (schema markup, bulk meta updates)
    • Image Optimization & Lazy Loading (auto image compression, WebP conversion)
    • Caching & Speed Optimization (advanced caching beyond WP Rocket or W3TC)

    6. Custom Dashboard & Admin Enhancements

    For a better admin experience:

    • White-Label Admin Panels (custom branding for clients)
    • Advanced Analytics & Reporting Dashboards (WooCommerce sales reports, user activity logs)
    • Role-Based Admin Interface Customization (simplified UI for non-tech users)

    7. Payment Gateway & Subscription Management

    Businesses need flexible payment solutions:

    • Custom Payment Integrations (local payment gateways, crypto payments)
    • Donation & Crowdfunding Plugins (recurring donations, donation goals)
    • Multi-Currency Support (auto currency switch based on location)

    8. Social & Community Plugins

    For better engagement and networking:

    • Social Login & Registration Enhancements (Google/Facebook login, OTP verification)
    • User Reviews & Reputation Systems (verified reviews, star ratings)
    • Custom Social Networking Features (BuddyPress or PeepSo add-ons)

    9. Custom Post Types & Content Management

    For niche content structures:

    • Custom Directory & Listings (business directories, real estate listings)
    • Job Board & Resume Submission (job portals, candidate management)
    • Knowledge Base & Documentation Plugins (interactive FAQs, wiki-style articles)

    10. AI & Automation Plugins

    AI-driven solutions are trending:

    • AI Chatbots & Support Systems (AI-powered FAQs, WhatsApp bots)
    • Content Generation & Auto Blogging (AI-generated posts, auto-import from RSS)
    • Automated Lead Collection & CRM Integrations (HubSpot, Salesforce integrations)

    11. Security & Compliance Plugins

    Web security is a top concern:

    • GDPR & Privacy Compliance Plugins (cookie consent, data request handling)
    • Custom Login & Two-Factor Authentication (OTP, biometric login)
    • Firewall & Anti-Spam Solutions (custom security rules, brute-force attack prevention)

    12. API & Third-Party Integrations

    Connecting WordPress with external tools:

    • Custom API Connections (sync with CRMs, automation tools)
    • Zapier & No-Code Automation Plugins (webhook triggers, task automation)
    • Multi-Platform Synchronization (syncing WordPress with Shopify, Etsy, Google Sheets)

    Final Thoughts

    If you’re a WordPress developer, focusing on these high-demand plugin categories can help you attract more buyers. Whether on Fiverr, Upwork, or your own store, custom solutions are in demand. Which of these plugins will you develop next?

  • Master WordPress Plugin Development from Scratch – Urdu/Hindi Course on Udemy

    Are you ready to take your WordPress development skills to the next level? If you’ve ever wanted to create custom plugins for WordPress, now is the perfect opportunity! My Udemy course, Learn WordPress Plugin Development from Scratch – Urdu/Hindi, is designed to help beginners and intermediate developers understand the core concepts of plugin development in a step-by-step manner.

    Why Learn WordPress Plugin Development?

    WordPress powers over 40% of all websites on the internet, and plugins play a crucial role in enhancing website functionality. Whether you want to create custom solutions for your clients, contribute to the WordPress plugin repository, or start selling premium plugins, mastering plugin development is a valuable skill.

    What You’ll Learn in This Course

    In this course, you’ll gain hands-on experience with:

    • WordPress Plugin Basics – Understanding the fundamentals of plugins and their role in WordPress.
    • Hooks & Filters – Mastering WordPress action hooks and filters for customizing core functionalities.
    • Custom Post Types & Taxonomies – Creating structured content beyond default WordPress posts and pages.
    • Shortcodes & Widgets – Adding dynamic features to your plugins with shortcodes and custom widgets.
    • Database Interaction – Using the WordPress database efficiently for storing plugin-related data.
    • Security Best Practices – Ensuring your plugins are secure and optimized for performance.
    • Building a Real-World Plugin – A practical explanation of all concepts required to build a real-world WordPress plugin.

    Why Choose This Course?

    • Taught in Urdu/Hindi – A perfect choice for native speakers looking for a structured learning experience.
    • Lifetime Access – Enroll once and get lifetime updates and access to the course content.
    • Practical Learning Approach – Real-world examples and hands-on exercises to help you apply your knowledge effectively.
    • Instructor Support – Get your questions answered directly by me through the Udemy Q&A section.

    Who Should Enroll?

    • WordPress developers looking to expand their skill set.
    • Freelancers who want to create custom solutions for clients.
    • Bloggers and website owners who want to customize their WordPress websites.
    • Anyone interested in building and selling WordPress plugins.

    Enroll Today and Start Your Journey!

    Don’t miss this opportunity to enhance your WordPress development skills. Join the course today and start building powerful WordPress plugins from scratch.

    👉 Enroll Now on Udemy

    Have questions? Feel free to reach out, and I’ll be happy to help!

  • How to Track and Display Post Views in WordPress Using a Custom Plugin

    Tracking post views in WordPress is a great way to measure engagement on your blog. Instead of relying on third-party analytics tools, you can create a custom WordPress plugin to track and display post views efficiently. In this guide, we will walk through the process of building a plugin that:

    • Tracks post views each time a visitor views a post.
    • Displays the view count before the post content.
    • Adds a column in the WordPress admin panel to see the views for each post.
    • Includes a shortcode to manually place the view count anywhere.

    Step 1: Create the Plugin File

    First, create a new folder named post-view-tracker in your WordPress wp-content/plugins/ directory. Inside this folder, create a PHP file named post-view-tracker.php and open it in a text editor.

    Add the following plugin header:

    <?php
    /**
     * Plugin Name: Post View Tracker
     * Plugin URI:  https://codoplex.com
     * Description: Tracks and displays post views dynamically using 'the_content' filter.
     * Version: 1.0
     * Author: Junaid Hassan
     * Author URI: https://codoplex.com
     * License: GPL2
     */
    
    if (!defined('ABSPATH')) exit; // Exit if accessed directly
    

    This registers the plugin with WordPress.

    Step 2: Track Post Views

    We need to track post views when a visitor reads a blog post. We’ll store the view count in the post meta.

    // Function to track post views
    function pvt_track_post_views() {
        if (is_single()) {
            global $post;
    
            if (!isset($post->ID)) return;
    
            // Avoid counting views from admins
            if (current_user_can('edit_posts')) return;
    
            $post_id = $post->ID;
            $views = get_post_meta($post_id, '_post_views', true);
            $views = ($views) ? (int) $views + 1 : 1;
    
            update_post_meta($post_id, '_post_views', $views);
        }
    }
    add_action('wp', 'pvt_track_post_views');
    

    Step 3: Display Post Views Before Content

    Now, let’s modify the_content filter to prepend the post views before the post content.

    // Function to get post view count
    function pvt_get_post_views($post_id) {
        $views = get_post_meta($post_id, '_post_views', true);
        return $views ? $views : 0;
    }
    
    // Function to prepend post views to the content
    function pvt_prepend_views_to_content($content) {
        if (is_single()) {
            global $post;
            if (!isset($post->ID)) return $content;
    
            $views = pvt_get_post_views($post->ID);
            $views_html = "<p class='post-views' style='font-size: 14px; color: #555;'>Views: {$views}</p>";
    
            return $views_html . $content;
        }
        return $content;
    }
    add_filter('the_content', 'pvt_prepend_views_to_content');
    

    Step 4: Create a Shortcode for Custom Placement

    If you want to manually place the view count inside a post or widget, use this shortcode:

    // Shortcode to manually display post views anywhere
    function pvt_post_views_shortcode() {
        global $post;
        if (!isset($post->ID)) return '';
    
        $views = pvt_get_post_views($post->ID);
        return "<span class='post-views'>Views: {$views}</span>";
    }
    add_shortcode('post_view_count', 'pvt_post_views_shortcode');
    

    Use Views: 40 anywhere inside a post, page, or widget to display the view count.

    Step 5: Show Views in the WordPress Admin Panel

    To display the post view count in the WordPress Posts list, add the following code:

    // Add view count column in the admin post list
    function pvt_add_views_column($columns) {
        $columns['post_views'] = 'Views';
        return $columns;
    }
    add_filter('manage_posts_columns', 'pvt_add_views_column');
    
    function pvt_display_views_column($column, $post_id) {
        if ($column == 'post_views') {
            echo pvt_get_post_views($post_id);
        }
    }
    add_action('manage_posts_custom_column', 'pvt_display_views_column', 10, 2);
    

    This will add a “Views” column in WP Admin > Posts, showing the view count for each post.

    Step 6: Activate the Plugin

    1. Save your file as post-view-tracker.php inside the post-view-tracker folder.
    2. Go to WordPress Dashboard > Plugins.
    3. Find “Post View Tracker” and click Activate.

    Now, your post views will be tracked and displayed automatically!

    Conclusion

    This simple yet powerful Post View Tracker Plugin allows you to track and display post views dynamically in WordPress without modifying theme files. With features like automatic tracking, dynamic display, shortcode support, and admin panel integration, it provides an efficient way to measure engagement on your blog posts.

    💡 Want to customize the view display? Modify the pvt_prepend_views_to_content() function with custom HTML/CSS styling.

    If you found this tutorial helpful, share it with fellow WordPress users and let me know if you need any enhancements! 🚀

  • How to Create a Custom Store Categories Page in WordPress Without a Child Theme

    If you’re using the ClipMyDeals theme for your WordPress website and need a custom store categories page, you might initially consider modifying the theme files. However, creating a child theme can sometimes lead to unwanted styling changes. To avoid this, we can develop a simple custom plugin to achieve the same functionality while keeping the theme intact.

    In this blog post, we’ll cover:

    • Fetching store categories dynamically
    • Displaying them in a responsive grid layout
    • Filtering stores based on selected categories
    • Sorting store categories alphabetically

    Step 1: Creating a Custom Plugin Instead of a Child Theme

    Instead of modifying theme files, follow these steps to create a simple plugin:

    1. Create a folder inside wp-content/plugins/ named custom-store-categories.
    2. Inside this folder, create a file named custom-store-categories.php.
    3. Open the file and add the following plugin header:
    <?php
    /*
    Plugin Name: Custom Store Categories
    Plugin URI: https://codoplex.com
    Description: A simple plugin to display store categories with store counts in a grid layout.
    Version: 1.0
    Author: Junaid Hassan
    Author URI: https://codoplex.com
    License: GPL2
    */
    1. Now, we’ll add the core functionality inside this file.

    Step 2: Fetching and Displaying Store Categories

    To fetch and display store categories dynamically, add this code to custom-store-categories.php:

    function cmd_store_categories_shortcode() {
        ob_start();
        global $wpdb;
    
        if (isset($_GET['store_category'])) {
            $selected_category = sanitize_text_field($_GET['store_category']);
    
            $args = array(
                'taxonomy'   => 'stores',
                'hide_empty' => false,
                'meta_query' => array(
                    array(
                        'key'     => 'store_category',
                        'value'   => $selected_category,
                        'compare' => 'LIKE'
                    )
                )
            );
    
            $stores = get_terms($args);
    
            if (!empty($stores) && !is_wp_error($stores)) {
                echo '<div class="row">';
                foreach ($stores as $store) {
                    echo '<div class="col-6 col-sm-4 col-md-3 col-lg-2">';
                    echo '<h2>' . esc_html($store->name) . '</h2>';
                    echo '</div>';
                }
                echo '</div>';
            } else {
                echo '<p>No stores found in this category.</p>';
            }
        } else {
            $stores = get_terms(array(
                'taxonomy'   => 'stores',
                'hide_empty' => false,
            ));
    
            $store_categories = [];
    
            foreach ($stores as $store) {
                $store_meta = cmd_get_taxonomy_options($store->term_id, 'stores');
                if (!empty($store_meta['store_category'])) {
                    $categories = explode(',', strtolower($store_meta['store_category']));
                    foreach ($categories as $category) {
                        $category = trim($category);
                        if (!isset($store_categories[$category])) {
                            $store_categories[$category] = 1;
                        } else {
                            $store_categories[$category]++;
                        }
                    }
                }
            }
    
            if (!empty($store_categories)) {
                ksort($store_categories, SORT_NATURAL | SORT_FLAG_CASE); // Sorting alphabetically
                echo '<div class="row justify-content-center p-1 px-2 g-3">';
                foreach ($store_categories as $category => $count) {
                    echo '<div class="col-6 col-sm-4 col-md-3 col-lg-2">';
                    echo '<a href="?store_category=' . urlencode($category) . '" class="cmd-taxonomy-card card h-100 p-2 rounded-4 shadow-sm">';
                    echo '<div class="card-body text-center">';
                    echo '<h6 class="fw-bold">' . esc_html($category) . '</h6>';
                    echo '<small>' . esc_html($count) . ' Stores</small>';
                    echo '</div></a></div>';
                }
                echo '</div>';
            } else {
                echo '<p>No store categories found.</p>';
            }
        }
        return ob_get_clean();
    }
    add_shortcode('store_categories', 'cmd_store_categories_shortcode');

    Step 3: Sorting Store Categories Alphabetically

    To display categories in alphabetical order, we use the ksort() function:

    ksort($store_categories, SORT_NATURAL | SORT_FLAG_CASE);

    This ensures that category names are sorted correctly regardless of case sensitivity.

    Step 4: Adding the Shortcode to a Page

    1. Save and activate the plugin from the WordPress admin panel.
    2. Create a new page and add this shortcode:
    [store_categories]

    This will render store categories in a grid layout with clickable links to filter stores by category.

    Final Thoughts

    By following this approach, we: ✅ Avoid modifying the theme or using a child theme. ✅ Ensure that store categories display correctly. ✅ Enable filtering stores by category dynamically. ✅ Keep the store categories sorted alphabetically.

    This lightweight plugin keeps your WordPress setup clean while providing a fully functional store categories page.

    Let me know in the comments if you have any questions or improvements! 🚀

  • Custom WordPress Themes and Plugins Ideas

    If you plan to develop custom WordPress themes and plugins, you’ll want to focus on creating products that address widely-needed features, are highly customizable, and offer practical solutions for different types of WordPress websites. Here are some suggestions for themes and plugins that have high demand and can attract a wide range of users:

    Custom Theme Development Ideas

    Multi-purpose Business Themes

    Use Case: This type of theme would be highly customizable, catering to various business sectors such as corporate websites, agencies, and small businesses.

    Features:

    • Multiple pre-built demo templates (corporate, startup, portfolio, etc.)
    • One-click demo import
    • Built-in page builder integration (like Elementor or WPBakery)
    • Advanced header & footer options
    • WooCommerce support

    Why: Business owners need flexible themes that allow them to set up professional websites with minimal effort.

    2. Niche-Specific Themes (Real Estate, Lawyers, Medical, etc.)

    Use Case: Develop highly specialized themes for industries such as real estate, law firms, healthcare, restaurants, and others.

    Features:

    • Real estate property listing layouts (with filters, maps, etc.)
    • Appointment scheduling for medical or beauty salons
    • Custom post types (e.g., for lawyers, doctors, properties)
    • Integration with third-party tools (like real estate MLS, online booking systems, or restaurant reservation plugins)

    Why: These industries have very specific needs, and a custom theme that addresses their pain points is highly valuable.

    3. Minimalist/Portfolio Themes

    Use Case: A sleek, modern, and visually-focused theme that’s perfect for photographers, designers, artists, and creatives.

    Features:

    • Grid-based or masonry layouts for portfolios
    • Lightbox integration for image galleries
    • Parallax scrolling
    • Custom typography and color schemes

    Why: Creative professionals need a theme that lets their work shine and is easy to navigate.

    4. One-page Themes (Landing Pages, Personal Websites, etc.)

    Use Case: Perfect for personal websites, product landing pages, or small business promotions.

    Features:

    • Smooth scrolling
    • Call-to-action (CTA) sections
    • Integrated blog and testimonial sections
    • Mobile-optimized

    Why: Many small businesses, freelancers, or event promotions require simple, clean, and effective one-page websites.

    5. Membership & Community Themes

    Use Case: For creating online communities, membership websites, and e-learning platforms.

    Features:

    • Member directories
    • Profile management
    • Social features like forums or activity feeds
    • Integrated LMS (Learning Management System)

    Why: With the rise of membership sites, creating a theme with these features will serve a growing market.

    Custom Plugin Development Ideas

    1. Advanced Form Builders (Beyond Contact Forms)

    Use Case: While plugins like Contact Form 7 and WPForms exist, creating a next-generation form builder with more advanced capabilities could stand out.

    Features:

    • Multi-step forms
    • Conditional logic
    • Integrations with CRM or email marketing services (Mailchimp, HubSpot, etc.)
    • Payment gateway support (Stripe, PayPal)

    Why: Forms are a core component for almost every website, but many users require more advanced features for lead generation, event bookings, surveys, and quizzes.

    2. Custom Post Type & Taxonomy Manager

    Use Case: Create a plugin that simplifies the process of managing custom post types and taxonomies.

    Features:

    • Easy UI to create, manage, and organize custom post types and taxonomies
    • Template generation for custom post types (e.g., single post, archive page)
    • Support for custom fields and advanced meta boxes

    Why: Custom post types are crucial for building specific content types, and making it easy for users to manage them will save time and effort.

    3. Advanced SEO Tools (Beyond Yoast SEO)

    Use Case: While Yoast is popular, there is always room for new SEO solutions that offer a more tailored approach or advanced features.

    Features:

    • On-page SEO recommendations
    • Schema markup integration (structured data)
    • Google Analytics and Google Search Console integration
    • Social media optimization (Open Graph, Twitter cards, etc.)

    Why: SEO is essential for all WordPress websites. An advanced tool with specific functionality can differentiate itself from existing plugins by offering more granular control or specific solutions.

    4. Content Restriction/Access Control Plugins

    Use Case: Useful for membership sites, e-learning platforms, or websites with premium content.

    Features:

    • Restrict access to specific content based on user roles, subscription plans, or other criteria
    • Drip content functionality (scheduled content release)
    • Paywall integrations (e.g., Patreon or subscription-based models)

    Why: As membership-based models grow, website owners need a robust way to manage who can access their content.

    5. Event Management & Booking Plugins

    Use Case: A plugin that enables event booking, RSVPs, and management of events (for conferences, workshops, and seminars).

    Features:

    • Event calendar with booking options
    • Payment gateway integration for event tickets
    • Waitlist feature for sold-out events
    • Customizable event templates and reminders

    Why: Many businesses and individuals host events online or offline and need an intuitive tool for managing registrations, payments, and reminders.

    6. Customizable Product Comparison Plugin (for WooCommerce or general eCommerce)

    Use Case: A plugin that allows users to compare products in an eCommerce store.

    Features:

    • Product comparison table generation
    • Custom attributes for comparison (price, features, reviews, etc.)
    • Integration with WooCommerce and other platforms

    Why: Consumers often compare products before making purchasing decisions, and offering an easy way to do this could increase conversions.

    7. Dynamic Content Plugin

    Use Case: A plugin that allows site admins to create personalized content for users based on behavior, location, or user type.

    Features:

    • Location-based content delivery
    • Behavior-triggered content changes (e.g., based on previous visits)
    • Integrations with Google Analytics and tracking systems

    Why: Personalization increases engagement, and businesses are always looking for ways to enhance the user experience with dynamic, tailored content.

    8. Advanced Analytics & Reporting Plugin

    Use Case: A plugin that integrates with Google Analytics and offers advanced reporting features.

    Features:

    • Dashboards for tracking user behavior, page performance, and more
    • Customizable reports
    • Real-time tracking for eCommerce sales, blog traffic, or other KPIs

    Why: Website owners need in-depth insights to improve their content, SEO, and marketing strategies. An advanced analytics plugin can provide easy-to-read reports and actionable data.

    9. Affiliate Marketing Plugin

    Use Case: A plugin designed to handle affiliate marketing programs, enabling users to set up and manage affiliates for product promotion.

    Features:

    • Affiliate link generation
    • Commission tracking
    • Payment integration (PayPal, Stripe)
    • Reports and analytics for affiliates and site owners

    Why: With the rise of affiliate marketing, website owners need a streamlined way to manage affiliate relationships.

    10. Customizable Live Chat Plugin

    Use Case: Create a customizable live chat system that integrates with various messaging services.

    Features:

    • Chatbot integration
    • Customizable chat widgets (design, colors, etc.)
    • Integration with CRM and support tools

    Why: Live chat is a powerful tool for improving user engagement and providing customer support, and a customizable solution would be highly sought after.

    Conclusion

    To develop successful custom WordPress themes and plugins, focus on creating solutions that solve common problems for a wide range of users, offer high customizability, and integrate well with other tools. Multi-purpose themes, niche-specific themes, and specialized plugins (like for SEO, eCommerce, and membership) are in high demand, as they cater to businesses and individuals looking to enhance their WordPress sites with minimal effort. By staying on top of trends and understanding user needs, you can create highly marketable and useful products that appeal to a wide audience.

  • Ep. 007 Recap and Review Questions – Learn WordPress – Free Course

    In the previous post, we have learned how to set up a new WordPress project in the localhost Wamp Server. This post is the last post of the current module (i.e. Course Overview and Set-Up). In this post, we will have a recap of what we have learned and will discuss some review questions. The review questions are helpful for the candidates to decide whether they are ready to move on to the next module or not?

    Recap:

    In this module, we have covered the following topics:

    • Course overview (episode 001)
    • Course introduction, requirements, objectives, why WordPress, and learning outcomes (episode 002)
    • Course help material and where to ask questions (episode 003)
    • What is loacalhost and why we use it? (episode 004)
    • WampServer installation and set up (episode 005)
    • WordPress project set up on localhost wampserver (episode 006)
    • Recap and review questions (episode 007)

    Review Questions:

    Before moving to the next module, the candidate must be able to fulfill the following requirements:

    • The candidate must be able to understand what is localhost and why we use it?
    • The WampServer must be correctly installed and working on the computer/laptop of the candidate and it must turn green when it is started
    • A WordPress project is set up on the localhost WampServer (as we did in episode 006) and the candidate must be able to log in to the WordPress website dashboard using the login credentials

    If you fulfill the above three requirements, then you are ready to move on to the next module i.e. WordPress Core. If not, then start the lessons again until you are ready.

    Video Tutorial (Urdu Language):

    Recap and Review Questions – Learn WordPress

    Got Stuck? Any Questions?

    In case of any questions, please feel free to ask in the comments section below. Thanks

  • CODOWPPOSTS – Features and HowTo Guide – WordPress Plugin

    CODOWPPOSTS is a WordPress plugin to show posts, pages, or custom posts on the frontend in tabular format with client-side filters and pagination. Select post type, add/re-order/delete columns with post attributes e.g. title, excerpt, author, category, or any custom post meta boxes. Define column widths, link permalinks, enable/disable client-side filters for each column. Define number of posts per page (default: 10) with client-side pagination functionality.

    The plugin is reviewed by the CodeCanyon team and is approved and published on the CodeCanyon marketplace.

    Video Demo

    Video Demo of CODOWPPOSTS Plugin

    Features

    1. Select post type (post, page or custom post type)
    2. Add/edit/delete any number of post tables
    3. Dynamic post table columns
    4. Column drag/drop ordering/positioning
    5. Column titles
    6. Column meta (data source)
    7. Support to use built-in attributes as data source e.g. title, excerpt, author, category etc.
    8. Support to use custom meta boxes registered with the selected post type as data source
    9. Define column width
    10. Enable/disable column filtering
    11. Number of posts per page (default: 10)
    12. Client-side filtering
    13. Client-side pagination
    14. Post table shortcodes

    How To Use It?

    1. Purchase, download and install the plugin
    2. Visit CODOWPPOSTS -> Post Tables -> Add New to define a new post table for any post type
    3. Configure the attributes and publish the post table
    4. Every published post table will have a shortcode that can be used on any page or wherever the shortcodes can be added

    Screenshots:

    Backend Settings
    Frontend View

    That’s all! Please let us know in case of any questions or concerns. Thanks

  • Ep. 001 – Course Introduction – Learn WordPress in Urdu

    Today, we are starting a new course titled “Learn WordPress in Urdu”. This blog post gives an overview of the course and provides information about the contents of the course. This course is prepared using the latest version of WordPress (5.8). Each lecture consists of a written blog post (like this) and a video hosted on Youtube and Facebook pages. The video from Youtube will be embedded in the blog posts as well.

    Video Episode:

    Episode #001 – Course Overview

    Course Contents:

    The course is mainly divided into three (3) modules i.e. WordPress Core, WordPress Theme Development, and WordPress Plugin Development. Following is a list of topics covered in each section:

    • WordPress Core (WordPress CMS features and Website Development using Core WordPress CMS)
      • Posts
      • Pages
      • Media
      • Comments
      • Themes
      • Widgets
      • Customizer
      • Theme Options
      • Plugins
      • Users
      • Tools
      • Settings
    • WordPress Theme Development (Developing custom themes from scratch)
      • Classic vs Block Themes
      • Required files for theme development
      • Styles and Functions
      • Template Pages and Custom Templates
      • Translations
      • Security
      • Performance
      • Theme Options Page
      • Global Styles and Them JSON file
    • WordPress Plugin Development (Developing custom plugins from scratch)
      • Required Files for Plugin Development
      • Plugin Meta Information
      • Plugin Admin Menu
      • Plugin Settings Page
      • Custom Post Type Registration
      • Custom Taxonomies Registration
      • Translations
      • Performance
      • Security
  • Ep. 002 – Course Objectives, Requirements, and Outcomes – Learn WordPress in Urdu

    In the previous post, we have briefly given the introduction to the course titled “Learn WordPress in Urdu”. In this post, we have discussed the course objectives, course pre-requisites/requirements, why we are learning WordPress, and what the are the learning outcomes of this course.

    Course Objectives:

    1. How to design and develop a website, blog, or an e-commerce website using WordPress CMS
    2. How to design a custom WordPress theme
    3. How to develop a custom WordPress plugin

    Course Pre-Requisites/ Requirements:

    1. Personal computer/laptop
    2. Basic understanding of English language and terms
    3. Basic understanding of how to use Internet

    Why WordPress?

    • WordPress was started back in 2003 and now it’s very mature content management system (CMS) to design and develop websites
    • WordPress is an open-source software i.e. anyone can download it, customize and extend it by using themes and plugins
    • Over 42% of the websites are developed in WordPress (according to the official WordPress website)
    • To design and develop a website, you don’t need to learn programming languages

    Course Learning Outcomes/Benefits:

    • Become a freelancer and sell your services online as a freelance WordPress designer and developer
    • Become a theme author/seller and sell your custom WordPress themes online
    • Become a plugin developer and sell your custom WordPress plugins online

    Video Episode:

    Course Requirements

    Conclusion:

    In this post, we have briefly discussed the course objectives, pre-requisites/requirements, why we are learning WordPress, and what are the course learning outcomes. If you have any questions, please feel free to ask in the comments sections. Happy Learning!

  • Ep. 006 – WordPress Project Set-Up – Learn WordPress in Urdu

    In the previous post, we have learned how to download and set up localhost using Wamp Server Software. In this post, we have discussed how to set up a new WordPress project on the localhost Wamp Server.

    Download WordPress:

    First, you need to visit the official WordPress website https://wordpress.org/. Now click on the Get WordPress button to download the latest stable version of WordPress.

    WordPress Website:

    When the WordPress is completely downloaded, copy the zip and paste it inside C://wamp64/www folder. Now extract that zip file inside that folder. Then open the extracted folder and inside that folder, you will find a folder named ‘wordpress’. Now cut that folder and paste it inside the root directory i.e. C://wamp64/www. Then rename that folder to whatever name you want e.g. ‘mywebsite’.

    Start Wamp Server Localhost:

    Now start the Wamp Server localhost and wait until the Wamp Server icon turns green. When the icon is turned green, it means that Wamp Server is successfully started and is now ready to serve the hosted websites from the C://wamp64/www directory.

    Database Creation:

    Click on the Wamp Server icon and click on the phpMyAdmin. It will ask for login credentials. Enter the credentials if you have defined them. If you are visiting it for the first time then ‘root’ is the username and empty space is the password. When you are logged in to the phpMyAdmin, then from the left sidebar, click the New icon, define database name and click the Create button. The database is created, now you need to assign a user to it. Click the Privileges tab from the menu. Click the Add New User account link from the bottom of the section. Define username, password, re-type password, and assign Global Privileges by checking the icon next to it. Then click the Go button and the user will be created with assigned privileges.

    WordPress Installation:

    Now open your favorite website browser e.g. Google Chrome and type http://localhost/mywebsite and the WordPress installation will get started. First, you need to select the language and click the Continue button. Then it will ask for the Database credentials e.g. database name, username, password, host, etc. Enter the database credentials, you have created in the previous step. Then move to the next step and enter the Website information e.g. Site Title, WordPress admin username (create a new one), password, and click the Next button. That’s it. The installation process is completed and now you can log in to the WordPress admin dashboard using the login credentials.

    Video Tutorial:

    WordPress Project Set-up

    Got Stuck? Any Questions?

    In case of any questions, please feel free to ask in the comments section below. Thanks

  • Ep. 003 – Course Helping Material and Resources – Learn WordPress

    In the previous blog post, we have briefly discussed the course objectives, course requirements, why we are learning WordPress, and the course learning outcomes/benefits. In this blog post, we will explore some helping material pages, resources, and where to look for help when you get stuck while performing any activity.

    Video Episode:

    Learn WordPress – Episode #003

    Course Helping Material:

    Visit the course web page by clicking this link. On this page, you will find blog posts for each lecture/episode of the course. Each blog post is written with the details covered in the lecture video. Extra example codes and useful links are also provided to further elaborate the concepts. Bookmark this page and get back to this page frequently to get the latest content related to the course.

    YouTube Playlist:

    The course videos are posted on the YouTube channel twice a week. Subscribe to the channel and press the bell icon to get the latest videos as soon as they are posted.

    YouTube Playlist

    Facebook Page:

    The course videos are also posted on the Facebook Page as well. Follow our Facebook page to get the latest posts and contents related to the course.

    Got Stuck? Where to Post Questions?

    If you have any questions, feel free to ask in the comments section at the bottom of the lecture blog post. You can ask questions by posting comments on the YouTube video or Facebook posts as well.

  • Ep. 004 – What/Why/How to Set Up Localhost – Learn WordPress Course

    In the previous blog posts, we have briefly discussed the course help material and where to ask in case of any questions. In this blog post, we will learn what is localhost, why we need to use it, and how to set up localhost on your computer/laptop.

    What is Localhost?

    According to Wikipedia, “In computer networking, localhost is a hostname that refers to the current computer used to access it”.

    Why We Need to Set Up Localhost?

    In simple words, we want our computer/laptop to work as a hosting server for our website project. By default, our computer/laptop doesn’t have the functionality to act as a hosting server for our website. So we need to install software on our computer e.g. WampServer, XamppServer, or Local for WP to make our computer ready to host our WordPress website project. You can use any of these options to get started with the WordPress development project. I have installed WampServer on my computer so I will take it as a reference in future conversations. But installing/configuring Wamp Server or Xampp Server may produce some errors/warnings. So I will recommend installing Local for WP because it’s easier to install and configure your WordPress project.

    How to Set Up Localhost?

    You can download and install any of the 3 software mentioned above to set up localhost on your computer/laptop. In the next video, we will learn how to set up localhost using WampServer and optionally in another video, we will learn how to set up localhost using Local for WP as well. You don’t need to install both software. You can either install WampServer or Local for WP.

    Got Stuck? Any Questions?

    If you got stuck at any point or if you have any questions, please feel free to ask in the comments section below. Thanks for reading!

  • Ep. 005 – Wamp Server Set Up – Learn WordPress

    In the previous post, we have learned what is localhost? why we use it? and how we can set up localhost on our computer/laptop. We have learned that we can install Wamp Server, Xampp Server, or Local for WP software to set up localhost on our computer/laptop. In this post, we will discuss how to install Wamp Server to set up localhost on our computer.

    Download Wamp Server

    Visit the official Wamp Server website https://www.wampserver.com/en and click the Download button to download the latest stable version of Wamp Server.

    Download Wamp Server

    Install Wamp Server

    When the Wamp Server is downloaded, double click on the downloaded .exe file and follow the instructions to install the Wamp Server on your computer/laptop.

    Verfication

    After the installation is completed, a new Folder will be created in your C:// drive named Wamp or Wamp64. Run the installed Wamp Server (Start Menu -> Wamp), and see the icon in the taskbar. At the start the icon will be red, then it will turn orange, and eventually, it will turn green. The green icon means that the Wamp Server is correctly configured and running all its services. Now we are ready to set up a new WordPress project in Wamp Server (Next Episode).

    Video Episode:

    Wamp Server Installation

    Got Stuck? Any Questions?

    In case of any questions, feel free to ask in the comments section below. Thanks!

  • WordPress Plugin Development Boilerplate

    Another contribution to the open-source community. We have developed and released a boilerplate template to develop a new WordPress plugin using Object Oriented Programming (OOP) approach. If you are a WordPress developer and want to develop a custom WordPress plugin from scratch, then this boilerplate may act as a good starting point for your new WordPress plugin.

    Folder Structure

    The boilerplate code is very well structured and organized into folders based on the type of functionality. Following is the folder structure of the boilerplate plugin:

    • assets
      • images
      • css
      • js
    • includes
      • admin
        • class-codowppb-admin.php (handle admin-specific functionality)
      • common
        • class-codowppb-common.php (handle common functionality for both admin and frontend)
      • public
        • class-codowppb-public.php (handle public facing functionality)
      • class-codowppb.php (handle core functionality of the plugin)
    • codowppb.php (main plugin file)
    • index.php
    • LICENSE.txt
    • README.md
    • README.txt
    • uninstall.php

    As can be seen from the folder structure that we have organized the folders and classes so that the functionality is loaded conditionally based on the requirements. This feature makes the plugin more organized and optimized in terms of performance.

    Features

    • Object Oriented Programming (OOP) approach
    • Folders and Classes are organised based on the type of functionality i.e. public-facing or admin-specific
    • Assets (CSS and JS) are included and properly enqueued for admin, public, and common functionality
    • Admin settings page functionality is also added to add an admin page menu for the plugin

    How To Use It?

    • Clone/download the github repository inside the wp-content/plugins folder
    • Replace the ‘codowppb’ word with your plugin name in all files, file names or folder names etc.
    • Add/modify the relevant codes according to your custom requirements

    The boilerplate plugin is hosted on GitHub as a public repository and will be updated with more features soon. The suggestions and recommendations are welcome! Thanks

  • WordPress and jQuery. What’s the Future?

    WordPress is planning major jQuery changes in version 5.5 and future versions. Since WordPress relies on jQuery which is a popular JavaScript framework, the WordPress team wants to update jQuery to the latest possible version. In the long term, they want to minimize or completely remove the reliance on the jQuery framework as mentioned in this blog post. Following are some short notes about this topic:

    • Currently, WordPress provides jQuery with version 1.12.4 released in 2016.
    • The WordPress team wants to update the jQuery version gradually because many themes and plugins are using an older version of jQuery as a dependency.
    • In the long term, the WordPress team is planning to move WordPress admin to vanilla JavaScript.
    • The WordPress team has released a plugin named Test jQuery Update which can be used to test themes and plugins compatibility with the latest jQuery update.
    • The first step in this process was the removal of jQuery Migrate 1.4.1 script from the core WordPress version 5.5 which will break some plugins and themes code.
    • The WordPress team has released a helper plugin Enable jQuery Migrate Helper which can be used if there are any issues after updating to version 5.5. This plugin re-enables jQuery Migrate and warns about the deprecated code used by themes or plugins.
    • As a second step, the WordPress version 5.6 is shipped with the updated versions of jQuery (3.5.1), jQuery Migrate (3.3.2), and jQuery UI (1.12.1).
    • The third step would be to remove jQuery Migrate dependency from the core.
    • Enabling SCRIPT_DEBUG constant in wp-config.php file can be helpful for debugging the compatibility issues due to the jQuery upgrades.

    Actionable Steps:

    • If you are a website owner, then test your website’s functionality using Test jQuery Update and Enable jQuery Migrate Helper plugins, before updating to the latest version 5.5 or later.
    • If you are a developer, then make sure to test your plugins or themes and make sure that they are compatible with the versions of jQuery, jQuery Migrate and jQuery UI bundled with the latest version of WordPress.

    References:

    • https://wptavern.com/major-jquery-changes-on-the-way-for-wordpress-5-5-and-beyond
    • https://wptavern.com/wordpress-5-6-will-ship-with-another-major-jquery-change
  • Interview Questions for WordPress Developer

    I have prepared a list of possible questions which are commonly asked or should be asked from a candidate applying for the position of a WordPress developer.

    1. What are WordPress plugins?
    2. What are WordPress themes?
    3. What are WordPress child themes?
    4. What is Gutenberg?
    5. How to choose a best WordPress plugin?
    6. Can you develop a WordPress plugin from scratch?
    7. Can you design a WordPress theme from scratch?
    8. Can you customize WordPress plugins developed using OOP concepts?
    9. What is the difference between OOP and Structural programming?
    10. What are hooks?
    11. Can you define a custom hook?
    12. What are actions?
    13. What are filters?
    14. What is the difference between actions and filters?
    15. How to extend the existing functionality of a WordPress plugin?
    16. How and where to register custom CSS/JS files with WordPress?
    17. How to make sure that the plugin you are developing, is secure?
    18. Can you give some example functions provided by WordPress to secure input fields?
    19. What do you know about _e() and __e() functions?
    20. How can we make a WordPress theme or plugin, multilingual compatible?
    21. Can you use CSS frameworks while designing custom WordPress theme?
    22. Can you use React inside a WordPress theme or plugin?
    23. Can you develop a custom Gutenberg block?
    24. What are widgets? Can you develop one from scratch?
    25. What are short-codes? Can you develop one from scratch?
    26. Should we echo or return data from the short-code?
    27. What do you know about ob_start(), ob_get_clean() functions?
    28. Which hook is used on plugin activation or deactivation?
    29. Should we use a custom database table to save our custom data or should we use post meta or other default tables provided by WordPress?
    30. Can you create a custom post type from scratch?
    31. How to create a custom archive page for custom post type?
    32. How to create a custom single post page for custom post type?
    33. Do you have experience working with WooCommerce plugin?
    34. How can we implement ajax calls in WordPress?
    35. Can you use WordPress REST API to display data on the front-end of the website?
    36. How can we expose a custom endpoint in WordPress REST API?
    37. There is “something” wrong in our website and we are seeing a death screen (white screen without any warnings or errors). How to start the debugging process?
    38. How can we enable log messages in WordPress?
    39. How can we use default jQuery provided by the WordPress?
    40. Which class is provided by WordPress to query database?
  • WordPress Security Checklist

    Following are some general recommendations to enhance security of a WordPress website.

    1. Use a security plugin e.g. Wordfence (if not already installed) and make sure that it’s updated to the latest version. Following is a short summary of recommended Wordfence settings:
      1. Make sure that the “Enabled and Protecting” mode is enabled after the “Learning” period is ended.
      1. In “Protection Level”, make sure to optimize the Wordfence firewall by enabling the Extended Protection mode.
      1. Upgrade the plugin to the premium version to enable the “Real Time IP Blacklist” feature to protect the website from malicious activities using the updated and latest database.
      1. The other default firewall settings are good to start with. These options can be changed in specific scenarios.
      1. The recommended scan type for most of the cases is “Standard”. The other options can be used in specific scenarios.
      1. Make sure to upgrade the plugin to the premium to use the latest malware signature during the scans. The free version of the plugin updates the malware signature list after 30 days.
      1. Moreover, the premium version enables the Reputation Checks (recommended) for ‘spamvertising’, spam identification and domain blacklist checking.
      1. Make sure the issues reported in the scan results are fixed.
      1. Wordfence tools like live traffic, whois lookup, import/export and diagnostics are really helpful in diagnosing the website’s traffic, IP address identification, sharing the Wordfence settings among WordPress websites and diagnosing the plugin conflicts or configuration issues respectively.
      1. Wordfence provide login security tools like Two Factor Authentication (2FA) which is the latest and most secure form of authentication and Google reCaptcha to protect the forms from bot attacks.
    2. Make sure that WordPress core, theme(s) and plugins are updated to the latest versions
    3. Make sure that PHP, MySQL and nginx are updated to the latest stable versions. There may be certain issues after updating the PHP version of the website. Please refer to this blog post about Important points to consider before and after updating PHP version for WordPress website
    4. IP Restriction at nginx level can also be applied to restrict access to the WordPress admin dashboard
    5. Remove all inactive theme(s) or plugins from the website
    6. Make sure that properly licensed themes and plugins are installed/activated on the website
    7. Visit Tools -> Site Health to see if there are any major issues reported to be fixed

  • Common PHP Warnings/ Errors and their Solutions

    Recently, we have updated our PHP version to the latest stable version (7.4.9) for our WordPress website. After the update we started getting PHP warnings. We have listed some of the warnings with their possible solutions in this blog post.

    E_WARNING:

    count(): Parameter must be an array or an object that implements Countable

    Solution:

    // replace this kind of code:
    if (count($array_name) > 0)
    // with
    if (is_countable($array_name) && count($array_name) > 0)

    E_WARNING:

    Invalid argument supplied for foreach()

    Solution:

    // replace following kid of code:
    foreach ($array_name as $item) {
     // ...
    }
    // with
    foreach ((array) $array_name as $item) {
     // ...
    }

    References:

    • https://stackoverflow.com/questions/2630013/invalid-argument-supplied-for-foreach
    • https://wordpress.org/support/topic/count-parameter-must-be-an-array-or-an-object-that-implements-countable-6/

  • Demo – UniLMS – A Learning Management System – WordPress Plugin

    In this post, we will have a demo of our learning management system known as UniLMS which is shipped as a WordPress plugin. We will discuss the main features, modules, and components of the plugin. We will also test the modules and features of the plugin by creating dummy data.

    What is UniLMS?

    UniLMS is a learning management system developed for universities, schools, colleges, academies or any other type of institutes to manage their day-to-day activities. The software is shipped as a plugin that can be used on any WordPress website.

    Modules/ Components of UniLMS

    Following is a list of main modules/ components of UniLMS plugin

    1. Dashboard Module
    2. Students Module
    3. Teachers Module
    4. Classes Module
    5. Courses Module
    6. Course Files Module
    7. Activities Module
    8. Quizzes Module
    9. Assignments Module
    10. Attendance Module
    11. Result Card Module
    12. Time Table Module

    When the plugin is installed and activated, there will be a new menu item (UniLMS Pro) in the left sidebar of the WordPress dashboard. From there the admin can access all modules of the plugin.

    Before diving into the demo of the plugin, let’s discuss the main features of each module of the UniLMS plugin.

    Dashboard Module – UniLMS

    • The dashboard page shows statistics of each module e.g. total number of approved faculty members, total courses, total classes, etc.
    • The dashboard page briefly explains the features of all available modules of the UniLMS plugin
    • The dashboard page also provides a quick guide to setup and configure different modules of the plugin

    Teachers Module – UniLMS

    • Teachers can register themselves using the teacher registration page (added automatically when the plugin is activated) or admin can add teachers using UniLMS Pro -> Teachers -> Add New
    • When a teacher registers to the website, then he/she cannot log in to the website until an admin approves it
    • A teacher can create/edit new courses, lectures, activities(quizzes, assignments, midterm exams, final term exam, projects and add marks for these activities), questions, attendances, course files, and students
    • Any content created by teachers is not published until an admin review it
    • A faculty page is also created automatically (when the plugin is activated), listing all faculty members linking to their profile pages
    • Any teacher can view his/her profile by visiting the teacher profile page (added automatically when the plugin is activated). The profile page shows personal details, assigned courses and time table of the teacher.

    Students Module – UniLMS

    • Students can register to the website as a standard user
    • Admin can approve student profile by reviewing it and assigning him ‘UniLMS Student’ role by editing his/her profile
    • Once a student is assigned UniLMS Student role, then he/she can log in to the website and add/edit details like department, class, registration number, etc. by visiting profile page in the backend of the website
    • After adding details in the profile, user can visit the Student Dashboard page which is automatically created when UniLMS plugin is activated
    • At the Student Dashboard page, the student can see his/her information and also he/she can view results of all activities (quizzes, assignments, midterm, final term, final result, etc.)

    Classes Module – UniLMS

    • Admin can add new classes or update/delete existing ones
    • Admin can assign courses to each class
    • Admin can also generate a class-specific time table from the complete time table
    • Any student can view each class details from the front end of the website

    Courses Module – UniLMS

    • Admin, as well as teachers, can create new courses
    • Courses created by teachers are not published until reviewed by admin
    • Admin can edit/delete all courses while teachers can only edit their own courses
    • Teachers cannot even delete their own courses
    • When UniLMS plugin is activated, then a new page titled UNILMS Courses is automatically created which lists all courses in a tabular format
    • Course contents, of the course created by the teacher, are generated using the lectures and activities created by the teacher
    • Course author can define sessional marks %, midterm exam %, final term exam %, and grad policy, etc.
    • Course author can generate course specific time table from the complete time table

    Lectures Module – UniLMS

    • Admin, as well as teachers, can create new lectures while teachers can only edit their own lectures
    • These lectures can be added to the course contents of the course
    • Each lecture is assigned to a particular course
    • A teacher can share all necessary details or resource materials with each lecture

    Activities Module – UniLMS

    • Activities include quizzes, assignments, midterm exams, final term exams, projects, class participation, etc.
    • A teacher can assign questions to activities like quizzes, midterm exam or final term exam
    • A teacher can select whether this activity will count in sessionals marks or not
    • Each activity’s marks can be added for each student
    • These activities can be viewed publically except the fact that questions will not be visible publically. On public pages of these activities, details like activity max marks, submission date, or activity result are shown

    Questions Module – UniLMS

    • Both admin and teachers can create new questions while teachers can only edit/use their own questions while preparing quizzes
    • Mcqs, true/false, short questions, and long questions are the options available as question type
    • Max marks and correct option can also be defined for questions of type MCQs or true/false

    Attendance Module – UniLMS

    • Both admin and teachers can create new attendance while teachers can only edit/use their own attendances while preparing course files
    • Attendance date, class, course, activity and students list to mark attendance are some of the options available
    • Attendances are used while preparing course files or to give attendance marks to the students

    Course File Module – UniLMS

    • A Course file includes grading policy, course contents, course plan, instructor log, student log, quizzes, assignments, sessionals, midterm exam, final term exam, attendance sheet and the final result of that course
    • Each course file part is automatically generated by specifying class and course
    • Each course file can also be seen publically on the front side of the website
    • Archive page and single page of each course file are publically visible to anyone
    • A teacher can printout each part of the course file from admin or front end side of the website

    Time Table Module – UniLMS

    • Admin can generate random time table automatically
    • Time table can be generated from courses, classes and faculty members added inside UniLMS plugin
    • Admin can also generate a custom time table for custom courses, classes, and faculty members
    • Time slots, day slots, and room slots are defined for each time table
    • Time table also shows empty slots which can be used to arrange supplementary classes
    • Time tables can also be shown publically so that students can see their time table by visiting the website

    Settings Module – UniLMS

    • Admin can define institute logo which can be used while printing course files or any other documents

    Video Demo – UniLMS

    Video Demo – UniLMS – Learning Management System – WordPress Plugin