سؤال

في مشروعي الحالي على Magento وين-Partner.at لا بد لي من إعداد متاجر متعددة على موقع واحد.

بالنسبة للمتاجر المختلفة، ستكون هناك بلا شك لغات مختلفة، مما يعني أيضًا مشاهدات متعددة للمتاجر.ومع ذلك، اختفى محدد اللغة وليس لدي أدنى فكرة عن مكانه.ومن المثير للاهتمام أن لدي محدد العملة بدلاً من ذلك.

هل هناك طريقة بالنسبة لي لإنشاء "محدد المتجر" في الأعلى، وليس مجرد محدد عرض المتجر؟

هل يجب علي تمكين "إضافة رمز المتجر إلى عنوان URL" لذلك؟

الخطة بشكل أساسي هي كما يلي:

هناك الموقع الإلكتروني (wein-partner.at) الذي سيفتح على الصفحة الرئيسية ويظهر فيه المتجر الرئيسي.أدناه، إذا نقرت على فئة ما، فإنك تدخل في عرض الفئة مع علامات إضافية للاختيار من بينها (المنطقة، السعر، ..).إذا قمت بالنقر فوق، فلنفترض أن منطقة بها صانع نبيذ واحد فقط، فمن المفترض أن يتم نقلك إلى المتجر الفرعي الخاص بصانع النبيذ ليظهر شعاره بدلاً من شعارنا (لا يمكنني حاليًا تغيير المتجر، لذلك يظهر دائمًا عرض متجر البائع).

ملف القالب هو نفس طريقة عرض الفئة باستثناء الشعار (كل بائع لديه مشاهدات متجره الخاصة أيضًا [من المحتمل بشكل أساسي الإنجليزية والألمانية والفرنسية والإيطالية]).

خلاصة القول، هذا يعني أنه سيكون هناك 4 مستويات (موقع الويب - المتجر الرئيسي - المتجر/مجموعة المتجر - عرض المتجر/المتجر)

تحرير01: لقد وجدت هذا حتى الآن (app/design/frontend/default/your_theme/template/page/switch)

<?php if(count($this->getGroups())>1): ?>
<div class="store-switcher">
    <label for="select-store"><?php echo $this->__('Select Store:') ?></label>
    <select id="select-store" title="<?php echo $this->__('Select Store') ?>" onchange="location.href=this.value">
    <?php /*foreach ($this->getStores() as $_store): ?>
        <option value="<?php echo $_store->getUrl('') ?>"<?php if($_store->getId()==$this->getCurrentStoreId()): ?> selected="selected"<?php endif; ?>><?php echo $_store->getName() ?></option>
    <?php endforeach;*/ ?>
    <?php foreach ($this->getGroups() as $_group): ?>
        <?php $_selected = ($_group->getId()==$this->getCurrentGroupId()) ? ' selected="selected"' : '' ?>
        <option value="<?php echo $_group->getHomeUrl() ?>"<?php echo $_selected ?>><?php echo $this->escapeHtml($_group->getName()) ?></option>
    <?php endforeach; ?>
    </select>
</div>
<?php endif; ?>
هل كانت مفيدة؟

المحلول

يتم تحميل وحدة التخزين المتجر في السمة الافتراضية عبر ملف التخطيط (XML).

التطبيق / التصميم / الواجهة الأمامية / your_package / your_theme / layout / page.xml

ابحث عن السطر التالي للنص: giveacodicetagpre.

إذا قمت بنسخ هذا السطر من XML إلى الموقع الذي تريده، فيمكنك إضافة مكالمة لعرضها في ملف القالب (PHTML) مثل هذا: giveacodicetagpre.

نصائح أخرى

حدد page.xml في app/design/frontend/base/default/layout الدليل.

افتح الملف باستخدام محرر النصوص وابحث عن الكود أدناه.

<block type="page/switch" name="store_switcher" as="store_switcher" template="page/switch/stores.phtml"/>

لعرض مبدل المتجر على رأس الصفحة، علينا فقط تغيير موقع الكود أعلاه.يتم إدخال هذا الرمز في page/html_footerحاجز.قم بقصها ولصقها تحت page/html_header حاجز.

<block type="page/html_header" name="header" as="header">

الآن لعرض مبدل المتجر، انتقل إلى header.phtml في ال app/design/frontend/base/default/template/page/html الدليل وأدخل الكود التالي

<?php echo $this->getChildHtml('store_switcher') ?>

تأكد من متاجر الملفات الخاصة بك.phtml متاح إذا لم يتم إتاحة عدم توفره من هذا الملف من Magento Fresh من قالب الأساس / الصفحة / التبديل / المجلد

ثم تأكد من وضع الرمز بشكل صحيح!آمل أن تعمل بشكل جيد!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى magento.stackexchange
scroll top