Les onglets de la page produit ont disparu dans l'administrateur après avoir essayé d'ajouter un nouvel attribut de produit

8

Je viens de suivre les instructions de ce lien , afin d'ajouter un nouvel attribut de produit. Après cela, la plupart de mes onglets de produits ont disparu.

entrez la description de l'image ici

Voici mes codes finaux:

/app/code/local/MyCompany/MultiSlider/Model/Resource/Eav/Mysql4/Setup.php

<?php
class MyCompany_MultiSlider_Model_Resource_Eav_Mysql4_Setup extends Mage_Eav_Model_Entity_Setup
{
    public function getDefaultEntities()
    {
        return array(
            'catalog_product' => array(
                'entity_model'      => 'catalog/product',
                'attribute_model'   => 'catalog/resource_eav_attribute',
                'table'             => 'catalog/product',
                'attributes'        => array(
                            'myattribcode' => array(
                                'group'             => 'Group/Tab',
                                'label'             => 'My Attrib Label',
                                'type'              => 'int',
                                'input'             => 'boolean',
                                'default'           => '0',
                                'class'             => '',
                                'backend'           => '',
                                'frontend'          => '',
                                'source'            => '',
                                'global'            => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
                                'visible'           => true,
                                'required'          => false,
                                'user_defined'      => false,
                                'searchable'        => false,
                                'filterable'        => false,
                                'comparable'        => false,
                                'visible_on_front'  => false,
                                'visible_in_advanced_search' => false,
                                'unique'            => false
                            ),

               )
        ),
             // define attributes for other model entities here
      );
    }
}

/app/code/local/MyCompany/MultiSlider/sql/multislider_setup/mysql4-install-1.2.3.php

<?php
$installer = $this;

$installer->installEntities();

/app/code/local/MyCompany/MultiSlider/Helper/Data.php

<?php
class MyCompany_MultiSlider_Helper_Data extends Mage_Core_Helper_Abstract
{
}

/app/code/local/MyCompany/MultiSlider/etc/config.xml

<?xml version="1.0"?>
<config>
  <modules>
    <MyCompany_MultiSlider>
      <version>1.2.3</version>
    </MyCompany_MultiSlider>
  </modules>
  <global>

    <helpers>
      <multislider>
        <class>MyCompany_MultiSlider_Helper</class>
      </multislider>
    </helpers>
    <models>
          <multislider>
              <class>MyCompany_MultiSlider_Model</class>
          </multislider>
    </models>

    <resources>

          <multislider_setup>
              <setup>
                  <module>MyCompany_MultiSlider</module>
                  <class>MyCompany_MultiSlider_Model_Resource_Eav_Mysql4_Setup</class>
              </setup>
              <connection>
                  <use>core_setup</use>
              </connection>
          </multislider_setup>

          <multislider_write>
              <connection>
                  <use>core_write</use>
              </connection>
          </multislider_write>

          <multislider_read>
              <connection>
                  <use>core_read</use>
              </connection>
          </multislider_read>

      </resources>
  </global>
</config>

Par exemple, la ligne d'attribut Name dans la table eav_attribute:

# attribute_id, entity_type_id, attribute_code, attribute_model, backend_model, backend_type, backend_table, frontend_model, frontend_input, frontend_label, frontend_class, source_model, is_required, is_user_defined, default_value, is_unique, note

'71', '4', 'name', NULL, NULL, 'varchar', NULL, NULL, 'text', 'Name', NULL, NULL, '1', '0', NULL, '0', NULL

Table eav_attribute

# attribute_group_id, attribute_set_id, attribute_group_name, sort_order, default_id
'1', '1', 'General', '1', '1'
'2', '2', 'General', '1', '1'
'3', '3', 'General', '10', '1'
'4', '3', 'General Information', '2', '0'
'5', '3', 'Display Settings', '20', '0'
'6', '3', 'Custom Design', '30', '0'
'7', '4', 'General', '1', '1'
'8', '4', 'Prices', '2', '0'
'9', '4', 'Meta Information', '3', '0'
'10', '4', 'Images', '4', '0'
'11', '4', 'Recurring Profile', '5', '0'
'12', '4', 'Design', '6', '0'
'13', '5', 'General', '1', '1'
'14', '6', 'General', '1', '1'
'15', '7', 'General', '1', '1'
'16', '8', 'General', '1', '1'
'17', '4', 'Gift Options', '7', '0'
'18', '4', 'Group/Tab', '8', '0'

Maintenant, le problème est, même si je désactive ce module (et réindexation, déconnexion, connexion, recache), les onglets de la page produit ne s'affichent toujours pas et aucun attribut n'est ajouté. Comment puis-je résoudre ce problème ?

chamich
la source
restaurer une sauvegarde et réessayer
Jeroen
2
@Jeroen Ce n'est pas une solution
chamich
1
@Jeroen Oui, l'ensemble est terminé. Tous les attributs de produit sont là, par exemple, voici l'attribut de nom de produit: # attribute_id, entity_type_id, attribute_code, attribute_model, backend_model, backend_type, backend_table, frontend_model, frontend_input, frontend_label, frontend_class, source_model, is_required, is_valeur, is_valeur '71', '4', 'nom', NULL, NULL, 'varchar', NULL, NULL, 'text', 'Name', NULL, NULL, '1', '0', NULL, '0', NULL ... voir la question mise à jour
chamich
1
Donc, j'ai eu un week-end pour réfléchir, qu'en est-il des groupes d'attributs? eav_attribute_groups, tous tactiques et complets? ou via Catalogue / Attribut / Gérer les jeux d'attributs
Jeroen
1
@Jeroen J'ai donc eu un week-end pour récupérer une nouvelle sauvegarde Magento: D. Quoi qu'il en soit, permet de résoudre ce problème. Je viens de mettre à jour la question bt en ajoutant le contenu de la table eav_attribute_groups.
chamich

Réponses:

3

Sur cette page, vous pouvez voir une section qui dit (à l'étape 4: définir vos entités):

"Depuis Magento 1.4, n'oubliez pas d'ajouter ces lignes suivantes. Entre les éléments" table "et" attributs ".;)

'additional_attribute_table' => 'catalog/eav_attribute',
'entity_attribute_collection' => 'catalog/product_attribute_collection',

Sans cela, les onglets Général, Méta, Images, ... n'apparaîtront pas dans la page d'édition du produit. "

Si vous ne l'aviez pas déjà corrigé via une sauvegarde, vous auriez pu ajouter ces deux lignes ci-dessous

'table' => 'catalog/product',

Et réexécutez le script en mettant à jour la table core_resourses vers la version requise pour relancer le script.

James Anelay - TheExtensionLab
la source