Post by meteordesign » Fri Jul 14, 2017 5:53 pm

I'm making a template in OpenCart 3 with the TWIG template engine and for my header.twig I need to have my currency and language options on two seperate places for desktop and mobile. But when I use the {{ currency }} or language twice it messes with the code.

This is my code:

Code: Select all

{% if languages|length > 1 %}
    <form action="{{ action }}" method="post" enctype="multipart/form-data" id="form-language" class="topbar-content desktop-language">
        <a href="#" class="dropdown-button" data-activates="language">
            <i class="mdi mdi-earth"></i>
            {{ text_language }}
            <i class="mdi mdi-menu-down dropdown-icon"></i>
        </a>
        <ul id="language" class="dropdown-content">
            {% for language in languages %}
                <li><a class="language-select" name="{{ language.code }}">{{ language.name }}</a></li>
            {% endfor %}
        </ul>
        <input type="hidden" name="code" value="" />
        <input type="hidden" name="redirect" value="{{ redirect }}" />
    </form>
{% endif %}

{% if languages|length > 1 %}
    <form action="{{ action }}" method="post" enctype="multipart/form-data" id="form-language" class="topbar-content mobile-language">
        <a href="#" class="dropdown-button" data-activates="language-2">
            <i class="mdi mdi-earth"></i>
            {{ text_language }}
            <i class="mdi mdi-menu-down dropdown-icon"></i>
        </a>
        <ul id="language-2" class="dropdown-content">
            {% for language in languages %}
                <li><a class="language-select" name="{{ language.code }}">{{ language.name }}</a></li>
            {% endfor %}
        </ul>
        <input type="hidden" name="code" value="" />
        <input type="hidden" name="redirect" value="{{ redirect }}" />
    </form>
{% endif %}
And this is what it outputs on desktop:

Code: Select all

<form action="http://localhost/index.php?route=common/language/language" method="post" enctype="multipart/form-data" id="form-language" class="topbar-content desktop-language">
        <a href="#" class="dropdown-button" data-activates="language">
            <i class="mdi mdi-earth"></i>
            Language
            <i class="mdi mdi-menu-down dropdown-icon"></i>
        </a>
        
        <input name="code" value="" type="hidden">
        <input name="redirect" value="http://localhost/index.php?route=common/home" type="hidden">
    </form>
And this on mobile:

Code: Select all

<form action="http://localhost/index.php?route=common/language/language" method="post" enctype="multipart/form-data" id="form-language" class="topbar-content desktop-language">
        <a href="#" class="dropdown-button" data-activates="language">
            <i class="mdi mdi-earth"></i>
            Language
            <i class="mdi mdi-menu-down dropdown-icon"></i>
        </a><ul id="language" class="dropdown-content">
                            <li><a class="language-select" name="en-gb">English</a></li>
                            <li><a class="language-select" name="nl-NL">Nederlands</a></li>
                    </ul>
        <ul id="language" class="dropdown-content">
                            <li><a class="language-select" name="en-gb">English</a></li>
                            <li><a class="language-select" name="nl-NL">Nederlands</a></li>
                    </ul>
        <input name="code" value="" type="hidden">
        <input name="redirect" value="http://localhost/index.php?route=common/home" type="hidden">
    </form>
    <form action="http://localhost/index.php?route=common/language/language" method="post" enctype="multipart/form-data" id="form-language" class="topbar-content mobile-language">
        <a href="#" class="dropdown-button" data-activates="language-2">
            <i class="mdi mdi-earth"></i>
            Language
            <i class="mdi mdi-menu-down dropdown-icon"></i>
        </a><ul id="language-2" class="dropdown-content">
                            <li><a class="language-select" name="en-gb">English</a></li>
                            <li><a class="language-select" name="nl-NL">Nederlands</a></li>
                    </ul>
        <ul id="language-2" class="dropdown-content">
                            <li><a class="language-select" name="en-gb">English</a></li>
                            <li><a class="language-select" name="nl-NL">Nederlands</a></li>
                    </ul>
        <input name="code" value="" type="hidden">
        <input name="redirect" value="http://localhost/index.php?route=common/home" type="hidden">
    </form>
So for some reason it decides to place my UL for the desktop to remove it and place it where the mobile tag is and generates two more of them.

Who can help me with this?

User avatar
Newbie

Posts

Joined
Fri Jul 14, 2017 5:40 pm


Post by mlawrence » Sun Jul 23, 2017 6:13 am

Wrong section - you posted in Opencart 2.0.

Newbie

Posts

Joined
Fri Mar 07, 2014 2:10 pm
Who is online

Users browsing this forum: No registered users and 47 guests