2

フロントエンドでユーザー プロファイル ページに移動しようとすると、このメッセージが表示され続けます。誰かが解決策を見つけるのを手伝ってくれますか? 私はMagentoを初めて使用します。

致命的なエラー: クラス 'Mage_Profile_Helper_Data' が /home/.../public_html/store/app/Mage.php 行 546 に見つかりません

また、これは最近機能していたと思いますが、テーマに css の変更を加えただけなので、どうすればこれが壊れたのかわかりません。

また、管理パネルからコンパイルを再コンパイルして無効にしました。

アップデート:

私はData.phpでこれを見つけました:

class MYSITE_Profile_Helper_Data extends Mage_Core_Helper_Abstract{

    public function getProfilesUrl(){
        return Mage::getUrl('profile/profile/index');
    }
}

そして、これを app/etc/modules/MYSITE_Profile.xml で見つけました

<config>
<modules>
    <MYSITE_Profile>
        <active>true</active>
        <codePool>local</codePool>
        <depends>
            <Mage_Core />
        </depends>
    </MYSITE_Profile>
</modules>
</config>
4

3 に答える 3

4

この場合、モジュールがないため、カスタム モジュールを扱っていMage_Profileます。通常、「データ ヘルパーの欠落」の問題は、モジュール開発者が文字列の変換を指定し、適切なクラスを提供できなかった結果です。

Magento がファクトリ メソッドを介してヘルパー (またはブロックまたはモデル) クラスをインスタンス化するように求められると、引数 (profileこの場合) を受け取り、それを特定の Xpath ノードに解決しようとします。アプリケーションがこのノードを見つけられない場合、引数がコアの一部であると想定し、先頭mage_に を追加し、クラス タイプ ( helper) を追加し、クラス ID (ヘルパーの場合はdata) を追加します。詳細Mage_Core_Model_Config::getGroupedClassName()については、を参照してください。

app/code/community/、、app/code/local/およびapp/design/frontend/文字列"profile"(二重引用符を含む)のXML ファイルを検索する必要があります。これは、この問題の最も一般的なベクトルです。

いくつかのファクトリ メソッドを使用してヘルパーをインスタンス化することもできます (残念ながら)。これらは.php.phtml文字列('profile')または('profile/data').

profile最終的に、ヘルパーのクラス グループを構成する必要があるカスタム モジュールを探しています。これは例The/Module/etc/config.xmlにあり、作成/追加するものは次のようになります。

<global>
    <helpers>
        <profile><!-- class group -->
            <class>The_Module_Helper</class><!-- class prefix -->
        </profile>
    </helpers>
</global>

The_Module_Helper_Data次に、次のようにクラスを定義するだけで済みます(例The/Module/Helper/Data.php

<?php
class The_Module_Helper_Data extends Mage_Core_Helper_Abstract
{
}

これを行った後、アプリケーションが動作するはずであり、元の開発者を抑制する必要があります:-)

于 2013-09-06T16:31:17.197 に答える
2

プロファイル モジュールのヘルパー フォルダーに data.php という名前のファイルを 1 つ作成する必要があります。そのため、拡張機能には常にデータ ヘルパーを含める必要があります。したがって、次のコードはapp/code/local/MYSITE/Helper/Data.php

class Mage_Profile_Helper_Data extends Mage_Core_Helper_Abstract
{

}

<global>
    <helpers>
        <profile>
            <class>MYSITE_Profile_Helper</class>
        </profile>
    </helpers>
</global>

あなたapp/code/local/MYSITE/Profile/etc/config.xmlで十分なはずです。

于 2013-09-06T15:52:26.350 に答える