Как использовать плагин 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
так что в целом постарайтесь следовать стандартным шаблонам.
Другой метод включает в себя наличие файла шаблона с открытым объектом или функцией для доступа к информации о плагине.