• Resolved easygees

    (@easygees)


    How to convert numbers in the counter?
    1000 to 1k
    100 000 to 100k
    1 000 000 to 1m
    So 150,000 would be 150K, 3,200,000 would be 3,2M etc. How do I do that?
    Thank you!

Viewing 10 replies - 1 through 10 (of 10 total)
  • Plugin Contributor Shafaet Alam

    (@shafayat-alam)

    Hi,
    Add the following code at the end of your active theme’s functions.php:

    function number_format($number, $plus = true){
            if($number > 1000000){
                $number = number_format(($number/1000000), 1);
                $number = $number > (int)$number && $plus ? (int)$number.'M+':(int)$number.'M';
                return $number;
            }
            if($number > 1000){
                $number = number_format(($number/1000), 1);
                $number = $number > (int)$number && $plus ? (int)$number.'K+':(int)$number.'K';
                return $number;
            }
            return $number;
        }
    add_filter("wdm_before_fetch_template", function($vars, $template, $type){
        $vars['download_count'] = number_format($vars['download_count']);
        return $vars;
    }, 10, 3);
    Thread Starter easygees

    (@easygees)

    thanks for the response but am getting an error ‘Cannot redeclare number_format()’

    Plugin Contributor Shafaet Alam

    (@shafayat-alam)

    Sorry, please rename number_format to wpdm__number_format, use:

    function wpdm__number_format($number, $plus = true){
            if($number > 1000000){
                $number = number_format(($number/1000000), 1);
                $number = $number > (int)$number && $plus ? (int)$number.'M+':(int)$number.'M';
                return $number;
            }
            if($number > 1000){
                $number = number_format(($number/1000), 1);
                $number = $number > (int)$number && $plus ? (int)$number.'K+':(int)$number.'K';
                return $number;
            }
            return $number;
        }
    add_filter("wdm_before_fetch_template", function($vars, $template, $type){
        $vars['download_count'] = wpdm__number_format($vars['download_count']);
        return $vars;
    }, 10, 3);
    Thread Starter easygees

    (@easygees)

    I was getting an error than fixed when I saw there was typo on (“wdm_before_fetch_template”…) I added a p to (“wpdm_before_fetch_template”…) now am not a getting an error its just not having any effect at all.

    Plugin Contributor Shafaet Alam

    (@shafayat-alam)

    There is no missing p, the code should work fine.

    Gist link:
    https://gist.github.com/codename065/6366b70e22310d81c768419d1cfd8808

    Thread Starter easygees

    (@easygees)

    i was getting ‘Too few arguments’ after i removed $template, $type from this line add_filter(“wdm_before_fetch_template”, function($vars, $template, $type) its working now! one more thing is possible to add a decimal like eg 2.3K for 2340 plus downloads. thank you for the help I really appreciate your assistance and patience.

    Plugin Contributor Shafaet Alam

    (@shafayat-alam)

    Yes, updated code:

    function wpdm__number_format($number, $plus = true){
        $origin_number = $number;
        if($number > 1000000){
            $number = number_format(($number/1000000), 1);
            $number = $origin_number > $number && $plus ? $number.'M+':$number.'M';
            return $number;
        }
        if($number > 1000){
            $number = number_format(($number/1000), 1);
            $number = $origin_number > $number && $plus ? $number.'K+':$number.'K';
            return $number;
        }
        return $number;
    }
    add_filter("wdm_before_fetch_template", function($vars){
        $vars['download_count'] = wpdm__number_format($vars['download_count']);
        return $vars;
    }, 10);

    Result:

    Thread Starter easygees

    (@easygees)

    its perfect, thank you very much.

    Plugin Contributor Shafaet Alam

    (@shafayat-alam)

    Hi,
    If you are happy and got a few free secs, please give us a 5*: https://www.ads-software.com/support/plugin/download-manager/reviews/

    Thanks in advance :).

    Thread Starter easygees

    (@easygees)

    Sure. ??

Viewing 10 replies - 1 through 10 (of 10 total)
  • The topic ‘Display downloads count as 1000 as 1K, 1,000,000 1M’ is closed to new replies.