2013-10-09 53 views
0

我找到這個代碼:Drupal的 - 當前頁,其他語言

<?php global $language; ?> 
<?php global $theme_path; ?> 

<ul class="language-switcher-locale-url"> 
    <?php $languages = language_list() ?> 
    <?php foreach($languages as $lang): ?> 
    <?php $active = $language->language == $lang->language ? " active" : ""; ?> 
    <li class="<?php echo $lang->language ?><?php echo $active ?>"> 
     <a href="/<?php echo $lang->prefix ?>"> 
      <img src="/<?php echo $theme_path ?>/images/flags/<?php echo $lang->language ?>.png" alt="<?php echo $lang->language ?>"/> 
     </a> 
    </li> 
    <?php endforeach ?> 
</ul> 

這重定向我從mywebsite.com/de/current_page所選語言前。 mywebsite.com/en

我能爲我的代碼來重定向我mywebsite.com/en/current_page

回答

2

做你應該嘗試使用url()request_path()功能Drupal提供,也許像這樣的工作:

<?php global $language; global $theme_path; $languages = language_list() ?> 

<ul class="language-switcher-locale-url">                                           
    <?php foreach($languages as $lang): ?> 
    <?php $active = $language->language == $lang->language ? " active" : ""; ?> 
    <li class="<?php echo $lang->language ?><?php echo $active ?>"> 
     <a href="<?php echo url(request_path(), array('language' => $lang)); ?>"> 
     <img src="/<?php echo $theme_path ?>/images/flags/<?php echo $lang->language ?>.png" alt="<?php echo $lang->language ?>"/> 
     </a> 
    </li> 
    <?php endforeach ?> 
</ul> 
+0

羅也沒不工作,它只是重定向到當前語言的實際頁面 – Leeroy521

+0

啊,對不起,在閱讀url文檔後,我意識到語言選項需要語言對象,而不是語言ID。我相應地更新了代碼。現在嘗試。 :) –

+0

它沒有工作,重定向到當前語言的實際頁面,如從mywebsite.com/en/content-english到mywebsite.com/en/de/content-english – Leeroy521