Wordpress - 如何在自定义函数

时间:2016-05-26 07:36:45

标签: php wordpress wordpress-plugin

我对wordpress插件编码部分非常新(实际上是我的第一次尝试)。从网上提供的教程中,我创建了自定义函数来创建一个新帖子(在这种情况下,它也是新的帖子类型 - "问题",已经由AnsPress插件提供)。

我的功能的相关部分就像 -

<?php
function AddQuestionToAnsPress($question_title, $question_content, $answer_content, $subject_id, $exam_id) {
    $path = $_SERVER['DOCUMENT_ROOT'];
    $path .= "/wp-blog-header.php";
    require($path);
    $question_title = strip_tags($question_title);
    $category_id = $subject_id;
    $category = array($category_id);
    $tag_subject_id = $subject_id;
    $tags = array(25, $tag_subject_id);
    wp_set_current_user(26);
    $user_id_for_question = 26;
    $question_array = array(
        'post_title' => $question_title,
        'post_author' => $user_id_for_question,
        'post_content' => $question_content,
        'post_type' => 'question',
        'post_status' => 'publish',
        'comment_status' => 'open'
    );
    $question_post_id = wp_insert_post($question_array);
    $question_permalink = get_permalink($question_post_id);
    wp_set_post_terms($question_post_id, $category, 'question_category');
    wp_set_post_terms($question_post_id, $tags, 'question_tag');

    $anspress_link = $question_permalink;
    return array('anspress_link' => $anspress_link, 'question_post_id' => $question_post_id);
}
?>

目前,此功能未添加为插件或主题。相反,我从一个单独的PHP文件中使用它。这个功能对我来说是主要工作,即创建一个帖子类型为&#34; question&#34;的新帖子。 但是,问题是,我的功能无法触发在创建新帖子后触发的任何其他插件(及其相关活动)。

例如我已经在我的wordpress博客中安装了NextScript SNAP plugin,其中包括autopost,我的Facebook页面,新创建的帖子(但仅当帖子是从wordpress本身创建的时候)。

那么,我应该如何修改我的函数或我应该添加到我的函数中,以便它可以自动检测创建新帖后应该立即触发的所有函数/钩子/过滤器?

0 个答案:

没有答案