自定义挂钩

简单文件列表包含许多挂钩,您可以使用这些挂钩来扩展其功能并与您的主题或其他插件集成。 除了知道动作何时发生之外,SFL 自定义挂钩还返回一个包含与动作过程相关的消息的数组。

文件上传挂钩

这些挂钩将在文件上传作业成功后触发。 一个用于前端,一个用于后端。

eeSFL_Hook_Uploaded
eeSFL_Admin_Hook_Uploaded

如何使用挂钩

要使您的主题在 SFL 触发钩子时做一些特别的事情,请将类似的内容添加到您的 儿童主题 functions.php 文件。

// add_action('The Hook Name', 'Your Function Name', Priority, Number of Arguments)
add_action('eeSFL_Hook_Uploaded', 'eeHookTestOutput', 10, 1);

然后编写一个函数,在操作发生并且钩子被触发时做任何你想做的事情。

// When the hook is fired, add_action() calls this function
// Writes output to /wp-content/debug.log
function eeHookTestOutput($eeMessages) {
     
     error_log('Hook Fired'); 

     foreach($eeMessages as $eeMessage) {
          
           error_log($eeMessage);
     }
}

更多挂钩

SFL 已加载列表

每次加载文件列表时都会触发此挂钩。 messages 数组将包含列表页面的 URL 以及显示的项目数。

eeSFL_Hook_Loaded

SFL 是 Item is Listed

每次列出文件或文件夹 (Pro) 时都会触发此挂钩。 消息数组将包含文件数组,其中包含项目的所有详细信息。

eeSFL_Hook_Listed

添加了新项目

每次在重新扫描过程中发现新项目(从插件外部添加的项目)时,都会触发此挂钩。

eeSFL_Hook_Added

未找到项目

每当在列表中不再找到一个项目,并且从插件外部删除时,这个钩子就会触发。

eeSFL_Hook_Removed

项目已编辑

每次编辑项目时都会触发此挂钩。 消息数组将提供有关发生的事情的信息。

eeSFL_Hook_Edited

项目已删除

每次删除项目时都会触发此挂钩。 消息数组将给出已删除文件的名称。

eeSFL_Hook_Deleted

项目已移动

每次移动项目时都会触发此挂钩。 消息数组将给出之前和之后的路径。

eeSFL_Hook_Moved

列表已扫描

每次重新扫描磁盘时都会触发此挂钩。 消息数组将提供有关发生的事情的信息。

eeSFL_Hook_Scanned

钩子很酷! 如果您的项目中需要一个,请告诉我!

关于“自定义挂钩”的 3 个想法

  1. 我想跟踪我们在网站上共享的文件的使用情况。 任何机会你可以添加更多的钩子,即打开文件,下载文件,复制链接。 对于其中的每一个,文件的路径都是有益的,类似于它是如何通过 eeSFL_Hook_Moved 挂钩提供的。 此外,是否可以将已删除文件的完整路径作为挂钩 eeSFL_Hook_Deleted 中消息数组中的一个元素提供? 看起来它不包括子文件夹。

    回复
    • 这仅适用于使用文件访问管理器扩展的受限列表。 通常这些操作只是直接链接到文件,所以没有什么可以触发挂钩。 受限列表通过文件防火墙,其中挂钩可能很有用。 我会把它放在我的待办事项清单上。

      回复
      • 好点子。 我最终捕获了点击并通过 REST 传递它们以登录数据库。 不幸的是,受限列表路线对我没有帮助,因为在这种情况下我们要公开文档。

        回复

发表评论

本网站使用Akismet来减少垃圾邮件。 了解您的数据如何处理.