سؤال

أنا فقط أتساءل عما إذا كان لدى أي شخص أي خبرة في تنسيق الخبز في Magento؟

أرغب في استبدال الرابط الذي يعرض حاليًا النص "الصفحة الرئيسية" بصورة.

اعتقدت أنها ستكون حالة بسيطة لاستبدال بعض النص بصورة ، لكن يبدو أن النص/الرابط "الصفحة الرئيسية" يتم إنشاؤه ديناميكيًا لأن هذا هو كل ما هو موجود في breadcrumbs.phtml:

<?php if($crumbs && is_array($crumbs)): ?>
<div class="breadcrumbs">
    <ul>
        <?php foreach($crumbs as $_crumbName=>$_crumbInfo): ?>
            <li class="<?php echo $_crumbName ?>">
            <?php if($_crumbInfo['link']): ?>
                <a href="<?php echo $_crumbInfo['link'] ?>" title="<?php echo $this->htmlEscape($_crumbInfo['title']) ?>"><?php echo $this->htmlEscape($_crumbInfo['label']) ?></a>
            <?php elseif($_crumbInfo['last']): ?>
                <strong><?php echo $this->htmlEscape($_crumbInfo['label']) ?></strong>
            <?php else: ?>
                <?php echo $this->htmlEscape($_crumbInfo['label']) ?>
            <?php endif; ?>
            <?php if(!$_crumbInfo['last']): ?>
                <span>&gt;</span>
            <?php endif; ?>
            </li>
        <?php endforeach; ?>
    </ul>
</div>
<?php endif; ?>
هل كانت مفيدة؟

المحلول

استخدم CSS ، هذه معركة لا تستحق ذلك حقًا :) ستعتني الأسطر الخمسة من CSS بهذه القضية بسهولة أكبر من محاولة اختراق عارضات الخبز.

نصائح أخرى

في الواقع ، يمكنك إخفاء هذا "المنزل" الأول من الظهور في فتات الخبز دون العبث مع CSS والحفاظ على نظافة HTML.

فقط أضف القاعدة "! $ _ Crumbinfo ['First'"إلى الظروف الخاصة بك ، تمامًا مثل:

<?php if ($crumbs && is_array($crumbs)): ?>
    <?php foreach ($crumbs as $_crumbName => $_crumbInfo): ?>
        <?php if ($_crumbInfo['link'] && !$_crumbInfo['first']): ?>
            <a href="<?php echo $_crumbInfo['link'] ?>" title="<?php echo $this->htmlEscape($_crumbInfo['title']) ?>"><?php echo $this->htmlEscape($_crumbInfo['label']) ?></a>
        <?php elseif ($_crumbInfo['last']): ?>
            <?php echo $this->htmlEscape($_crumbInfo['label']) ?>
        <?php elseif (!$_crumbInfo['first']): ?>
            <?php echo $this->htmlEscape($_crumbInfo['label']) ?>
        <?php else: ?>
        <?php endif; ?>
        <?php if (!$_crumbInfo['last'] && !$_crumbInfo['first']): ?>
            » 
        <?php endif; ?>
    <?php endforeach; ?>
<?php endif; ?>

أعتقد أن هذا يتم تعيينه في التطبيق/الكود/CORE/MAGE/CMS/block/page.php. انظر إلى طريقة _preparelayout () (أنا أستخدم Magento 1.3 ، لذلك قد يكون هذا بعيدًا عن التاريخ).

أرى أن لديك بعض الخيارات للتحديث.

  1. تحرير الملف مباشرة. (ليس توصيتي ، ولكن الطريق الصيام)
  2. تجاوز الفصل في الوحدة النمطية الخاصة بك
  3. قم بإنشاء إدخال ملف Translate.csv الخاص بك. هذه هي الطريقة التي أرغب في تحديث الإهانة في المواقف العادية ، ولكن قد لا تكون كوب الشاي الخاص بك. لذلك في التطبيق/التصميم/الواجهة الأمامية/your_package/your_theme/locale/en_us/translate.csv يمكنك وضع خط جديد يقول "الصفحة الرئيسية" ، "" ثم بريستو.
  4. قم بتحرير ملف CSS بدلاً من ملفات PHP/PHTML. إذا كنت من ذوي الخبرة في منتصف الطريق مع CSS ، فيمكنك على الأرجح تعيين نص النص على -2000 وضبط صورة الخلفية.

لا حاجة لكتابة أي رمز لهذا الغرض ، فقط باستخدام ملف الترجمة الخاص بك يمكننا تغيير "الصفحة الرئيسية" في Breadcrumb.

لهذا :

GOTO الخاص بك -> إنشاء دليل موضعي-> إنشاء دليل EN_US -> إنشاء TRANSLATE.CSV.

في هذا فقط اكتب كودًا أدناه

"الصفحة الرئيسية" ، "اختيارك".

قم بتحرير ملف breadcrumbs.phtml الخاص بك:

/app/design/frontend/ budapyour_theme/201/default/template/page/html/breadcrumbs.phtml

إذا كنت ترغب في استبدال فتات المنزل بصورة:

<?php foreach($crumbs as $_crumbName=>$_crumbInfo): ?>
    <li class="<?php echo $_crumbName ?>">
    <?php if($_crumbInfo['first']): ?>
        <a href="<?php echo $_crumbInfo['link'] ?>" title="<?php echo $this->htmlEscape($_crumbInfo['title']) ?>">
            <img src="/your/image/path.png"/>
        </a>
    <?php elseif($_crumbInfo['link']): ?>
        <a href="<?php echo $_crumbInfo['link'] ?>" title="<?php echo $this->htmlEscape($_crumbInfo['title']) ?>"><?php echo $this->htmlEscape($_crumbInfo['label']) ?></a>

إذا كنت ترغب في إزالة فتات المنزل بالكامل ، وهو ما أحتاجه:

<?php foreach($crumbs as $_crumbName=>$_crumbInfo): ?>
    <?php if ($_crumbInfo['first']) continue ?>
    <li class="<?php echo $_crumbName ?>">
    <?php if($_crumbInfo['link']): ?>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top