我正在试图弄清楚ExpressionEngine如何删除条目。
我写了一个类似日志的扩展程序,用于跟踪创建条目的时间。当我通过EE的编辑部分删除一个条目时,该条目也会从我为我的扩展名创建的单独表格中删除。
当删除条目时,EE如何知道从表中删除行?我表中的一列是`entry_id`。看起来EE会自动检查所有表的entry_id列,如果值与要删除的值匹配,则删除该行。谁能证实这一点?
这可以解释为什么我不必创建一个挂钩到delete_entries_loop
的函数来实现这个功能。
答案 0 :(得分:0)
这很奇怪。如果确实如此,这种行为将是疯狂的!
查看Channel Entries API的delete_entry()
方法,删除非常具体地限于:
还调用Channel Fields API,让fieldtypes根据要删除的条目从他们自己的数据库表中删除他们需要的内容,但前提是它们包含delete()
方法。
我建议打开输出分析器,然后运行删除例程以查看正在运行的查询。