站内锚文本制作
1.改动config.php,在文件末尾添加下面内容

define('CUSTOM_CORE_DIR',BASE_DIR . '/custom');

2.添加custom目录(与core同目录)。再新建目录 include ,并新建文件 customSchema.php 添加内容例如以下

<?php
$cusmenu['tools'] = array(
'items'=>array(
array(
'type'=>'group',
'label'=>'站内锚文本',
'position'=>'after|begin|end|before',
'reference'=>'工具箱',
'items'=>array(
array(
'type'=>'menu',
'label'=>'锚文本管理',
'link'=>'index.php?ctl=custom/anchor&act=anchorList'
)
)
)
)
);
? >

3.新建控制器文件 ctl.anchor.php
4.新建模型文件 mdl.anchor.php
5.改动文章控制器 ctl.article.php 改动下面代码

$this->pagedata['article']['content'] = implode('',$tmpContent);

为下面代码

/*
**锚文本自己主动替换功能
**注意:假设确实包括字符但又没成功替换,请注意页面编码问题
**假设有必要的话,您能够自己定义样式来突出显示锚点内容,如 .anchor{color:red;}
*/
$tmpContent = implode("",$tmpContent);
$anchorObj = &$this->system->loadModel('custom/anchor');
$anchor = $anchorObj->getAnchorList();
$j = 0;
for($i = 0;$i<count($anchor);$i++){
if($j >= 5){break;}
$anchorName = trim($anchor[$i]['name']);
$anchorUrl = trim($anchor[$i]['url']);
if(strpos($tmpContent,$anchorName) !== false){
$str = "<a href='". $anchorUrl ."' target='_blank' class='anchor'>". $anchorName ."</a>";
$tmpContent = preg_replace('/'. $anchorName .'/',$str,$tmpContent,1);
$j++;
}
}
$this->pagedata['article']['content'] = $tmpContent;

完整实例,可点击这里下载:站内锚文

ShopEx customSchema 定制能够依据客户的需求对站点进行对应功能的加入改动或者删除的更多相关文章

  1. day 72 crm(9) 客户关系系统,整体实现,以及自定制路由内容,客户关系梳理

    前情提要: crm(9)  ,利用stark 组件和,rbac组键的使用,   明确观点: 一:客户关系需求明确 1:客户关系系统,主要是,本业务逻辑主要是 销售就客户关系的业务逻辑, 二: 创建ap ...

  2. 技术的止境(客户价值第一,快速实现第二,边做边学,迅速成为牛人。紧贴客户的需求去做技术,立于不败之地。追求的目标:把一项产品去做好,用产品去养活自己和家人)good

    作为一个依靠技术来谋生的程序员,我最近一直在思考一个问题,有限的生命里,面对无限的技术更新,我要研究到什么程度才能算是完成我的成为技术大牛的目标呢?换而言之,那就是技术的止境在哪儿呢?深入的思考下去, ...

  3. <p>在我们的实际软件项目中,管理团队事实上比写代码或者实现一个客户的需求更为的有挑战性。由于编程实际上是和机器打交道,而和机器打交道,仅仅要你符合机器预定的逻辑,</p>

    在我们的实际软件项目中,管理团队事实上比写代码或者实现一个客户的需求更为的有挑战性. 由于编程实际上是和机器打交道.而和机器打交道,仅仅要你符合机器预定的逻辑, 一步步迈向解决这个问题的道路上一点都不 ...

  4. 博云DevOps 3.0重大升级 | 可用性大幅提升、自研需求管理&自定义工作流上线,满足客户多样化需求

    DevOps能够为企业带来更高的部署频率.更短的交付周期与更快的客户响应速度.标准化.规范化的管理流程,可视化和数字化的研发进度管理和可追溯的版本也为企业带来的了更多的价值.引入DevOps成为企业实 ...

  5. 直播的本质(创业者应该要从商业模式的右边开始思考,你为用户创造了什么价值?找客户并不难,但要想办法让客户不离不弃;PC端功能的丰富很重要,因为手机版通常只是一个迷你版)

    我想稍微给直播这件事浇点冷水. 的确,直播现在越来越火,YouTube凭着良好的基础建设平台前段时间也做起了直播,Facebook Live最近也加入了变脸.预定直播时间和双人录制的功能,更不用说国内 ...

  6. Django项目:CRM(客户关系管理系统)--11--04PerfectCRM实现King_admin注册功能03

    #base_admin.py #Django admin 注册功能的形式 # sites = { # 'crm':{ # 'customers':CustomerAdmin, # 'customerf ...

  7. Django项目:CRM(客户关系管理系统)--14--06PerfectCRM实现King_admin注册功能获取内存优化处理

    <th >{% get_app_name admin_class.model %}{{ admin_class }} </th> #kingadmin_tags.py # —— ...

  8. Django项目:CRM(客户关系管理系统)--12--05PerfectCRM实现King_admin注册功能获取内存01

    #base_admin.py #Django admin 注册功能的形式 # sites = { # 'crm':{ # 'customers':CustomerAdmin, # 'customerf ...

  9. FastDFS:Java客户都实现文件的上传、下载、修改、删除

    客户端版本:fastdfs_client_v1.24.jar 配置文件 connect_timeout = 200 network_timeout = 3000 charset = UTF-8 htt ...

随机推荐

  1. GetKeyState(vk_control)

    GetKeyState(vk_control)  返回负数 , 说明按键被按下了

  2. .Net Discovery系列之十二-深入理解平台机制与性能影响(下)

    上一篇文章中Aicken为大家介绍了.Net平台的垃圾回收机制.即时编译机制与其对性能的影响,这一篇中将继续为大家介绍.Net平台的异常捕获机制与字符串驻留机制. 三.关于异常捕获机制 虽然我们已经很 ...

  3. 查询死锁的Session SQL 语句

    /* Formatted on 2018/3/14 23:34:49 (QP5 v5.256.13226.35538) */ SELECT dob.object_name table_name , l ...

  4. Java 获取客户端IP

    像移动网关一样,iisforward这个ISAPI过滤器也会对request对象进行再包装,附加一些WLS要用的头信息.这种情况下,直接用request.getRemoteAddr()是无法取到真正的 ...

  5. 【linux】linux查看资源任务管理器,使用top命令 + 查看java进程下的线程数量【两种方式】

    ================================ 详解:https://blog.csdn.net/achenyuan/article/details/77867661 ======= ...

  6. jquery 实现table的行列选中效果改进

    行列都可以多选,也可对相应数据进行统计: 行选中效果 列选中效果

  7. centos7编译安装nginx及无缝升级https

    安装依赖: yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel 下载nginx: wget -c  ...

  8. 黑吃黑第四季/全集Banshee迅雷下载

    英文全名Banshee,第5季(2015)Cinemax. 本季看点:<黑吃黑>Ana Ayora加盟第四季,将会饰演Nina Cruz,表面上是在镇里一个聪明而又强悍的新副警长,但实际是 ...

  9. 危机边缘第一季/全集Fringe迅雷下载

    本季Fringe Season 2 第二季(2008)看点:一架从汉堡飞往波士顿航班安全着陆,飞机上的机组成员和乘客却全部死亡.这起离奇案件揭开了一连串奇异.危险事件的序幕. 故事将主要讲述年轻的FB ...

  10. Android中的输入法

    提起输入法我就想到了Edittext,输入法可以自动根据inputType来改变键盘的布局,在支付钱包中还特别隐藏的系统自带的输入法,直接让用户用软件自己的输入法,提高了安全性.所以,我们应该对输入法 ...