致命错误:无法重新声明 sp_button_group_addon()(之前在

问题描述 投票:0回答:1

PHP版本:7.4

我购买的 joomla 模板在下面显示此错误,我需要帮助来纠正它

错误 链接 https://voltshost.com.br/aarontrans/

Fatal error: Cannot redeclare sp_button_group_addon() (previously declared in /home/storage/f/7e/46/voltshost2/public_html/aarontrans/templates/transpro/sppagebuilder/addons/button_group/site.php:15) in /home/storage/f/7e/46/voltshost2/public_html/aarontrans/templates/transpro/sppagebuilder/addons/button_group12/site.php on line 15

'文档代码'Site.php 这是一个 TRANSPRO 模板文件 [https://themeforest.net/item/transpro-transport-trucking-logistics-joomla-template/18420654](TransPro 作者:ThemeCanyon)

<?php
/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2016 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
*/
//no direct accees
defined ('_JEXEC') or die ('restricted aceess');

AddonParser::addAddon('sp_button_group','sp_button_group_addon');
AddonParser::addAddon('sp_button_group_item','sp_button_group_item_addon');

$sppbButtonGroup_margin = '';
function sp_button_group_addon($atts, $content){
    global $sppbButtonGroup_margin;

    extract(spAddonAtts(array(
        'alignment' =>'',
        'margin'    =>'',
        'class'     =>''
        ), $atts));

    $sppbButtonGroup_margin = $margin;

    $output  = '<div class="sppb-addon sppb-addon-button-group ' . $alignment . ' ' . $class . '">';
    $output .= '<div class="sppb-addon-content" style="margin:-' . (int) $margin . 'px;">';

    $output .= AddonParser::spDoAddon($content);

    $output .= '</div>';
    $output .= '</div>';

    $sppbButtonGroup_margin = '';

    return $output; 
}

php joomla
1个回答
0
投票

首先;在我看来,联系您购买模板的开发人员是更好的方法。

作为您提供的数据,您在两个文件中重新声明名为

sp_button_group_addon
的函数时出现错误
aarontrans/templates/transpro/sppagebuilder/addons/button_group/site.php
aarontrans/templates/transpro/sppagebuilder/addons/button_group12/site.php


您可以通过检查函数的
function_exist
changing the name
(在这些文件之一中)来解决错误

解决方案1:更改函数名称

我认为这更好,因为该功能似乎被钩住了
<?php
/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2016 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
*/
//no direct accees
defined ('_JEXEC') or die ('restricted aceess');

AddonParser::addAddon('sp_button_group','sp_button_group_addon_12');
AddonParser::addAddon('sp_button_group_item','sp_button_group_item_addon');

$sppbButtonGroup_margin = '';
function sp_button_group_addon_12($atts, $content){
    global $sppbButtonGroup_margin;

    extract(spAddonAtts(array(
        'alignment' =>'',
        'margin'    =>'',
        'class'     =>''
        ), $atts));

    $sppbButtonGroup_margin = $margin;

    $output  = '<div class="sppb-addon sppb-addon-button-group ' . $alignment . ' ' . $class . '">';
    $output .= '<div class="sppb-addon-content" style="margin:-' . (int) $margin . 'px;">';

    $output .= AddonParser::spDoAddon($content);

    $output .= '</div>';
    $output .= '</div>';

    $sppbButtonGroup_margin = '';

    return $output; 
}

解决方案2:检查函数是否已声明

检查两个文件中的函数是否具有相同的内容,然后让我们忽略其中一个。
<?php
/**
 * @package SP Page Builder
 * @author JoomShaper http://www.joomshaper.com
 * @copyright Copyright (c) 2010 - 2016 JoomShaper
 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
*/
//no direct accees
defined ('_JEXEC') or die ('restricted aceess');

AddonParser::addAddon('sp_button_group','sp_button_group_addon');
AddonParser::addAddon('sp_button_group_item','sp_button_group_item_addon');

$sppbButtonGroup_margin = '';
if( !function_exists('sp_button_group_addon') ){

    function sp_button_group_addon($atts, $content){
        global $sppbButtonGroup_margin;
    
        extract(spAddonAtts(array(
            'alignment' =>'',
            'margin'    =>'',
            'class'     =>''
            ), $atts));
    
        $sppbButtonGroup_margin = $margin;
    
        $output  = '<div class="sppb-addon sppb-addon-button-group ' . $alignment . ' ' . $class . '">';
        $output .= '<div class="sppb-addon-content" style="margin:-' . (int) $margin . 'px;">';
    
        $output .= AddonParser::spDoAddon($content);
    
        $output .= '</div>';
        $output .= '</div>';
    
        $sppbButtonGroup_margin = '';
    
        return $output; 
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.