emlog 6.0特别版的BUG些 emlog

声明:本文仅供爱好者折腾参阅,且由于我这是我很久之前的手记,如有遗漏,表意不明的请多包涵。

一点关于安装出现错误编号2002的可能办法:

emlog_mysql_error_2002.png 

emlog_install.png

第一个就是发文章标签打不上之数据库标签表 emlog_tag

emlog5.3.1升级过来或者是自己瞎折腾后发现发文章标签打不上或者没了的多半是这个原因。


gid 的值 开头和结尾必须是 英文逗号 不然 问的标签 不能存入 且...


admin 发布于  2020-10-21 16:49 

emlog5.3.1升级到emlog6.0啦 emlog

emlog6.0

今天登录后台发现有emlog6.0了,就去论坛看了下,结果那多这个懒虫并没有写emlog5.3.1升级到emlog6.0的脚本。不过在邻居星知苑哪里看到了,他也发布到了论坛里,这么勤劳,表扬一下,嘿嘿嘿-_- ,对比下emlog5.3.1和emlog6.0.0发现程序变化不大,主要是对tag标签进行了优化。如果经常关注emlog升级的朋友也许知道,我的邻居老司机-flyer在今年早些时候也搞过自制版和特别版的emlog6.0.升级步骤以及脚本如下:

升级方法:

1、确定程序是emlog5.3.1(本程序是对照5.3.1和6.0.0做的)

2、备份网站系统和数据库(非常重要);

3、把update.php上传到网站根目录,同config.php同一个目录;

4、浏览器访问update,按照提示输入数据库密码,确认等待升级完成;

5、上传emlog 6.0.0程序并覆盖,config.php和install.php不要上传。

6、进入博客后台,更新缓存,然后删除update.php

update下载地址:update.zip

标签: emlog

admin 发布于  2018-10-5 10:50 

emlog在nginx下设置伪静态的方法 emlog

今天把停了半年的博客又重新放出来了.换了个机器,故环境变了,不是apache了,之前的.htaccess配置在nginx下就没用了.所以就重新找到了方法,记录一下在nginx下设置emlog的伪静态规则:

引入自定义emlog伪静态nginx规则文件。假如没有emlog.conf文件,你可以在nginx配置文件夹里新建一个emlog.conf文件。内容如下:

location / {
        index index.php index.html;
        if (!-e $request_filename)
        {
                rewrite ^/(.+)$ /index.php last;
        }
}

然后我们在nginx.conf引入这个伪静态规则即可.include emlog.conf;
然后重启nginx,service nginx reload .


admin 发布于  2017-9-17 19:56 

简单修改emlog的checkcode.php给验证码增加干扰线和噪点 emlog

以下是在论坛看到ewceo的帖子里的,但是他并没有给出具体的代码,对于菜鸟们来说就不容易;

修改过程图览:00.png01.png023.png

鉴于 @奇遇 的反垃圾评论插件(哪怕是最新3.5版)经常被非法侵入式清空设置并报错,也不知是啥BUG,只好亲自动手来反击显示为国外IP的长篇英文评论了



首先分析状况:咱EMLOG的所有文章评论表单都是使用一个相同的提交地址,只是将文章ID赋在一个INPUT之中,这就给了机器人可趁之机:提交地址固定的、验证码地址固定的(还TM特好识别),文章ID是数字的随机生成就好,EMLOG的评论表单被模似简直是史上最轻松啊!所以JS之类的手段在机器人面前都是渣……



8错,在尚无给力插件问世的情况下,治标治本的办法只有改内核文件了:



第1步:英文垃圾评论一大特色就是长篇的并夹杂着火星文字,所以必含中文这样的反制也弱爆了,comment_controller.php文件定义评论最大字符数居然为8000,这是干神马的节奏,很多文章都够不到4000字好吧,发条微博和说说都不能超140字,所以偶赶紧给改为几百压压惊,上千字的精彩评论偶不需要啊



完成第一步还得紧接着做第2步:额,斗个胆,EMLOG默认的验证码偶能吐个槽么,生成的文字中规中矩且颜色清晰好辨,根本就是鸡肋嘛,除了给真心评论的人制造一道坎外,简直就是垃圾评论机器人的帮凶,还有比这更好自动识别的验证码么?checkcode.php唯一可赞之处似乎是不涉及字体文件,代码也比较精炼,这是偶所喜欢的风格,因此就没给彻底换掉,只是加了一点代码:增加几个随机线条,文字颜色范围也弄宽了点(为了防止人眼难识别,增加了点击刷新)……


