我正在将谷歌电子表格集成到我的项目中。 我必须将表单数据保存到谷歌电子表格中。
为此,我正在使用asimqt php-google-spreadsheet-client库。
我在网站上有一个表单,该表单正在使用 ajax 提交。为此,我在函数.php中编写了函数。
初始化 DefaultServiceRequest 类的对象时出错。
错误:致命错误:找不到类"Google''电子表格''默认服务请求"
require '/vendor/autoload.php';
use Google'Spreadsheet'DefaultServiceRequest;
use Google'Spreadsheet'ServiceRequestFactory;
function spreadsheet_feeds()
{
$access_tok = 'xyz-token';
$serviceRequest = new DefaultServiceRequest($access_tok); // Getting error
ServiceRequestFactory::setInstance($serviceRequest);
$spreadsheetService = new Google'Spreadsheet'SpreadsheetService();
$spreadsheetFeed = $spreadsheetService->getSpreadsheets();
}
add_action( 'wp_ajax_nopriv_spreadsheet_data', 'spreadsheet_feeds' );
add_action('wp_ajax_spreadsheet_data','spreadsheet_feeds');
任何帮助为什么会发生此错误,因为类已经包含使用"use"语句?
这
似乎是vendor
文件夹位置的问题。确保文件可以访问供应商文件夹
将文件夹层次结构视为
-wp-content
--themes
---your-theme
----functions.php
如果您的供应商文件夹在your-theme/vendor
则在您的函数中.php
你应该写
require 'vendor/autoload.php';
如果vendor
在WP的根目录中,请确保使用以下内容遍历回根文件夹:
require __DIR__ .'/../../../../vendor/autoload.php';
只需将require '/vendor/autoload.php';
替换为require_once('vendor/autoload.php');
刚才我自己在这里为你尝试了这个,它有效。