当我将插件上传到我的网站时,Composer没有处理它

时间:2020-04-16 作者:Guillermo Marin

我在localhost中的一个插件中工作,它在我的localhost网站中工作得很好im在其中使用composer,但当我将其上载到我的网站时,它出现了一个致命错误,因为composer autoload不工作,在与我的插件同名的php文件中,我需要供应商自动加载,错误表明我称为wiht autoload的文件不存在我对php或composer不太了解,我不明白为什么在localhost中工作,但在我的在线网站中不工作,供应商文件存在,正如我在cpanel目录中看到的那样,然后我尝试将相同的插件上载到其他本地网站,它工作正常,问题是当我将其上载到网站时这是错误

致命错误:未捕获错误:在/home/hoteljupiterve/test中找不到类“Inc\\Base\\CreateOrDropTables”。朱庇特酒店。com/wp内容/插件/预订jupiter/预订jupiter。php:35堆栈跟踪:#0/home/hoteljupiterve/test。朱庇特酒店。com/wp包括/类wp挂钩。php(286):激活\\u booking\\u插件(“”)\\1/主页/hoteljupiterve/测试。朱庇特酒店。com/wp包括/类wp挂钩。php(310):WP\\u Hook->apply\\u filters(“”,Array)#2/home/hoteljupiterve/test。朱庇特酒店。com/wp包括/插件。php(465):WP\\u Hook->do\\u action(Array)#3/home/hoteljupiterve/test。朱庇特酒店。com/wp管理员/插件。php(177):do\\u action(\'activate\\u bookin…\')#4{main}抛出/home/hoteljupiterve/test。朱庇特酒店。com/wp内容/插件/预订jupiter/预订jupiter。php在线35

这是我预订的jupiter。php

<?php

/**
 * @package booking-jupiter
 */
/*
Plugin name: booking-jupiter
Plugin URI: http://localhost/PluginPrueba
Description: plugin de reserva de habitaciones 
Version: 1.0.0
Author: Guillermo Marin
Author URI: https://www.hoteljupiterve.com
License: GPLv2 or later
Text Domain: booking-jupiter
*/

// define el absolute path, lo primero que hay que hacer siempre

if ( ! defined(\'ABSPATH\')) {
    echo \'error bro, el die mato todo \';
    die;
}

// busca a vendor en composer para usar el use y namespase

if ( file_exists( dirname( __FILE__ ) . \'/vendor/autoload.php\' ) ) {
    require_once dirname( __FILE__ ) . \'/vendor/autoload.php\';
}

// activo y desactivo el plugin de manera procedural, es la forma en la que pide wordpress

function activate_booking_plugin()
{
    Inc\\Base\\CreateOrDropTables::create_all_tables();
    Inc\\Base\\CreateClient::create_client_role();
    // (new Inc\\Base\\CreateOrDropTables())->create_all_tables();
}

function deactivate_bookin_plugins()
{
    Inc\\Base\\DeactivateBooking::deactivate();
}

// ya cree las funciones y bueno estos metodos de wordpress hacen el trabajo
register_activation_hook( __FILE__, \'activate_booking_plugin\' );
register_deactivation_hook( __FILE__, \'deactivate_bookin_plugins\' );


// busca si exite la clase Init para darle con el registerservices y asi que todos los demas se inicialicen perro
if ( class_exists( \'Inc\\\\Init\' ) ) {
    Inc\\Init::register_services();
}

这就是我预定的木星。php,我无法激活插件,因为这个错误,如果使用Inc/init时需要一次CreateOrDropTables。php。它说这个类不存在

我只是尝试删除供应商文件夹和composer。来自cpanel的json文件,然后我将composer从cpanel安装到我的插件文件夹,我没有工作,我收到了相同的错误

1 个回复
SO网友:Guillermo Marin

很抱歉,我得到了解决方案,但从未在此处发布,因为我的文件夹区分大小写,所以出现了错误,我不知道为什么在localhost中没有出现错误,但在我的网站中,我得到了文件夹inc,然后我得到了“inc\\Base”inc!==“Inc”我的错是个愚蠢的错误,感谢所有回答的人

相关推荐

VisualComposer/WPBakery页面编辑器:在显示版本弹出框后是否触发了任何JS事件?

在后台,当我们创建页面时,我们可以添加可以创建元素的节和行。例如,这些元素是在中手动声明的文本框、图像、按钮和其他Visual Composer映射functions.php 例如,使用函数vc_map.当我们想将这些元素中的一个添加到节/行时,单击其图标,就会显示另一个弹出窗口。后者包含元素所需的字段(按钮的文本和图像等)。这个问题是关于这个弹出窗口的。打开后是否会触发任何JavaScript事件?有没有可能听一听?我看到发送了一个AJAX查询,要求admin-ajax.php 然后edit-form.