如此2招之后偶就已经开始坐等机器人了,别的没啥,偶就是在线时间多,突然发现与垃圾评论玩玩策略对抗也有点意思,话说机器人若玩不过偶就暂不上后招咯



学过php的人应该很容易修改,我在这里把我修改过的粗略代码贴出来,便于不会的朋友借鉴,也便于会的朋友给我指点:

<?php
/**
 * Emlog图片验证码生成程序
 * @copyright (c) Emlog All Rights Reserved
 * Modify By Mrxn 
 * Emlog  Site: http://www.emlog.net/
 * Mrxn's Blog: https://mrxn.net/
 */

session_start();

$randCode = '';
$chars = 'abcdefghijkmnpqrstuvwxyzABCDEFGHIJKLMNPRSTUVWXYZ23456789';
for ( $i = 0; $i < 5; $i++ ){
    $randCode .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);
}

$_SESSION['code'] = strtoupper($randCode);

$img = imagecreate(75,25) or die("创建图像资源失败,请刷新页面");
$bgColor = isset($_GET['mode']) && $_GET['mode'] == 't' ? imagecolorallocate($img,245,245,245) : imagecolorallocate($img,255,255,255);
$pixColor = imagecolorallocate($img,mt_rand(88, 245), mt_rand(55, 240), mt_rand(99, 200));
//画字符、大小
for($i = 0; $i < 5; $i++){
    $x = $i * 13 + mt_rand(3, 7) - 2;
    $y = mt_rand(0, 3);
    $text_color = imagecolorallocate($img, mt_rand(100, 250), mt_rand(80, 180), mt_rand(90, 220));
    imagechar($img, 5, $x + 5, $y + 3, $randCode[$i], $text_color);
}
//画干扰点
for($j = 0; $j < 240; $j++){
    $x = mt_rand(0,100);
    $y = mt_rand(0,40);
    imagesetpixel($img,$x,$y,$pixColor);
}
//4条横斜线
for ($i=0; $i < 5; $i++) { 
    $lineColor = imagecolorallocate($img, rand(50, 150), rand(50, 150), rand(50, 150));
    $lineX1 = 0;
    $lineX2 = 80;
    $lineY1 = ($i + 1) * 8;
    $lineY2 = ($i + 1) * 15;
    imageline($img, $lineX1, $lineY1, $lineX2, $lineY2, $lineColor);
}

//4条竖斜线
for ($i=0; $i < 5; $i++) { 
    $lineColor = imagecolorallocate($img, rand(50, 150), rand(50, 150), rand(50, 150));
    $lineY1 = 0;
    $lineY2 = 30;
    $lineX1 = ($i + 1) * 8;
    $lineX2 = ($i + 1) * 15;
    imageline($img, $lineX1, $lineY1, $lineX2, $lineY2, $lineColor);
}

header('Content-Type: image/png');
imagepng($img);
imagedestroy($img);
将以上代码保存为[code]checkcode.php[/code]放在 你网站根目录/include/lib/下 覆盖,然后重启Apache或者是Nginx 即可看到效果(当然需要后台开启验证码)
为防止真正的读者不能识别验证码,请给验证码添加上 点击刷新 功能,
参考链接:给emlog5.3添加验证码刷新功能 https://mrxn.net/emlog-teach/242.html
[red]注:在进行DIY操作之前,请先备份相关文件,以防万一!本文基于emlog 5.31测试可行,理论上兼容所有版本,只要php版本不低于4[/red]
相关参考:
https://segmentfault.com/a/1190000002924386
http://bbs.emlog.net/thread-40567-1-1.html

对于反垃圾评论,也可以试试我这款插件:

https://mrxn.net/emlog-teach/emlog-math-comment-plugin.html

http://www.emlog.net/plugin/248



admin 发布于  2016-3-28 15:52 

emlog插件emlog-math-comment-plugin一款简单的防止垃圾评论的插件发布 emlog

emlog插件emlog-math-comment-plugin一款简单的防止垃圾评论的插件在Mrxn's Blog发布了,制作这款插件的原因是被广告骚扰严重,受不鸟了!先来看看她的样子:

001.png

就是简单的利用数学加减法和打钩确认法组合成的双验证,

打钩法,就不说了,很早以前就出来了,只不过都是通过修改模板文件来实现,移植性不强,集成插件,方便快捷!

