Я создал поставщика услуг для включения WordPress.
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\File;
class WordpressCustomServiceProvider extends ServiceProvider
{
protected $bootstrapFilePath = '../../blog/wp-load.php';
/**
* Bootstrap the application services.
*
* @return void
*/
public function boot()
{
// wp_enqueue_style('app', '/app/public/app.css');
}
/**
* Register the application services.
*
* @return void
*/
public function register()
{
//echo dirname(__FILE__); die;
//
// Load wordpress bootstrap file
if(File::exists($this->bootstrapFilePath)) {
require_once $this->bootstrapFilePath;
} else throw new \RuntimeException('WordPress Bootstrap file not found!');
}
}
Я также включил в класс в списке провайдеров в app.php
Когда я запускаю код. Это дает мне ошибку:
"file_exists (): действует ограничение open_basedir.
Файл (../../ blog / wp-load.php) находится за пределами разрешенного пути:
(/var/www/vhosts/ser.com/:/tmp/)"
Структура моего блога выглядит так:
app/ ---->Laravel
blog/ ---->wordpress
Да, я знаю, что проблема возникает, когда мы включаем путь вне webroot. Но папка блога находится внутри.