自定义wp发布功能

时间:2011-05-27 00:30:24

标签: php sql wordpress

我不打算实现所有wp_post功能。

我感兴趣的东西(一直给我带来问题,因为我没有得到正确的关系)是插入并更新值的sql 帖子表 条款表 3. term_taxonomy 4期间关系

发表帖子时的

表格。

$sql="update wp_posts set post_title='$name', post_name='$slug', post_content='$freeRTE_content', post_category='$category', post_status='$post_status', comment_status='$comment_status', mode_application='$howtoapply', website_address='$website', company_email='$email', application_deadline='$last_date', advert_date='$advert_date', post_date='$date', featured='$featured', course='$course', location='$location', grade='$grade' where id='$id'";
            if(mysql_query($sql, $link))
            {
                $expq=explode(',' , $q);foreach($expq as $key=>$value){$expq[$key]=trim($value);}$newq=join(',',$expq);
                $sql="insert into wp_term_relationships (term_taxonomy_id) select term_taxonomy_id from wp_term_taxonomy tt, wp_terms t where name in ('$newq') and taxonomy='post_tag' and t.term_id=tt.term_id";
                if(mysql_query($sql, $link))
                {
                    $sql="update wp_term_taxonomy tt, wp_terms t set count=count+1 where  name in ('$newq') and taxonomy='post_tag' and t.term_id=tt.term_id";
                    $result=mysql_query($sql, $link) or die(mysql_error($link));
                }

            }

        }

我没有得到四张桌子之间的关系,请问我该如何解决这个问题呢?

(请问我不是在wordpress环境中工作,而是使用wordpress结构)

2 个答案:

答案 0 :(得分:0)

你有:

in ('$newq')

根据您的代码,您最终可能会遇到以下情况:

in ('tag1,tag2,tag3')

而不是所需的和预期的:

in ('tag1','tag2','tag3')

答案 1 :(得分:0)

我认为这就是我的问题所在:

$sql="insert into wp_term_relationships (term_taxonomy_id) select term_taxonomy_id from wp_term_taxonomy tt, wp_terms t where name in ('$newq') and taxonomy='post_tag' and t.term_id=tt.term_id";

正确的做法:

$sql="insert into wp_term_relationships (object_id, term_taxonomy_id) values ('my_post_id', 'the term taxonomy id')";

感谢所有