function node_wp($post_ID) {
    global $post;
    $post_title = get_the_title( $post_ID );
    $post_url = get_permalink( $post_ID );
    $json = array(
        \'title_post\' => $post_title, 
        \'url\' => $post_url
    );
    $data = json_encode($json); 
    $server_url = get_option(\'$node_server_url_op\');
    ?>
    <script src="<?php echo $server_url; ?>"></script>
    <script type="text/javascript">
        var socket = io.connect(\'<?php echo $server_url; ?>\');
        socket.on(\'connect\', function(){
            socket.emit(\'adduser\');
            socket.emit(\'sendchat\', \'<?php echo $data; ?>\');
        });
    </script>
    <?php
}
add_action(\'publish_post\', \'node_wp\');
 运行脚本时,我得到以下信息:
Warning: Cannot modify header information - headers already sent
 你能告诉我如何正确添加Javascript吗?
 
                SO网友:Chris_O
                通过将函数添加到publish\\u post挂钩,当页面刷新时发布帖子时,它将执行该函数。这就是导致标头已发送消息的原因。
这看起来像是某种保存回数据库的聊天。如果需要在站点前端运行,可以挂接到wp\\u页脚:
add_action(\'wp_footer\', \'node_wp\' );
在node\\u wp函数中,可以使用
global $post; $post_id = $post->ID;