Home > Backend Development > PHP Tutorial > wordpress comment emoticon plug-in_PHP tutorial

wordpress comment emoticon plug-in_PHP tutorial

WBOY
Release: 2016-07-13 10:54:43
Original
1286 people have browsed it

Modified some methods. Expressions are read directly from the directory. So now you can easily add or remove expression images. Just put the images into the face directory. However, Chinese image names are not supported yet.

/*
Modify
1. You can add or remove emoticon pictures at will in the face directory (Chinese is not supported yet)
2. Supports emoji images in jpg, jpeg, png, and gif formats by default

description: Comment emoticon plug-in

*/

if(!class_exists('silver_smilies'))
{
class silver_smilies
{
         private $img_dir;
         private $img_path;
         private $face_files = array();
         private $allow_extension = array();

public function __construct($allow_extension)
           {
                   $this->img_path = get_settings('siteurl') . '/wp-content/plugins/silver_smilies/face';
"/silver_smilies/face";
$this->allow_extension = $allow_extension;
$this->face_files = $this->get_face_files();
               add_action('comment_form', array(& $this, 'smilie_faces'));
               add_filter('comment_text', array(& $this, 'smilie_replace'));
}

        private function get_face_files()
        {
            $files = array();
            if(is_dir($this->img_dir))
            {
                if ($dh = opendir($this->img_dir))
                {
                    while (($file = readdir($dh)) !== false)
                    {
                        if($file == '.') continue;
                        if($file == '..') continue;
                        $fileinfo = explode('.', (basename($file)));
                        if(in_array($fileinfo[1], $this->allow_extension))
                        {
                            $files[] = array(
                                'filename' => $fileinfo[0],
                                'extension' => $fileinfo[1],
                            );
                        }
                    }
                    closedir($dh);
                }
            }
            return $files;
        }


        // 显示表情图片
        public function smilie_faces()
        {
            foreach($this->face_files as $value)
            {
                echo "{$value[";
            }

            echo <<            
end;
        }

        // 转换为表情图片
        public function smilie_replace($comment_text)
        {
            $keys = array();
            $smilies = array();
            foreach($this->face_files as $value)
            {
                $keys[] = "[face:{$value['filename']}]";
                $smilies[] = "{$value[";
            }

            $comment_text = str_replace($keys,$smilies,$comment_text);
            return $comment_text;
        }
    }
}

if(!isset($silver_smilies))
{


 $silver_smilies =& new silver_smilies(array('gif', 'jpeg', 'jpg', 'png'));
}
?>

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/632308.htmlTechArticle修改了部分方法. 表情直接从目录中读取.所以现在可以方便的增减表情图片了.只需把图片放入face目录即可.不过暂时还不支持中文图片名称...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template