0

我正在构建一个以 Constructor 为主题的 Wordpress 网站。我必须添加自定义编码来解决我的目标。有一个模块,让用户将子元素添加到他的个人资料中,这将被保存到数据库中。(创建、更新、删除)此功能通过以下文件完成:

wp-content\themes\constructor\crud\
 destroy_user.php,
 get_users.php,
 save_user.php,
 show_form.php,
 update_user.php 

目前这些文件没有包含,它们只能从自定义编码页面模板中调用。到目前为止,他们工作。

现在我想开发这个模块来处理多个用户。为此,我需要知道谁在使用该模块。我在自定义页面模板中知道这一点,但在 ex 中的代码中却不知道。get_users.php 。例如我想使用

$user_id = get_current_user_id();

在 get_users.php 中控制 sql 并在用户未登录时重定向用户。我必须包含哪些文件以及如何包含才能使用 get_current_user_id()? (简单地包含'../../../../wp-includes/user.php'并不能解决它。)

感谢您的帮助,西罗

编辑:这是 wp-content\themes\constructor\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);


?>
4

2 回答 2

1

因此,目前 Wordpress 主题包含并使用此文件。并且您想创建另一个/使用相同的 php 文件来包含 Wordpress 的功能?

您可以通过以下方式包含 Wordpress 功能:

<?php
    require('/root_of_wp_installation/wp-blog-header.php');
    //or     require('../../../../wp-blog-header.php');
    get_categories();
?>
于 2013-02-24T14:40:16.923 回答
0

最后用iframe解决了。不是很安全,但至少还可以。

于 2013-02-27T17:13:28.363 回答