数学加减法的验证是在看了某博客使用的wp上面有这个验证,感觉还不错,就移植到emlog上面来了,方便大家使用,对垃圾评论有一定的作用。

好了,多的不说了,使用方法:

下载插件压缩包,在后台直接上传,打开就可使用了,或则是下载压缩包后解压,上传解压后的文件夹到插件目录下,路径一般为:根目录/content/plugins/ ,上传完毕后,回到后台激活即可使用。

特别说明:

在更换模板前,请先停用此插件,否则或造成验证重复。停用插件后,需要清除浏览器缓存才能看到效果。

如果有重复验证,请按照以下步骤操作即可恢复正常:

1.停用插件

2.修改module.php,打开module.php搜索

<div style="position: relative;"><label 这样的代码,然后删除这两个div 之间的内容重新保存module.php即可。


3.如需再次重新使用,后台激活插件即可,其实在你更换模板或者是修改模板的时候,先停用插件就好了。

最后,在使用中,如有什么问题和建议,请在我的博客留言反馈

插件下载:

Emlog 官方下载:http://www.emlog.net/plugin/248

本地下载:

因为论坛那多不知道干啥去了,已经两个月没有消息了,而且鉴于很多emer问我要,所以就干脆先发布了吧,就博主自己使用这一周来,广告就没看到了,但是,论坛有人说加法被破解了,不知道是不是真的哈,但是我确实没有收到广告,如果后面被破解了,我会尽快升级,修改验证机制的,其实不传播,自己使用就是最好的,就可以最大大降低被破解,一发布出去,广告知道了源码就难说了,哎 ,先不管了,先这样吧,博主这段时间也有事,有什么问题和建议,可以在这里评论反馈或者是留言板留言。math_comment.zip


admin 发布于  2015-12-10 22:32 

emlog侧边栏日历显示正在加载中解决方法(包括https和http) emlog

这几天在论坛看到王老师 @王语双  发帖说,他的emlog内页日历显示不出来,一直显示 --加载中(包括https和http),却一直显示不出来,如图:

000090-2015-11-06.jpg

王老师的是http网站,我的是https的,也是加载不出来,在论坛看到的答复中知道大概是这三点的原因造成的:


  1. js冲突;
  2. 网络问题;
  3. 301跳转问题; 

王老师的情况最后发现是属于网络问题,即有时候网络高峰期的时候,移动网络有可能出现这种情况;

js冲突一般在浏览器的开发者工具条里面可以看出来,这里不做讨论;

网络问题嘛,没法解决,自己换服务商吧!

301跳转问题:

没做好301跳转的,比如没有做mrxn.net 301跳转到 www.mrxn.ne t的时候,访问mrxn.net 就有可能出现这种情况,一般在开发者工具条里面有提示:


XMLHttpRequest cannot load http://www.wys.me/?action=cal&randnum=0.19238296267576516. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://wys.me' is therefore not allowed access.


我的站点属于https加密的类型,所以提示的就是如下信息:


Mixed Content: The page at 'https://mrxn.net/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'https://mrxn.net/?action=cal&randnum=0.8051533969119191'. This request has been blocked; the content must be served over HTTPS.
大概意思就说,这个页面使用的是https加载https://mrxn.net,但是请求里面混杂非加密的请求


https://mrxn.net?action=cal&randnum=0.8051533969119191,因此这个请求被服务器阻断了,因为服务器要求请求必须是https加密的。

000091-2015-11-06.jpg

我在论坛里面回帖说了一下我的https也不加载,得到了基友hackhp @hackhp 的如下答复:

修改/include/lib/function.base.php里面的

return 'http://' . $_SERVER['HTTP_HOST'] . $matches[0];


修改为:

return '//' . $_SERVER['HTTP_HOST'] . $matches[0];
我做了测试,的确修改后就可以加载了

000092-2015-11-06.jpg

函数的注释显示是

/**
 * 获取站点地址(仅限根目录脚本使用,目前仅用于首页ajax请求)
 */

也就是说这个函数是用于ajax请求获取网站地址的,那么,修改成如下形式也是可以的:

return 'https://' . $_SERVER['HTTP_HOST'] . $matches[0];
结果证明是可行的。

emlog侧边栏日历显示正在加载中解决方法(包括https和http)这个小问题在此小计就结束了,在此记录分享可能需要的朋友,希望可以帮到你们。


