コンストラクターをテーマにしたWordpressサイトを構築しています。目標を解決するには、カスタムコーディングを追加する必要がありました。データベースに保存される、ユーザーが自分のプロファイルに子要素を追加できるようにするモジュールがあります。(作成、更新、削除)この機能は、次のファイルで実行されます。
wp-content\themes\constructor\crud\
destroy_user.php,
get_users.php,
save_user.php,
show_form.php,
update_user.php
現在、これらのファイルにはインクルードがなく、カスタムコード化されたページテンプレートからのみ呼び出されます。これまでのところ、それらは機能します。
ここで、複数のユーザーを処理するためにこのモジュールを開発したいと思います。このためには、誰がモジュールを使用しているかを知る必要があります。これはカスタムページテンプレートではわかりますが、例のコードではわかりません。get_users.php。たとえば、私は使用したい
$user_id = get_current_user_id();
get_users.phpで、SQLを制御し、ユーザーがログインしていない場合はユーザーをリダイレクトします。get_current_user_id()を使用できるようにするには、どのファイルとどのように含める必要がありますか? (単に'../../../../wp-includes/user.php'をインクルードしても解決されません。)
助けてくれてありがとう、Sziro
編集:これはwp-content \ themes\コンストラクター\crud\get_users.phpです
<?php
$page = isset($_POST['page']) ? intval($_POST['page']) : 1;
$rows = isset($_POST['rows']) ? intval($_POST['rows']) : 10;
$offset = ($page-1)*$rows;
$result = array();
include 'conn.php';
require('../../../../wp-blog-header.php');
$user_id = get_current_user_id(); //This does not work. If it would be set to = 1, it would work.
$rs = mysql_query("select count(*) from user_partner where user_id=$user_id");
$row = mysql_fetch_row($rs);
$result["total"] = $row[0];
$rs = mysql_query("select * from user_partner where user_id=$user_id limit $offset,$rows");
$items = array();
while($row = mysql_fetch_object($rs)){
array_push($items, $row);
}
$result["rows"] = $items;
echo json_encode($result);
?>