2012-02-19 13 views
8

Próbuję utworzyć moduł niestandardowych pomocnika w Magento ale ja otrzymuję następujący błąd, gdy nazywam go ze strony:Wywołanie klasy pomocnika w Magento

Warning: include(Mage/SEO/Helper/Data.php) [function.include]: failed to open stream: No such file or directory in /home/strailco/1stclassholidays.com/html/lib/Varien/Autoload.php on line 93 

z szablonu używam następujące zadzwonić moduł pomocniczy:

<?php echo Mage::helper('SEO')->getFullProductUrl($product); ?> 

moduł pomocnik został utworzony:

/app/code/local/SEO/Fullurl/Helper/Data.php 
/app/code/local/SEO/Fullurl/etc/config.xml 

data.php wywołuje th Funkcja e:

<?php 

class getFullProductUrl { 

public function getFullProductUrl($product) 
{ 
} 

Mam config.xml skonfigurować tak:

<?xml version="1.0"?> 
<config> 
    <global> 
     <helpers> 
     <SEO> 
     <class>getFullProductUrl</class> 
     </SEO> 
     </helpers> 
    </global> 
</config> 

Myślę, że problemem jest sposób mam skonfigurować config.xml ale jestem walczą opracować prawidłowy sposób robienia tego.

Byłbym bardzo wdzięczny za każdą pomoc, jaką mógłbyś dać. Pracuję nad tym przez kilka dni, ale nie mogę go uruchomić.

Wiele Dzięki

Jason

+0

Mam podobny błąd z innymi modułami: ERR (3): Ostrzeżenie: włącz (Mage/Adjgiftreg/Helper/Data.php): nie udało się otworzyć strumienia: Brak takiego pliku lub katalogu w ... gdzie Ty wywołać echo Mage :: helper ("SEO") -> getFullProductUrl ($ product); ?? – Leoh

Odpowiedz

20

Pierwszym problemem jest config.xml. Musisz powiedzieć Magento, z której klasy korzystasz.

...Other Stuff... 
<global> 
    ...Other Stuff... 
    <helpers> 
    <SEO> 
     <class>SEO_Fullurl_Helper</class> 
    </SEO> 
    </helpers> 
    ...Other Stuff... 
</global> 
...Other Stuff... 

Następnie trzeba pomocnikiem app/code/local/SEO/Fullurl/Helper/Data.php, który wygląda tak:

class SEO_Fullurl_Helper_Data extends Mage_Core_Helper_Abstract 
{ 

    function getFullProductUrl($product) 
    { 
    } 
} 

Następnie można zrobić echo Mage::helper('SEO')->getFullProductUrl($product);

+0

Dzięki za odpowiedź - w config.xml kiedy mówisz "inne rzeczy ..." co masz na myśli? Czy brakuje mi czegoś z pliku? –

+1

Brakuje ci _lubu rzeczy! Przeczytaj http://alanstorm.com/magento_config, aby dowiedzieć się więcej o plikach konfiguracyjnych. Jeśli chcesz Bloki, Kontrolery lub Modele, będziesz musiał zadeklarować je również w pliku config.xml. Czytaj więcej na http://alanstorm.com/category/magento – Max

1

ja ominęło etap dodawania modułu do app/etc/modules /SEO_Fullurl.xml

<?xml version="1.0"?> 
<config> 
    <modules> 
     <SEO_Fullurl> 
      <active>true</active> 
      <codePool>local</codePool> 
     </SEO_Fullurl> 
    </modules> 
</config> 

Mam nadzieję, że to pomoże komuś, ve Łatwy do popełnienia błąd.

Powiązane problemy