admin 发布于  2015-11-6 16:48 

Emlog文章标题自动生成英语别名,利于SEO emlog

很多搞SEO的通常都是自己把文章标题给写成拼音,这样感觉好麻烦的有没有,现在可以在修改内核的保存文件就行,前提是你要善于折腾,如果不喜欢又懒得折腾的那就不需要看下去了。

改动教程:
1、打开admin目录下载的save_log.php文件,在里面加入以下代码

class Chinese_to_PY {
    /**
     * 拼音字符转换图
     * @var array
     */
    private static $_aMaps = array(
        'a'=>-20319,'ai'=>-20317,'an'=>-20304,'ang'=>-20295,'ao'=>-20292,
        'ba'=>-20283,'bai'=>-20265,'ban'=>-20257,'bang'=>-20242,'bao'=>-20230,'bei'=>-20051,'ben'=>-20036,'beng'=>-20032,'bi'=>-20026,'bian'=>-20002,'biao'=>-19990,'bie'=>-19986,'bin'=>-19982,'bing'=>-19976,'bo'=>-19805,'bu'=>-19784,
        'ca'=>-19775,'cai'=>-19774,'can'=>-19763,'cang'=>-19756,'cao'=>-19751,'ce'=>-19746,'ceng'=>-19741,'cha'=>-19739,'chai'=>-19728,'chan'=>-19725,'chang'=>-19715,'chao'=>-19540,'che'=>-19531,'chen'=>-19525,'cheng'=>-19515,'chi'=>-19500,'chong'=>-19484,'chou'=>-19479,'chu'=>-19467,'chuai'=>-19289,'chuan'=>-19288,'chuang'=>-19281,'chui'=>-19275,'chun'=>-19270,'chuo'=>-19263,'ci'=>-19261,'cong'=>-19249,'cou'=>-19243,'cu'=>-19242,'cuan'=>-19238,'cui'=>-19235,'cun'=>-19227,'cuo'=>-19224,
        'da'=>-19218,'dai'=>-19212,'dan'=>-19038,'dang'=>-19023,'dao'=>-19018,'de'=>-19006,'deng'=>-19003,'di'=>-18996,'dian'=>-18977,'diao'=>-18961,'die'=>-18952,'ding'=>-18783,'diu'=>-18774,'dong'=>-18773,'dou'=>-18763,'du'=>-18756,'duan'=>-18741,'dui'=>-18735,'dun'=>-18731,'duo'=>-18722,
        'e'=>-18710,'en'=>-18697,'er'=>-18696,
        'fa'=>-18526,'fan'=>-18518,'fang'=>-18501,'fei'=>-18490,'fen'=>-18478,'feng'=>-18463,'fo'=>-18448,'fou'=>-18447,'fu'=>-18446,
        'ga'=>-18239,'gai'=>-18237,'gan'=>-18231,'gang'=>-18220,'gao'=>-18211,'ge'=>-18201,'gei'=>-18184,'gen'=>-18183,'geng'=>-18181,'gong'=>-18012,'gou'=>-17997,'gu'=>-17988,'gua'=>-17970,'guai'=>-17964,'guan'=>-17961,'guang'=>-17950,'gui'=>-17947,'gun'=>-17931,'guo'=>-17928,
        'ha'=>-17922,'hai'=>-17759,'han'=>-17752,'hang'=>-17733,'hao'=>-17730,'he'=>-17721,'hei'=>-17703,'hen'=>-17701,'heng'=>-17697,'hong'=>-17692,'hou'=>-17683,'hu'=>-17676,'hua'=>-17496,'huai'=>-17487,'huan'=>-17482,'huang'=>-17468,'hui'=>-17454,'hun'=>-17433,'huo'=>-17427,
        'ji'=>-17417,'jia'=>-17202,'jian'=>-17185,'jiang'=>-16983,'jiao'=>-16970,'jie'=>-16942,'jin'=>-16915,'jing'=>-16733,'jiong'=>-16708,'jiu'=>-16706,'ju'=>-16689,'juan'=>-16664,'jue'=>-16657,'jun'=>-16647,
        'ka'=>-16474,'kai'=>-16470,'kan'=>-16465,'kang'=>-16459,'kao'=>-16452,'ke'=>-16448,'ken'=>-16433,'keng'=>-16429,'kong'=>-16427,'kou'=>-16423,'ku'=>-16419,'kua'=>-16412,'kuai'=>-16407,'kuan'=>-16403,'kuang'=>-16401,'kui'=>-16393,'kun'=>-16220,'kuo'=>-16216,
        'la'=>-16212,'lai'=>-16205,'lan'=>-16202,'lang'=>-16187,'lao'=>-16180,'le'=>-16171,'lei'=>-16169,'leng'=>-16158,'li'=>-16155,'lia'=>-15959,'lian'=>-15958,'liang'=>-15944,'liao'=>-15933,'lie'=>-15920,'lin'=>-15915,'ling'=>-15903,'liu'=>-15889,'long'=>-15878,'lou'=>-15707,'lu'=>-15701,'lv'=>-15681,'luan'=>-15667,'lue'=>-15661,'lun'=>-15659,'luo'=>-15652,
        'ma'=>-15640,'mai'=>-15631,'man'=>-15625,'mang'=>-15454,'mao'=>-15448,'me'=>-15436,'mei'=>-15435,'men'=>-15419,'meng'=>-15416,'mi'=>-15408,'mian'=>-15394,'miao'=>-15385,'mie'=>-15377,'min'=>-15375,'ming'=>-15369,'miu'=>-15363,'mo'=>-15362,'mou'=>-15183,'mu'=>-15180,
        'na'=>-15165,'nai'=>-15158,'nan'=>-15153,'nang'=>-15150,'nao'=>-15149,'ne'=>-15144,'nei'=>-15143,'nen'=>-15141,'neng'=>-15140,'ni'=>-15139,'nian'=>-15128,'niang'=>-15121,'niao'=>-15119,'nie'=>-15117,'nin'=>-15110,'ning'=>-15109,'niu'=>-14941,'nong'=>-14937,'nu'=>-14933,'nv'=>-14930,'nuan'=>-14929,'nue'=>-14928,'nuo'=>-14926,
        'o'=>-14922,'ou'=>-14921,
        'pa'=>-14914,'pai'=>-14908,'pan'=>-14902,'pang'=>-14894,'pao'=>-14889,'pei'=>-14882,'pen'=>-14873,'peng'=>-14871,'pi'=>-14857,'pian'=>-14678,'piao'=>-14674,'pie'=>-14670,'pin'=>-14668,'ping'=>-14663,'po'=>-14654,'pu'=>-14645,
        'qi'=>-14630,'qia'=>-14594,'qian'=>-14429,'qiang'=>-14407,'qiao'=>-14399,'qie'=>-14384,'qin'=>-14379,'qing'=>-14368,'qiong'=>-14355,'qiu'=>-14353,'qu'=>-14345,'quan'=>-14170,'que'=>-14159,'qun'=>-14151,
        'ran'=>-14149,'rang'=>-14145,'rao'=>-14140,'re'=>-14137,'ren'=>-14135,'reng'=>-14125,'ri'=>-14123,'rong'=>-14122,'rou'=>-14112,'ru'=>-14109,'ruan'=>-14099,'rui'=>-14097,'run'=>-14094,'ruo'=>-14092,
        'sa'=>-14090,'sai'=>-14087,'san'=>-14083,'sang'=>-13917,'sao'=>-13914,'se'=>-13910,'sen'=>-13907,'seng'=>-13906,'sha'=>-13905,'shai'=>-13896,'shan'=>-13894,'shang'=>-13878,'shao'=>-13870,'she'=>-13859,'shen'=>-13847,'sheng'=>-13831,'shi'=>-13658,'shou'=>-13611,'shu'=>-13601,'shua'=>-13406,'shuai'=>-13404,'shuan'=>-13400,'shuang'=>-13398,'shui'=>-13395,'shun'=>-13391,'shuo'=>-13387,'si'=>-13383,'song'=>-13367,'sou'=>-13359,'su'=>-13356,'suan'=>-13343,'sui'=>-13340,'sun'=>-13329,'suo'=>-13326,
        'ta'=>-13318,'tai'=>-13147,'tan'=>-13138,'tang'=>-13120,'tao'=>-13107,'te'=>-13096,'teng'=>-13095,'ti'=>-13091,'tian'=>-13076,'tiao'=>-13068,'tie'=>-13063,'ting'=>-13060,'tong'=>-12888,'tou'=>-12875,'tu'=>-12871,'tuan'=>-12860,'tui'=>-12858,'tun'=>-12852,'tuo'=>-12849,
        'wa'=>-12838,'wai'=>-12831,'wan'=>-12829,'wang'=>-12812,'wei'=>-12802,'wen'=>-12607,'weng'=>-12597,'wo'=>-12594,'wu'=>-12585,
        'xi'=>-12556,'xia'=>-12359,'xian'=>-12346,'xiang'=>-12320,'xiao'=>-12300,'xie'=>-12120,'xin'=>-12099,'xing'=>-12089,'xiong'=>-12074,'xiu'=>-12067,'xu'=>-12058,'xuan'=>-12039,'xue'=>-11867,'xun'=>-11861,
        'ya'=>-11847,'yan'=>-11831,'yang'=>-11798,'yao'=>-11781,'ye'=>-11604,'yi'=>-11589,'yin'=>-11536,'ying'=>-11358,'yo'=>-11340,'yong'=>-11339,'you'=>-11324,'yu'=>-11303,'yuan'=>-11097,'yue'=>-11077,'yun'=>-11067,
        'za'=>-11055,'zai'=>-11052,'zan'=>-11045,'zang'=>-11041,'zao'=>-11038,'ze'=>-11024,'zei'=>-11020,'zen'=>-11019,'zeng'=>-11018,'zha'=>-11014,'zhai'=>-10838,'zhan'=>-10832,'zhang'=>-10815,'zhao'=>-10800,'zhe'=>-10790,'zhen'=>-10780,'zheng'=>-10764,'zhi'=>-10587,'zhong'=>-10544,'zhou'=>-10533,'zhu'=>-10519,'zhua'=>-10331,'zhuai'=>-10329,'zhuan'=>-10328,'zhuang'=>-10322,'zhui'=>-10315,'zhun'=>-10309,'zhuo'=>-10307,'zi'=>-10296,'zong'=>-10281,'zou'=>-10274,'zu'=>-10270,'zuan'=>-10262,'zui'=>-10260,'zun'=>-10256,'zuo'=>-10254
    );

