twitter on 2008-09-15

  • 好友外地来访,哈。 于 2008-09-15 02:38:16
  • 修改模板代码,在文章下方显示当前文章被访问的次数。试图调整index.php,发现显示的是主页访问量,对象搞错了,以后有时间再调整。 于 2008-09-15 03:42:45
  • Twitter Tools做出来的信息摘要,时间戳晚了八个小时,看来是时区问题没有处理好。 于 2008-09-15 03:44:55
  • StatPress的数据量好大,这才不到半年,数据库已经快7兆了。 于 2008-09-15 03:47:26

Powered by Twitter Tools.

StatPressCN——BLOG访问统计工具(完美支持简繁中文)

声明此插件源于Daniele LippiStatPress,me在它的基础之上进行升级开发。me以前的研究开发文章见升级StatPress的功能(完美支持中文)StatPress深度使用

插件名称:StatPressCN

最新版本:1.6.8.5(于2009年2月21日)

作者:heart5

【告示】:StatPressCN已经入驻WordPress的官方插件基地,建议大家使用官方插件基地的StatPressCN版本,那样就可以通过插件自动更新(如果访问不了可能是被光荣的墙了,直接用me提供的下载plugin-update-plus)了。当然,本帖作为开发基地,做技术探讨和交流(qq:724987115或gmail:baiyefeng@lovegmail.com)所用,仍会维护更新;另外me还维护了一个StatPressCN综合信息页面,包括下载数量和使用StatPressCN统计工具的blog清单等。

插件下载

请前往WordPress官方插件网站:WordPress Plugins -> StatPressCN

插件安装

关于安装:下载插件压缩包,把解压后得到的statpresscn目录上传至blog站点的wp-content/plugins目录下,然后在管理界面中激活StatPressCN插件即可。
关于订阅数统计:建议安装Feed Count插件(如果您通过feedburner烧录了rss的话),这样在widget中显示的订阅数就相对是全的,因为StatPressCN会读取Feed Count撷取的数据并和对您的blog原生rss的订阅数进行加总,当然如果您没有在feedburner上烧录的话也可以正常使用。

插件使用

查阅访问统计情况:最直观简单的使用就是进入blog管理界面会看到访问统计的链接,点击进入就可以看到访问信息了,功能提供如下:纵览、详情、探测以及其他辅助设置等;
扩展使用
1、如果您使用了支持widgets的WordPress模板主题,则可以直接调用StatPressCN的widgets,一个叫StatPress,一个是StatPress TopPosts。StatPress是主程序,显示访问统计的汇总信息,使用方法是把这个小工具在主题设计中加入侧栏即可,然后需要稍微做些编辑,相关参数通过形如%totoalvisitors%的形式调用,另外,还提供了显示最近来访者信息的功能(比如从哪儿来、访问了哪些文章等),可以在后台选项面板中启用。

2、那个TopPosts是显示热帖的,可以在主题设计中直接调用这个小工具。

3选项中可以直接设定文章热度显示和相关文章显示,不用修改主题代码(很方便哦);另外,为了方便朋友们定制使用统计参数,me提供了几个单独输出的函数,可以在模板代码中使用:

(1)/* Hot,当前页面的热度 */
function iri_StatPress_HotDepth()

注意事项:如果您在single中调用,直接使用 iri_StatPress_HotDepth() 就行了;如果您在index或archive中调用,请使用 iri_StatPress_HotDepth($post->ID) 以传入参数,否则显示的将是当前页面的浏览数而不是具体文章的浏览数。

