Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Personnalisation menu avec Custom Menu
 
Smallbeetle
Jr. Member
 
Total Posts:  2
Joined:  2012-03-27
 

Bonjour,

Je cherche à faire un upload de fichier en modifiant le module Custom Menu (Web-and-people) de sorte que mes images apparaissent comme sur l’image suivante :

http://data.imagup.com/11/1152536486.png

Menu 1 etc., Sous-menu 1 etc. et Catégorie 1 correspondent à des catégories créées dans le panel d’administration (ce sont des produits).

Comment faire pour ajouter l’upload de fichier dans le panel d’admin lorsque l’on va dans Système > Configuration > Custom Menu ?

J’ai commencé à changer un peu le fichier system.xml pour ajouter certaines fonctions (qui ne fonctionnent pas encore du coup) que voici :

http://data.imagup.com/12/1152601016.JPG

Avec le code correspondant :

<uploadimg translate="label">
                    <
label>Upload images</label>
                    <
frontend_type>text</frontend_type>
                    <
sort_order>30</sort_order>
                    <
show_in_default>1</show_in_default>
                    <
show_in_website>1</show_in_website>
                    <
show_in_store>1</show_in_store>
                <
fields>
                    <
menu translate="label comment">
                                                <
label>Menu</label>
                                                <
comment>Association menu to image</comment>
                                                <
frontend_type>select</frontend_type>
                                                <
sort_order>1</sort_order>
                                                <
show_in_default>1</show_in_default>
                                                <
show_in_website>1</show_in_website>
                                                <
show_in_store>1</show_in_store>
                                       </
menu>
                    <
numimg translate="label comment">
                                                <
label>Numero image</label>
                                                <
comment>Image position 1234 ou 5</comment>
                                                <
frontend_type>select</frontend_type>
                                                <
sort_order>1</sort_order>
                                                <
show_in_default>1</show_in_default>
                                                <
show_in_website>1</show_in_website>
                                                <
show_in_store>1</show_in_store>
                                         </
numimg>
                                         <
url translate="label comment">
                                                <
label>Url</label>
                                                <
comment>Association url to image</comment>
                                                <
frontend_type>text</frontend_type>
                                                <
sort_order>2</sort_order>
                                                <
show_in_default>1</show_in_default>
                                                <
show_in_website>1</show_in_website>
                                                <
show_in_store>1</show_in_store>
                                        </
url>
                    <
upload translate="label comment">
                                                <
label>Upload</label>
                                                <
comment>Max size 50Ko</comment>
                                                <
frontend_type>file</frontend_type>
                                                <
sort_order>3</sort_order>
                                                <
show_in_default>1</show_in_default>
                                                <
show_in_website>1</show_in_website>
                                                <
show_in_store>1</show_in_store>
                                        </
upload>

                        <!--
                    <
send translate="value">
                        <
value>Uploader</value>
                                                <
frontend_type>submit</frontend_type>
                        <
backend_model>adminhtml/system_config_backend_file</backend_model>
                                                <
upload_dir>skin/frontend/default/tribeca/images</upload_dir>
                                                <
sort_order>4</sort_order>
                                                <
show_in_default>1</show_in_default>
                                                <
show_in_website>1</show_in_website>
                                                <
show_in_store>1</show_in_store>
                                        </
send>
                    -->
                              </
fields>
        </
uploadimg>

Il faut ensuite que je fasse en sorte que l’image se place au bon endroit grâce au CSS. Il faut également que je puisse trouver dans quel menu je souhaite uploader les images, par exemple je veux mettre image 1 dans menu “menu 1” comment procéder ? Je débute avec Magento et j’ai du mal à m’y retrouver malgré un bon mois d’analyse et de tests.

Quelqu’un pourrait-il m’éclairer sans forcément me donner de code mais en m’expliquant la démarche à suivre. Merci d’avance !

Cordialement.

PS : si vous avez besoin de plus de précisions, n’hésitez pas à me demander.

 
Magento Community Magento Community
Magento Community
Magento Community
 
Smallbeetle
Jr. Member
 
Total Posts:  2
Joined:  2012-03-27
 

J\’ai rectifié certaines choses dans le code, j\’aimerais trouver un moyen d\’insérer ce que j\’upload dans ma BDD. Comment procéder ?

system.xml :

<uploadimg translate=\"label\">
                        <
upload translate=\"label comment\">
                            <
label>Upload</label>
                            <
frontend_type>image</frontend_type>
                            <
backend_model>adminhtml/system_config_backend_image</backend_model>
                            <
upload_dir config=\"system/filesystem/media\" scope_info=\"1\">skin/frontend/default/tribeca/images</upload_dir>
                            <
base_url type=\"media\" scope_info=\"1\">skin/frontend/default/tribeca/images</base_url>
                            <
sort_order>100</sort_order>
                            <
show_in_default>1</show_in_default>
                            <
show_in_website>1</show_in_website>
                            <
show_in_store>1</show_in_store>
                            <
comment>Max size 100Ko 216px*65px</comment>
                        </
upload>
                    </
fields>
                </
uploadimg>

navigation.php :

public function getImage() {
        $images 
Mage::getModel(\'custommenu/images_custom_menu\')->
            
getResource()->getImages();
        return 
sprintf(
            
_(\"Test retourne l\'url de l\'image :\"), $images[\'img_url\']
        
);
    
}

images_custom_menu.php (créé par moi) :

<?php
    
    
class WP_CustomMenu_Model_Mysql4_Images extends Mage_Core_Model_Mysql4_Abstract {
        
public function _construct() {
            $this
->_init(\'custommenu/images_custom_menu\'\'img_id\');
        
}
        
        
public function getImages() {
             $adapter 
$this->getReadAdapter();
             
$select $adapter->select()
                 ->
from($this->getMainTable());
             return 
$adapter->fetchRow($select);
        
}
        
    }
?>

config.xml(modifié, ajout à la fin) :

<custommenu_mysql4>
                <class>
WP_CustomMenu_Model_Mysql4</class>
                <
entities>
                    <
images_custom_menu>
                        <
table>images_custom_menu</table>
                    </
images_custom_menu>
                </
entities>
            </
custommenu_mysql4>
        </
models>
        
        <
resources>
            <
images_custom_menu_setup>
                <
setup>
                    <
module>WP_CustomMenu</module>
                </
setup>
                <
connection>
                    <use>
core_setup</use>
                </
connection>
            </
images_custom_menu_setup>
            <
images_custom_menu_write>
                <
connection>
                    <use>
core_write</use>
                </
connection>
            </
images_custom_menu_write>
            <
images_custom_menu_read>
                <
connection>
                    <use>
core_read</use>
                </
connection>
            </
images_custom_menu_read>
        </
resources>

Ma table :

CREATE TABLE IF NOT EXISTS `images_custom_menu` (
  `
img_idint(11NOT NULL AUTO_INCREMENT,
  `
img_positionint(1NOT NULL,
  `
img_urlvarchar(100NOT NULL,
  `
img_cheminvarchar(200NOT NULL,
  `
entity_idint(10unsigned NOT NULL,
  
PRIMARY KEY (`img_id`),
  
KEY `foreign_key_fk` (`entity_id`)
ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=;

Comment insérer ce que j’upload dans la BDD ? Quel fichier traite ce qu’on fait dans l’admin ?

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top