新的发布挂接不起作用的原因是什么?

时间:2021-03-03 作者:Mehmet Cemil

这个钩子通常应该在新帖子上触发,但它不起作用

add_action("new_to_publish", "doSomething", 10,1);

function doSomething($post){

global $post;

$_SESSION[\'yeni\'] = \'test\';
}

echo $_SESSION[\'yeni\'];

1 个回复
最合适的回答,由SO网友:phatskat 整理而成

创建新帖子时,初始帖子状态为new, 而是auto-draft. 尝试以下操作:

add_action("draft_to_publish", "doSomething", 10,1);

function doSomething($post){

    global $post;

    $_SESSION[\'yeni\'] = \'test\';
}

echo $_SESSION[\'yeni\'];
还请注意,您可能需要确保会话已正确初始化。要验证回调是否至少正常工作,请启用WP_DEBUGWP_DEBUG_LOG 然后做一些类似的事情

add_action("draft_to_publish", "doSomething", 10,1);

function doSomething($post){
    error_log( \'Inside the new post transition\');
}
然后发布一篇帖子,看看wp-content/debug.log

相关推荐

在PUBLISH_POST操作中检索wp_mail的ACF字段

我有一个名为“Envios”的自定义帖子类型。我在其中创建了一个自定义元框,可以选择用户和帖子。当其中一个自定义帖子类型发布时,它会向所选用户发送一封包含所选帖子内容的电子邮件。要选择帖子,我使用ACF插件和field Post对象。问题是,有时电子邮件发送正确,但在大多数情况下,什么都没有发送。代码如下: // Adds Custom Meta Box function email_delivery_munda_add_custom_box() { $scr