首页自定义多板块(jxy_home_sections)v1.0.4
功能
后台插件设置页增加、编辑、排序、启停和删除首页板块。
板块渲染在首页右侧用户卡片下方,对应需求截图的红框区域。
不创建业务表,配置保存在
settingKV 的jxy_home_sections_sections键。其他插件可通过
JxyHomeSectionsService::register()或hook/jxy_home_sections_content.htm写入内容。
安装
后台上传本 ZIP,安装并启用插件。
打开“插件 → 首页自定义多板块 → 设置”。
添加板块;唯一标识建议使用
hot_events这类带业务含义的英文标识。修改 Hook 后清理
tmp/编译缓存;修改静态资源后递增conf/conf.php的static_version。
内容写入入口 A:Service API(推荐)
在内容插件的 hook/index_start.php 中:
<?php exit;
if(class_exists('JxyHomeSectionsService')) {
JxyHomeSectionsService::register('hot_events', 'vendor_events', function($context) {
return '<div>已使用 esc_* 安全处理的 HTML</div>';
}, 100);
}
参数:板块标识、提供方唯一标识、回调、优先级(数字越小越先)。回调接收 section/uid/gid/route 上下文。提供方必须对动态数据使用 esc_html()、esc_attr()、esc_js()。
也可用 appendHtml($sectionKey, $providerId, $html, $priority) 写入已生成 HTML。
内容写入入口 B:自定义 Hook
内容插件创建 hook/jxy_home_sections_content.htm,读取 $_jxy_home_sections_section 判断当前板块标识后输出。示例见 examples/provider_plugin_hook.htm。
文件说明
model/JxyHomeSectionsService.php:配置与内容提供者注册中心。hook/index_site_brief_after.htm:首页右侧栏渲染。setting.php+view/htm/setting.htm:后台管理。examples/:两种扩展入口示例。
此插件只是框架,可以配合XIUNOX 友情链接 — jxy_hot_links_v1.1.8【插件】