[Плагин] Подсчет количества символов в посте

Тема в разделе "Wordpress", создана пользователем 4erepaha13, 20 июн 2011.

Статус темы:
Закрыта.
Модераторы: Sorcus
  1. 4erepaha13

    4erepaha13

    Регистр.:
    20 июн 2009
    Сообщения:
    155
    Симпатии:
    17
    Позаимствовал часть кода у буржуйского плагина подсчитывающего количество слов в посте и переделал его функционал в подсчет количества символов:
    PHP:
    <?php
    /*
    Plugin Name: Posts Character Count
    Description: Отображает количество знаков без пробелов для каждой записи в перечне записей, а также в Панели редактирования записи.
    */
    if (function_exists('load_plugin_textdomain'))
    load_plugin_textdomain('posts-character-count-admin'PLUGINDIR.'/'.dirname(plugin_basename(__FILE__)).'/languages'dirname(plugin_basename(__FILE__)).'/languages');
    //Filters and Functions for column in the Manage Posts SubPanel
    add_filter('manage_posts_columns''pcca_count_characters');
    function 
    pcca_count_characters($defaults) {
        
    $defaults['count'] = __('Количество знаков''posts-character-count-admin');
        return 
    $defaults;
    }
    add_action('manage_posts_custom_column''pcca_count_custom_column'102);
    function 
    pcca_count_custom_column($column$post_id)
    {
        global 
    $post;
        if(
    $column == 'count') {
            
    $pcca_char_count strip_tags($post->post_content);
     
    $pcca_char_count_wsp str_replace(" """$pcca_char_count);
            echo 
    strlen(utf8_decode($pcca_char_count_wsp)).' '__(' знаков''posts-character-count-admin');
        }
    }
    //Class, Function and Action for Display Characters Count in the Edit Posts SubPanel
    class CharactersCountPcca {
        var 
    $text;
        var 
    $characters;
        function 
    set_text($text) {
            
    $this->text strip_tags($text);        
            
    $this->characters = -1;
        }
        function 
    get_text() {
            return(
    $this->text);
        }
        function 
    get_characters() {
            if (
    $this->text == '') { return(0); }        
            if (
    $this->characters != -1) { return($this->characters); }
            
    //$count = strlen(utf8_decode($this->text));
     
    $count strlen(str_replace(" """utf8_decode($this->text)));
            
    $this->characters $count;
            return(
    $count);
        }
    }
    function 
    pcca_characters_count_admin_footer() {
        global 
    $wpdb;
        global 
    $post;
        if (
    $post->post_content != '') {
            
    $stat = new CharactersCountPcca;
            
    $stat->set_text($post->post_content);
            
    $template '';
            
    $template '<span class="inside">'__('Количество знаков:''posts-character-count-admin').' %d '__(' (без пробелов)''posts-character-count-admin').'</span> ';
            
    $pluginHTML sprintf($template,
                    
    $stat->get_characters()                );
            
    printf('<script language="javascript" type="text/javascript">
                    var div = document.getElementById("post-status-info");
                    if (div != undefined) {
                        div.innerHTML = div.innerHTML + \'%s\';
                    }
                    </script>'
    str_replace("'""\'"$pluginHTML)
                );
        }
    }
    Но где-то запряталась заковыка - иногда считает адекватно, иногда выводит на большие посты что в них 10-50 знаков.
    [​IMG]
    Где собака порылась?
     
    woleboy нравится это.
Статус темы:
Закрыта.