ホームページ  >  記事  >  CMS チュートリアル  >  wordpressのフック機能を使って記事公開時にレコードを追加する方法

wordpressのフック機能を使って記事公開時にレコードを追加する方法

藏色散人
藏色散人オリジナル
2020-01-02 09:30:382464ブラウズ

wordpressのフック機能を使って記事公開時にレコードを追加する方法

#WordPress のフック機能を使って記事公開時にレコードを追加するにはどうすればよいですか?

#この記事では、WordPress のフック機能を使用して、記事公開時に投票テーブルにレコードを追加する方法を紹介します。具体的な実装は次のとおりです。お見逃しなく

おすすめ: 《

WordPress チュートリアル

投票数に応じて記事を並べ替えたいのですが、投票した人の投票は記録されますが、記事は投票数に応じて並べ替えられます。投票のない記事は投票されません。レコード、デフォルトの投票は 0 です。現時点では、ソートに問題があります。投票が負である可能性があるため、最初にレコードのある記事がソートされます。負の数がソートされた後、投票のない記事がソートされます。レコードはソートされます。このとき、投票のない記事も存在します。図に示すように、投票が 0 の記事は負の数の後に順位付けされます:

wordpressのフック機能を使って記事公開時にレコードを追加する方法

wordpressのフック機能を使って記事公開時にレコードを追加する方法

投票記録テーブル

生成された SQL ステートメント:

SELECT wp_posts.ID FROM wp_posts LEFT JOIN wp_wti_like_post on wp_wti_like_post.post_id=wp_posts.ID WHERE 1=1 AND ( ( post_date_gmt > ’2013-11-16 12:17:03′ ) ) AND wp_posts.post_type = ‘post’ AND (wp_posts.post_status = ‘publish’ OR wp_posts.post_status = ‘private’) ORDER BY wp_wti_like_post.value DESC,wp_posts.post_date DESC LIMIT 5, 5

SQL ステートメントはどのように記述すればよいですか?

解決策:

WordPressのフック機能を使用して、記事の公開中に投票テーブルにレコードを追加するだけでは十分ではないでしょうか?

コードを直接追加します:

コードは次のとおりです:

//发表文章的同时插入数据到喜欢表
function new_article($post_ID){ global $wpdb; $ip = WtiGetRealIpAddress(); $query = "INSERT INTO {$wpdb->prefix}wti_like_post SET "; $query .= "post_id = '" . $post_ID . "', "; $query .= "value = '0', "; $query .= "date_time = '" . date('Y-m-d H:i:s') . "', "; $query .= "ip = '$ip'"; $success = $wpdb->query($query); if($success){ return $post_ID; }}add_action('publish_post', 'new_article');

このコードをテーマの function.php に挿入します。

以上がwordpressのフック機能を使って記事公開時にレコードを追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。