    /**
     * 将中文编码成拼音
     * @param string $chinese 要转换为拼音的字符串
     * @param string $sRetFormat 返回格式 [first:每个字的首字母|all:全拼音|one:字符串字母]
     * @return string
     */
    public static function getPY($chinese, $sRetFormat='first'){
        $sGBK = iconv('UTF-8', 'GBK', $chinese);
        $sUTF8 = iconv('GBK', 'UTF-8', $sGBK);
        if($sUTF8 != $chinese) $sGBK = $chinese;
        $aBuf = array();
        for ($i=0, $iLoop=strlen($sGBK); $i<$iLoop; $i++) {
            $iChr = ord($sGBK{$i});
            if ($iChr>160)
                $iChr = ($iChr<<8) + ord($sGBK{++$i}) - 65536;
            if ('first' == $sRetFormat || 'one' == $sRetFormat)
                //$aBuf[] = substr(self::zh2py($iChr),0,1);
                $aBuf[] = self::zh2py($iChr);
            else
                $aBuf[] = self::zh2py($iChr);

        }
        if ('first' === $sRetFormat)
            return implode('', $aBuf);
        elseif('one' == $sRetFormat)
            return $aBuf[0];
        else
            return implode(' ', $aBuf);
    }

    /**
     * 中文转换到拼音(每次处理一个字符)
     * @param number $iWORD 待处理字符双字节
     * @return string 拼音
     */
    private static function zh2py($iWORD) {
        if($iWORD>0 && $iWORD<160 ) {
            return chr($iWORD);
        } elseif ($iWORD<-20319||$iWORD>-10247) {
            return '';
        } else {
            foreach (self::$_aMaps as $py => $code) {
                if($code > $iWORD) break;
                $result = $py;
            }
            return $result;
        }
    }
}


