PHP использование переменной в другом файле - PullRequest
0 голосов
/ 02 мая 2020

вот я снова, раньше имел более сложную проблему, но теперь получил другую (поменьше, думаю).

В файле шаблона есть переменные, используемые как "author_id", "authlink", но в файле контроллера не получает URL автора (но он должен).

В файле шаблона определены переменные как authlink и author_id. Кроме того, в файле контроллера я включил путь к файлу, где используются эти переменные.

<?php

set_include_path(".:/domains/example.com/public_html/.../single-2.php"); //destination to file where's author_id variables either.

function ajax_rental_add_to_cart()
{
    if ( STInput::request( 'action' ) == 'rental_add_cart' ) {
        $response = array();
        $response['status'] = 0;
        $response['message'] = "";
        $response['redirect'] = '';

        $author_id = get_post_field( 'post_author', get_the_ID() );
        $authlink = get_author_posts_url($author_id); 
        if ( $this->do_add_to_cart() ) {
            $response['redirect'] = $authlink;
            $response['status'] = 1;
            wp_send_json($response, 200);
        } else {
            $message = STTemplate::message();
            $response['message'] = $message;
            wp_send_json($response, 200);

        }
    }
}

    static function inst()
    {
        if (!self::$_instance) {
            self::$_instance = new self();
        }

        return self::$_instance;
    }
}

    STRental::inst()->init();
}

?>

Не уверен, что это static function inst() связано, но вставка в любом случае. Проблема в том, что для переменной $response['redirect'] = $authlink; я должен быть перенаправлен на h ttps://example.com/author/author_id, но меня перенаправляют только на https://example.com/author/ Кажется, что файл контроллера все равно не получает author_id, возможно, потому что после перенаправления он теряет author_id, и это почему я не перенаправлен на правильный путь? Должен ли я как-то хранить author_id и использовать его снова в этом файле?

PS Если я использую такое же перенаправление в файле шаблона (не в контроллере) - работает отлично, но затем обходит все проверки даты, вот почему я ' я все еще не могу справиться с файлом контроллера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...