Как использовать плагин Boiler

Я создал простой пользовательский плагин WordPress, используя BoilerPlate для вызова API приложения Laravel.

Я все настроил, ошибок нет. Но я не знаю точно, как отобразить возвращенные данные на странице или что-то подобное.

public function getRecords($id)
{
   $cache_name = ‘records_’ . $id;
   $cache = new FileStore(new Filesystem($cache_name . ‘.txt’), __DIR__ . ‘/cache’);

 // If cache exists
 if ($cache->get($cache_name)) {
    return $cache->get($cache_name);
 } else {
    try {
     // Try to get records
     $client = new GuzzleHttp(‘https://api.hello.com/records/1399394access_token=w3r2232r’);
     $request = $client->get()->send();
     $records = json_decode($request->getBody(), true);

     // Save records in cache
     $cache->put($cache_name, $records, 600);
     return $records;
   } catch (GuzzleHttpExceptionBadResponseException $e) {
 $raw_response = explode(“n”, $e->getResponse());
     throw new IDPException(end($raw_response));
   }
 }
}

Для этого примера, как я могу отобразить возвращенную переменную 'return $records;' на домашнюю страницу например? Просто тест, чтобы увидеть, как это работает.

Это класс:

class Plugin_Name_Public {

/**
 * The ID of this plugin.
 *
 * @since    1.0.0
 * @access   private
 * @var      string    $plugin_name    The ID of this plugin.
 */
private $plugin_name;

/**
 * The version of this plugin.
 *
 * @since    1.0.0
 * @access   private
 * @var      string    $version    The current version of this plugin.
 */
private $version;

/**
 * Initialize the class and set its properties.
 *
 * @since    1.0.0
 * @param      string    $plugin_name       The name of the plugin.
 * @param      string    $version    The version of this plugin.
 */
public function __construct( $plugin_name, $version ) {

    $this->plugin_name = $plugin_name;
    $this->version = $version;

    $capsule = new Capsule;

    $capsule->setAsGlobal();
    $capsule->bootEloquent();
}

Заранее спасибо!

1 ответ

Решение

Есть несколько способов, но одним из самых простых будет создать shortcode в плагин шаблон и сделать запрос.

Я не знаком с шаблоном, который вы использовали, но обычно что-то внутри класса выглядело бы так.

class Hello_Plugin{
    public function my_shortcode_func($atts,$content = ''){
        // Make request and return it
        return "Hello";
    }
    public function __construct( $plugin_name, $version ) {
         add_shortcode("my_shortcode",array($this,"my_shortcode_func"));
    }
}

Так что после того, как вы просто поместите [my_shortcode] на определенной странице.

Примечание. Некоторые шаблоны размещают инициализацию шорткода вне __construct так что в целом постарайтесь следовать стандартным шаблонам.

Другой метод включает в себя наличие файла шаблона с открытым объектом или функцией для доступа к информации о плагине.

Другие вопросы по тегам