最后将此文件下的:

$alias = isset($_POST['alias']) ? addslashes(trim($_POST['alias'])) : '';
修改成:
$al=htmlspecialchars($_POST['alias']);
if(empty($al)){
    $alias = preg_replace('/ /', '-', Chinese_to_PY::getPY($title,'all'));
}else{
    $alias = '';
}
保存,即可实现效果!

但是感觉标题太长了。。。正在研究缩短,或者是取货首字母,或前两个字母。。。000036-2015-09-22.jpg

此文并非博主原创,是在博友独狼哪里看到的,原文地址:http://www.xlonewolf.net/course/32.html



admin 发布于  2015-9-22 19:43 

emlog开启评论审核之后,评论结束自动跳转回原文 emlog

emlog开启评论审核之后,评论结束就会跳转到这个界面:

000032-2015-09-22.jpg

不会自动跳转回原文,感觉不太好,于是呢,在论坛问了一下,最终修改方法如下,在此小计,希望可以帮到那些需要的童鞋:

找到 \include\lib\function.base.php 865行的 emMsg()函数,把 

$isAutoGo = false 修改成  $isAutoGo = true


000034-2015-09-22.jpg

其实,函数里面有说明的,boolean $isAutoGo 是否自动返回 true false 。之后评论完就会自动跳转到原文了(注意看左上角的旋转的圆圈):