(2)/* 获取相关文章*
function heart5_related_post($post->ID)

4、为了方便大家了解访客来源,提供了五个IP信息查询引擎,可以自由选用,默认的那个是带GMap支持的;

5、提供了用户自定添加恶意IP和爬虫列表自定义功能,高级用户专用,可以在选项中选择以出现编辑界面,默认是不开启的。

升级和纠错计划

  1. 修正通过google.com搜索但自动跳转至google.cn后无法有效识别中文搜索关键词的问题;【搞定
  2. 来自search.live.com的关键词貌似都很无关;【搞定
  3. 过滤形如/wp-cron.php的访问;【搞定
  4. 妥善处置来自baidu cache和google cache的页面参考;【Google Cache部分搞定Baidu Cache因为机制问题,暂无法处理
  5. 修正对blog源rss的访问统计,正确识别来自同一地址的抓取,目前的数据明显不合理,偏高;【搞定
  6. 增加对繁体中文关键词的判断和识别,方便台湾的朋友使用;【搞定
  7. 调整Overview默认显示天数为20;【搞定
  8. 解决形如akst_action=share-this页面的问题(因为me装了share-this插件导致的)【搞定】;
  9. 升级文章热度功能,图形化显示【搞定】;
  10. 丰富蜘蛛和爬虫数据文件;【持续更新ing
  11. 增加相关文章功能【搞定】;
  12. 把文章热度、最热文章、相关文章和随机文章自动化(不用在手动更改主题模板代码)【搞定了热度功能的自动化】;
  13. 优化statpress数据库结构,增加对访问文章的ID登记,彻底解决固定链接切换导致统计不准的问题(为爱折腾的朋友们提供)【搞定】;
  14. 增加用户定制功能,比如增加屏蔽IP和搜索引擎数据;【搞定
  15. 解决添加banip规则后依然记录该ip访问的问题【搞定】;
  16. 在侧栏小工具中显示当前访问者信息【搞定】;
  17. 增加对恶意访问IP的自动识别和禁止功能,安全防护;
  18. 提高来访者地理位置的识别精确度【搞定】;
  19. 对数据库中表大小限制提供相应处理机制。

升级记录:

—————————————

1.6.7.3 2009年1月3日

主程序:

  1. 修正了更改永久链接时在Opera浏览器下出现header错误的bug;
  2. 更改了当前访问在页面显示时的地理信息显示来源,更精确了;
  3. 添加移动用户来访分析子页面;
  4. 热度显示用小图标实现,增加美观度。

—————————————

1.6.6.7 2009年1月3日

主程序:

  1. 设置不同的ip信息服务器查询服务,采用调用外部免费接口的方式实现,放弃了自架服务器的设想和尝试;
  2. 在侧栏工具中增加comefrom参数,显示用户来自何方。

—————————————

1.6.6.6 2009年1月1日

主程序:

  1. 今天收到蓝十一的信,说是dh来信了,呵呵,看来这个ip查询的流量不小;换了四个小时时间还是没有找到更合适的免费ip查询服务,还是用hostinfo吧,比没有强;
  2. 在纵览中把ip统统加上链接,可以用domaintools进行查询,呵呵,那个内容可丰富的很;
  3. 增加了两行调试信息;
  4. 嗯,为元旦献礼了

—————————————

1.6.6.4 2008年12月31日

主程序:

  1. 为了方便调试,分离debug info页面出来作为独立的子页面出现,在其中增加了mysql版本信息、博客名称、blogsite(可能异于默认值)、编码、rss输出所用语言、固定链接模板,格式化输出php的加载模块;
  2. 修正了使用个性化地址做blog地址时无法识别文章链接的错误,感谢Maxim朋友(好像是俄罗斯的);
  3. 强化相关博文功能设置,如果访问量不超过1000,该项功能在选项中无法启用,以此来增强其准确度,因为内部逻辑是访问的次数越多,统计数据越趋于准确;
  4. 修正了相关博文功能无效输出的错误,在没有相关文章的情况下仍然输出“相关博文”几个字是不对的,现在好了,没有的话就不显示,静悄悄的多好;
  5. 根据doggie朋友的建议,在StatPress侧栏小工具中增加了所有页面访问量的参数供调用。

—————————————

1.6.6.0 2008年12月29日

主程序:

  1. 模块化相关文章功能(其实仅仅是来访者也访问了的文章),可以在选项中启用;启用后自动在前台文章的尾部显示“相关文章”功能。
  2. 升级程序时出现了一个问题,默认是开启文章热度和相关文章功能的,且取消不了,现已经修正了,但影响了部分朋友的使用,惭愧啊,教训

—————————————

1.6.5.4 2008年12月21日

主程序:

  1. 感谢hugo的建议,使用maxmind更精确的ip信息库,拿me的网站做的数据服务器,呵呵,希望访问量不要太大;
  2. 接受金融旅行者朋友的建议,对侧栏的统计输出格式进行调整,适合大部分模板主题;
  3. 感谢浮黑朋友的反馈,修正了对某类permalink设定的支持,比如/post/%year%%month%%day%/%post_id%.html;
  4. 修正对以commen结尾的链接请求的识别。

更新禁止IP、spider数据规则。

—————————————

1.6.4.1 2008年12月14日

主程序:

  1. 彻底模块化统计系统更新函数,大家可以自行决定对哪些数据记录进行更新,提升运行效率,对于访问量大的blog尤其实用;
  2. 在选项中选中某项功能直接执行该操作,不再延后;
  3. 在侧栏小工具中显示版本,方便问题追踪;

调整操作系统数据规则,可以识别摩托罗拉、诺基亚等手机上网。

—————————————

1.6.3.3 2008年12月10日

主程序:

  1. 优化了统计系统更新功能,减少对数据库的写操作,提升运行速度;
  2. 正式把意大利语言支持加入插件代码库;
  3. 修正了preg_match中因为php版本兼容问题出现的运行错误,另外在选项中提供了Debug Info信息输出功能,方便捉虫;
  4. 回复了statpress reloaded作者要求组团的要求,me更愿意独立开发;
  5. 更新了screenshot图片,有空在丰富说明帮助文档。

searchengine.dat增加了对icq的支持,其实它也是基于Google的;另外spider.dat和banip.dat都添加了新规则各一条。

—————————————

1.6.2.9 2008年12月7日

主程序:

  1. 感谢Gianni Diurno朋友(来自:gidibao.net)的支持,现在StatPressCN已经支持意大利语了;
  2. 修正了export输出时一楼ptype和pvalue字段的小错误,谢谢崔凯

spider.dat新增两个爬虫判定规则。

—————————————

1.6.2.6 2008年12月2日

主程序:

  1. 增加对spider数据的用户自定义功能;并且把它和对恶意IP自定义处理的选项设置,默认是不现实在功能菜单上的,可以在选项中使能;
  2. 接受崔凯朋友的建议,在详情页面中Top Referrer部分增加链接,方便回访;
  3. 为提升程序效率,更新了数据库字段数据类型,但过程中出了一次代码错误,导致用户页面出现出错提示,并遗漏了对非页面内容的访问数据,惭愧。

searchengine.dat和banip.dat以及spider都有更新。

—————————————

1.6.1.1 2008年11月26日

主程序:

  1. 经Hugo提醒,增加了对banips.dat的读写权限判断,原来也有服务器不允许php脚本写入用户目录的文件啊;
  2. 借鉴小雨天晴(pcload?)和崔凯同学的建议,丰富了ip查询工具,现在可以自由选择了,共四款,后两种中文用户专用。

searchengine.dat增加了两个俄罗斯的搜索引擎规则,谢谢Maxim朋友。

—————————————

1.6.0.0 2008年11月26日

主程序:

  1. 将关于StatPressCN的使用统计等功能拆分出去,在主题中使用,不拖累主程序;
  2. 完成恶意IP访问的用户自定义禁止功能,支持.htaccess文件限制访问规则自动生成;更新了bansip.dat的数据结构,支持不统计访问和禁止访问网站(很严厉哟,对恶意的黑客类访问可用)两种规则。

—————————————

1.5.7.9 2008年11月24日

主程序:

  1. 根据朋友的建议,在详情页面中增加了链接可以直接查询来访ip信息;
  2. 升级了支持页面,提供StatPressCN的全面信息(如下载数量以及部分使用了StatPressCN的blog的清单)。

蜘蛛数据:增加对sogou test的识别。

—————————————

1.5.6.9 2008年11月17日

主程序:

  1. 支持在侧栏小工具中显示当前访问者信息,并且自动化设置,可以在选项中使能。

—————————————

1.5.4.0 2008年11月16日

主程序:

  1. 完成相关文章功能的支持,访问量越大准确度越高!

—————————————

1.5.3.0 2008年11月16日

主程序:

  1. 接受wx朋友的建议,对侧栏widget稍微做了下美化,可惜me的css水平确实太菜,慢慢来吧;
  2. 在侧栏中增加对“技术支持来自天高云淡”字样,朋友们不会觉得很突兀吧,呵呵;
  3. 完善对采用默认永固链接的统计输出。

banip数据:增加对66.90.73.188的识别,还是freebsd系统,作为spider,为啥都不表明身份呢?!

—————————————

1.5.2.0 2008年11月15日

主程序:

  1. 增加了对page(页面)的访问统计支持;
  2. 重新规划Option(选项)页面,使之更直观;
  3. 解决了统计系统更新时丢失对feed和trackback记录的错误。

—————————————

1.5.1.8 2008年11月13日

主程序:

  1. 修正了无法识别禁访IP的bug。

—————————————

1.5.1.0 2008年11月13日

主程序:

  1. 识别对页面的feed和trackback的识别并统计访问次数。

搜索引擎数据:增加对114搜索的支持。

—————————————

1.5.0.0 2008年11月12日

主程序:

  1. 全面应用正则表达式工具,精确识别访问页面的postid,避免误判;提升页面显示效率;增加对分类和首页翻页的支持,比如那些page/2之类的链接请求。

banip数据:增加88.191.94.206、60.213.186.250、88.191.79.43、88.191.94.206、88.191.97.89。

—————————————

1.3.5.0 2008年10月27日

主程序:

  1. 费了好大功夫才揪出微软的Windows Live的作弊行为,彻底清除来自微软的无效搜索数据。

banip数据:增加对微软垃圾搜索IP的识别:65.55.109.和65.55.110.

—————————————

1.3.4.0 2008年10月26日

主程序:

  1. 在选项中添加显示文章热度功能,不用再手动更改主题文件了,哈哈。

—————————————

1.3.3.7 2008年10月26日

主程序:

  1. 增加对搜索引擎wordpress.org.cn和guogou.com的支持。

SearchEngine数据:

支持wordpress.org.cn和guogou.com。

—————————————

1.3.3.6 2008年10月25日

主程序:

  1. 解决了php5.0中有strripos函数而低版本无此函数无法运行StatPressCN的问题,兼容php4.×版本。
  2. 修正了链接请求尾部出现‘的问题(会破坏mysql查询语句)。

—————————————

1.3.3.0 2008年10月24日

主程序:

  1. 修正了统计界面中半个汉字的错误显示;
  2. 修改了“详情”中显示的项目数量。

SearchEngine数据:

增加了对Google Wap和Google Translate的识别,调整了规则顺序,提高程序运作效率。

—————————————

1.3.1.0 2008年10月15日

主程序:

  1. 升级了热帖功能,可以在index和archive中调用。这个功能很直观很方便,是属于访客界面友好类型的。
  2. 升级了对Google搜索引擎的识别,可以辨别client=pub-××××的搜索来访了。

Spider数据:

增加了2个新规则,修正了空格问题(会影响对spider的判别)

Browser数据:

增加了对OffByOne等浏览器的识别。

—————————————

1.3.0.0 2008年10月13日

主程序:

  1. 终于下定决心更改了统计数据库数据结构,对访问页面的id进行登记,这下可以完美解决用户更改permalink设定带来的统计不准问题;爱折腾的同学们,随便换permalink吧,记得在StatPressCN管理界面中对统计系统升级就行了;
  2. 尽量使用wordpress内置函数,少用数据查询,提高程序运行效率。

—————————————

1.2.3.0 2008年10月12日

主程序:

  1. 匆忙间居然把对操作系统和浏览等要素的识别代码给删除了,修正之;
  2. 解决了对形如/category/life/page/3的识别。这个是分类中文章分多页产生的链接形式。
  3. 摒弃原统计中对在线rss阅读器的识别。只要是spider,全杀之。部分解决了上次Hugo Chen朋友提出了统计数据偏高问题。核心就是对spider的处理机制问题。
  4. 在readme.txt文件中增加了用法说明。

Spider数据:

增加了1个新规则

—————————————

1.1.2.5 2008年10月11日

主程序:

  1. 大幅度调整代码,增加对默认固定链接结构的设定支持和兼容,也就是说不管您的固定链接如何设定,StatPressCN都可以很好的工作了;
  2. 增加了对标签、归档、日历等的有效识别;
  3. 更新说明文件,因为使用了部分函数,需要WordPress最低2.3版本及以上的支持;
  4. 经Hugo Chen朋友提醒,增加zh_TW本地化语言文件;
  5. 更新了说明文档中的示例图片。

Spider数据:

增加了12个新规则

—————————————

1.1.1.0 2008年10月7日

主程序:

  1. 修正热帖功能,图形化显示(红五角星);
  2. 丰富说明文件;
  3. 完善简体中文和繁体中文的本地化语言文件。

—————————————

1.0.4.0 2008年10月4日

主程序:

  1. 增加了对简体中文和繁体中文的本地化语言支持。

—————————————

1.0.3.1

主程序:

  1. 为入驻wordpress官方插件基地对程序和文档进行了规范;
  2. 修正程序注释。

SearchEngines数据:

增加了对yahoo alibaba搜索的支持。
—————————————

1.0.3.0

主程序:

  1. 修正了来自www.google.cn的图片搜索;精确识别来自Google搜索联盟(client=aff-sub-lianmeng)的关键字;
  2. 修正搜索引擎名称机制,根据关键字字符码来判断搜索引擎的细类(如Google hk、Google cn和Google tw等);
  3. 对upgrade代码进行了优化。

SearchEngines数据:

增加了对Maxthon搜索的识别。
—————————————

1.0.2.5

主程序:

  1. 完善对繁体中文的支持;
  2. 彻底解决对连接请求的处置。

SearchEngines数据:

增加了繁体中文使用地区Google Cache的支持。

—————————————

1.0.2.0

主程序:

  1. 再次优化搜索引擎关键词的识别,通过搜索引擎类型和其命令开关判断是否需要转换内码;开始支持繁体中文;
  2. 从服务器变量获取连接请求时暂不作解码处理,对默认链接(形如p=233等)链接请求直接处置为permalink;源码中对链接请求的处理考虑了SEO,结果复杂化了,并且导致异形链接请求无法被正确处理,已修正之。
Spider数据:
增加对R6_CommentReader的识别;

SearchEngines数据:

增加了对Google hk、Google tw、Yahoo tw、Yahoo hk搜索引擎的识别,修正了对yahoo搜索合作伙伴的支持(形如coop.yahoo.com.cn)。
—————————————

1.0.1.0

主程序:

  1. 重构了对搜索引擎的识别和处理,优化程序运行效率(解决了upgrade时超时的问题),新增对Google Images和Google Cache的识别,同时对Google cn的处理做了修正,能正确辨别哪些需要decode,哪些不需要;
  2. 解决了因为搜索引擎对加载share-this插件后默认是p=222格式的不正确处理(urlrequested变成了share-this)。
Spider数据:
增加对Yahoo slurp的识别;

SearchEngines数据:

增加了对Google Images、Google Cache和Google cn搜索引擎的识别和修正。

—————————————

1.0.0.3

主程序:

  1. 假如定义了数据保存的时限(在Options中),点按StatPressUpgrade可以自动对保存期限之外的数据进行删除,同时显示删除了多少条记录;
  2. 修正对形如p=23&akst_action页面的识别问题。(p=23样子的页面访问记录主要出现原因是wordpress默认链接导致的,很普遍)
Spider数据:
无;
Broswer数据:
无。
SearchEngines数据:
增加了对Conduit.com、google.com/custom、yahoo.cn搜索引擎的识别,对关键词顺序进行了调整,提高判断效率;删除了大部分用不到的搜索引擎数据,提升程序效能。

—————————————

1.0.0.2

主程序:

  1. 增加两个函数输出,方便朋友们定制模板使用;
  2. 把订阅活跃周期从原来的1一个月修改为半年。
Spider数据:
无;
Broswer数据:
无。
—————————————

1.0.0.1

主程序:

  1. 增加对blog源rss地址访问的统计;
  2. 修正OverView页面:Last Hits仅显示对文章、存档、主页等实质内容的访问记录,不显示rss类的访问记录;
  3. 修正Details页面:Last Referrer仅显示来自其他网站的引用,去除来自搜索引擎的页面引用;
  4. 支持中文搜索引擎,能正确识别搜索关键词;
  5. 如果永久链接结构中有用到postname则可以通过upgrade把原来形如p=21之类的方位地址自动转换为目前的链接样式。
Spider数据:
增加对Blogbus、Sogou、Friendfeed的识别;
Broswer数据:
增加对Chrome浏览器的支持。

twitter on 2008-05-05

  • 家庭需要经营 #
  • 黄慕松模仿清朝驻藏大臣,走四川到西藏的传统路线,仪容仪式也甚讲排场,力图唤起西藏人对中国统治的回忆。 #
  • 然而所谓政治,基本特点之一就是不被感情左右。 #
  • statpress数据文件(.dat)中的规则居然是大小写敏感的。 #
  • Eleven同学推荐的cos-html-cache整体是不错,但对于页面中的动态数据(比如statpress访问统计)无法支持更新,貌似是触发机制不完备的问题。暂时弃用! #
  • 换回dreamhost后页面中的adsense又无法再Firefox下正常显示了,Why?在IE中仍然正常!上次解决问题是偶然撞了Firefox3后突然正常了,怪异的很。 #

Powered by Twitter Tools.

twitter on 2008-05-01

  • 迷雾散去,太阳跑出来一晃再晃,年轻人们一身休闲的准备去都市过节,欢声笑语间忽然又开始觉得快乐其实很简单。 #
  • 喜欢的音乐艺术是一个人性格的延伸和写照,对iGoogle主题的选择当然也是啦,所以Google请诸多大师设计后提供给大家免费享用。可惜 #
  • me不怎么用这个像门户样的大大的杂乱整合平台。不过Google的品牌美誉度还是会继续攀升的。 #
  • 路过司门口,想起了鼎1996年在这附近打黑工的景况和其它几次偶过。 #
  • 五一大节人多啊。车子像要开往天堂,有上无下! #
  • 在statpress中杀spider之前应该判断feed的值,否则对feed的统计就是不完全的,原来一直没意识到这个逻辑,另外要使统计 #
  • 更精准,还应该仅统计活的(live)访问,也就是需要定义一个统计周期,比如说一个月,就像feed statics那样的处理机制。 #
  • 回到家乡,感觉高楼大厦少很多,多为单层平房,但门神年画的完好率超高。 #

Powered by Twitter Tools.

升级StatPress的功能(完美支持中文)

【将Statpress的升级纳入了正式的开发进程,最新进展请移步StatPressCn插件开发——WordPress插件。此文仅作历史资料参考。】

自从不经意间中对StatPress做了些小修改后,me跌跌撞撞的进入了php空间。感觉还不错,确实简单易学,也很强大。很想在学习的过程中做点什么,最后还是选择了那这个statpress开刀,以它为基础进行扩展升级。

完美支持中文的搜索关键词统计

在后台浏览统计信息发现搜索关键词有不少是乱码,能正确识别的中文字符没几个。把鼠标放上去点到来源地址去看又是好的,看来是statpress对中文不太友好导致的。到作者主页反应了这个问题,好久没有回音,看来还是自己解决算了。检查源码,发现在处理referrer时仅仅使用了urldecode函数对url进行解码,这对utf-8编码的是非常有效的,但对于中国用户常用的gb2312就不行了。

解决办法时把几个中文的搜索引擎(如baidu和google.cn等)单独判断,识别出来后用iconv转换一道。OK,测试成功。

后来发现还是有中文乱码。再查看链接,发现有不少搜索引擎在url中直接定义了语言编码如gb2312或utf-8。这也好办,增加一层判断就行了。如果指明了编码,直接根据其定义分别处理,然后才是针对me定义的中文搜索引擎进行专项处理。于是天下太平,到目前为止所有的中文搜索关键词都正常显示了。

增加对本站直接订阅feed的统计功能

订阅数量统计中,me借用两个插件实现了网站订阅的总量统计。把玩statpress的时候me发现其实它对feed的订阅情况也有统计,既然这样,干嘛多装一个插件呢。说干就干,用sql语句把feed的总数读出并做一个专门的函数输出订阅信息方便外部直接调用。这个函数调用了Feed Count对feedburner订阅的统计信息,不过如果没有安装FC也无所谓,大不了不统计罢了,statpres还可以正常运行。增加了对时间区间的限制,只取近三个月的活跃订阅。

修正了热帖(TopPost)功能

原函数仅针对permalink是默认情况下有效,对于其他格式的permalink没法产生作用。me修改后支持了形如/month/day/postname.html格式的支持。

增加了文章热度的支持

用当前页面访问量和总访问量进行除操作后得出当前文章的热度或流行度。

注:使用dreamweaver做wordpress主题感觉还是很不错的。

——————————————————————————————————

下载wp-statpress(modified by heart5)

使用:解压后上传至wp-content下的plugins子目录下即可。

注意:请勿使用插件自动更新,否则升级功能全部自动消除。

——————————————————————————————————