000035-2015-09-22.jpg

随便吐槽,谁这么无奈,跑我这里刷广告。。。专门针对的。。。不过 我只需要一键,就删除了所有广告,所以,慎重!!!000033-2015-09-22.jpg


admin 发布于  2015-9-22 19:25 

插件冲突导致emlog的rss输出出错 emlog

先来看一下插件冲突导致rss输出出错的样子吧:

2015-08-29 22_52_00.png

估计很多的朋友都有过这种情况吧,rss.php输出出错,我也是,一开始以为是数据库表出错了,还使用工具箱修复,结果发现,还是不可以的。于是就把所有的插件都停用了,然后,慢慢测试,发现下面几个插件在激活状态都会导致rss.php输出出错:

1.奇遇的防垃圾评论插件 地址:http://www.emlog.net/plugin/10 希望奇遇可以修复

2.二今的代码演示插件,地址:http://www.emlog.net/plugin/166 希望而今可以修复

3.vibbow的索引通知插件 地址:http://www.emlog.net/plugin/9 希望可以修复

这些都是自己在最新版的emlog5.31上测试发现的,以为这些插件能够使用,但是版本上没有更新,所以兼容性不是很好。当然了,作者有时间最好修复一下,仅此小计一下,方便那些对于rss.php出错但是不知道什么原因的童鞋有点帮助,禁用这些插件就OK了,这些插件其实挺好的,只是没有升级更新。

禁用这些插件之后,rss输出就OK了:

2015-08-29 22_52_30.png


admin 发布于  2015-8-29 21:52 

emlog静态化插件有可能出现的几个问题/bug及解决方法 emlog

今天旧城博客来说加友链,我添加了之后发现,根本没有显示,ctrl+F5刷新,清空浏览器cookies,换浏览器,都试过了,还是没有显示,这是我又想是不是因为CDN的原因,于是关掉CDN,发现问题依旧存在;但是由于当时有事情没时间解决,就放了一下,就在刚刚,朋友们的评论信息也不能及时显示了,同时还测试了一下更换模板,发现居后台换了模板之后,去首页刷新还是原来的模板,这可把我吓一跳,还以为是服务器出问题了,于是登陆服务器,都检查了一遍,发现没有什么事儿。。。我就纳闷了。。。试了一下后台数据的更新缓存,一样没有效果。

就在准备找人询问原因的时候,突然灵光一闪!嘿嘿,插件!嗯,我试着emlog静态化插件禁止了,更新缓存,首页已刷新,OK,各项恢复正常。。。其实之前也遇到过因为这个emlog静态化插件和CSRF保护脚本插件有冲突,开启CSRF保护脚本插件的时候使用emlog静态化插件就会出现权限问题403 forbidden这类的问题。之前还遇到过类似的插件冲突问题,插件打开顺序不同,结果显示的界面就会不同,或者是功能就会不同程度的变化。。。

总结一下:emlog程序很简洁,通过插件可以是程序变得功能多且强大,但是就会导致程序变慢,各种JS冲突,权限分配、判断等等一系列问题,所以当你的emlog遇到了一些小问题问题(显示,排版等)的时候,可以尝试先把所有的插件禁止了,如果你的插件比较多,可以选择上传官方的emlog工具箱插件,可以一键禁止所有已开启的插件,当然你在排除问题之前可以先备份一下相关数据,到时候找到了问题直接恢复数据,再去禁用相关插件就可以了,这样省时省力。最后呢,希望新版本的emlog6正式版发布的时候可以解决这些问题,同时呢,也希望各位emlog的开发者能够注意,考虑这些问题,在制作插件的时候多考虑一下插件的兼容性。以上内容只是我的个人见解,希望没有给各位看官带来不快,如有,对不起,请 Ctrl+W 关闭当前页。


admin 发布于  2015-8-17 21:21