Jump to content
Sign in to follow this  
Silberschnitt

Как вывести отдельные страницы информации? [РЕШЕНО]

Recommended Posts

Уважаемые продвинутые пользователи, как вывести отдельные ссылки из блока информации ?

код:

<?php foreach ($informations as $information) { ?>
  <li><a href="<?php echo $information['href']; ?>"><?php echo $information['title']; ?></a></li>
<?php } ?>

выводит сразу все содержимое

Другими словами, как записать:

<li><a href="index.php?route=information/information&information_id=4">О компании</a></li>
<li><a href="index.php?route=information/information&information_id=9">Услуги</a></li>

через переменные и в ссылке и в якоре

ос 1.5.3.1 на localhost

Спасибо за внимание

Share this post


Link to post
Share on other sites

Что мешает прописать вышеприведенные ссылки перед

<?php } ?>

? Ну или вместо цикла..

Share this post


Link to post
Share on other sites

Что мешает прописать вышеприведенные ссылки перед

<?php } ?>

? Ну или вместо цикла..

Есть 10 статей ( о нас, услуги, доставка и оплата, условия соглашения и т. д.). Цикл выводит их все в модуле "информация".

Хочу вывести в меню хедера только 3.

<div id="menu2">
  <ul>
<li><a href="<?php echo $home; ?>"><?php echo $text_home; ?></a></li>
<li><a href="index.php?route=information/information&information_id=4">О компании</a></li>
<li><a href="index.php?route=information/information&information_id=9">Услуги</a></li>
<li><a href="<?php echo $sitemap; ?>"><?php echo $text_sitemap; ?></a></li>
<li><a href="index.php?route=information/information&information_id=8">Загрузить</a></li>
<li><a href="<?php echo $contact; ?>"><?php echo $text_contact; ?></a></li>
  </ul>
</div>

Как переписать 2,3 и 5 строчки в виде:

<li><a href="<?php echo ...............; ?>"><?php echo ............; ?></a></li>

Что вставить вместо многоточия ???

Это нужно для мультиязычности, и чтобы скрипт

<script type="text/javascript">
jQuery(document).ready(function($) {
var url=document.location.href;
$.each($("#menu2 a"),function(){
if(this.href==url){$(this).addClass('active');};
});
})(jQuery);
 </script>

работал с SEO PRO

Спасибо за внимание.

Share this post


Link to post
Share on other sites

У вас название ссылок на разных языках?

Share this post


Link to post
Share on other sites

У вас название ссылок на разных языках?

На разных языках якоря ссылок.

Share this post


Link to post
Share on other sites

аааа.. якоря ссылок на разных языках... про такое я еще не думал...

Это зачем такое??

Share this post


Link to post
Share on other sites

аааа.. якоря ссылок на разных языках... про такое я еще не думал...

Это зачем такое??

Простите мне мое дилетантство. Я якорем называл сам текст ссылки

Короче, на разных языках текст ссылки.

Share this post


Link to post
Share on other sites

Как-то все непонятно.

В контроллере создайте переменную, которая имя из языкового файла будет тянуть со ссылкой.

Ну и языковые, соответственно.

Однако, все как-то запутано =) По ссылке ?route/info_blah_blah ведь все-равно будет переход на сайт/информация_3

Не понимаю, зачем это.

Share this post


Link to post
Share on other sites

Вот-вот. Именно, как показал тов. ravilr

Share this post


Link to post
Share on other sites

ravilr и Alex Fisher, спасибо. Но это, в принципе, понятно мне было. Попробую еще пояснить откуда ноги растут.

Изначально стоит задача сделать подсвечивание пункта меню на текущей странице. Вопрос поднимался здесь

вот есть скрипт

jQuery(document).ready(function($) {
var url=document.location.href;
$.each($("#menu2 a"),function(){
if(this.href==url){$(this).addClass('active');};
});
})(jQuery);

Он вполне работает с SEO PRO даже где заменены все ссылки типа ?route/info_blah_blah

смотрим_тут

Когда ссылка имеет вид

<li><a href="index.php?route=information/sitemap">карта сайта</a></li>

скрипт не работает.

Когда ссылка имеет вид

<li><a href="<?php echo $sitemap; ?>">карта сайта</a></li>

скрипт работает

если выводить статьи через цикл

<?php foreach ($informations as $information) { ?>
<li><a href="<?php echo $information['href']; ?>"><?php echo $information['title']; ?></a></li>
<?php } ?>

скрипт тоже будет работать. Как я понимаю, вместо $information['href'] подставляется SEO URL из админки, вместо $information['title'] - заголовок статьи.

Но цикл выводит сразу все статьи. Отключить в админке не вариант.

Короче, схематично это выглядит так:

массив:

$informations = array( information_id=4, information_id=5, information_id=6, information_id=7, information_id=8 )

цикл:

foreach ($informations as $information) {
echo $information; }

и он все выводит

А мне нужно так

echo $informations[information_id=4];
echo $informations[information_id=6];

Тогда не будет нужды и новые языковые переменные вводить

Спасибо за внимание, надеюсь, все понятно.

Share this post


Link to post
Share on other sites

Осталось понять почему скрипт не работает )))

вот вы пишите

когда ссылка

<li><a href="index.php?route=information/sitemap">карта сайта</a></li>

а ссылка то у вас на карту какая???

напишите так

<li><a href="./sitemap/">карта сайта</a></li>

и все заработает.

а по поводу получения отдельной статьи, я искал давным давно решение, так и не нашел на тот момент и сделал через переменные.

  • +1 1

Share this post


Link to post
Share on other sites

блин, .location что в первом, что во втором примере будет один. Все правильно. Лучше понять почему скрипт не жужжит )

  • +1 1

Share this post


Link to post
Share on other sites
а ссылка то у вас на карту какая???

напишите так

<li><a href="./sitemap/">карта сайта</a></li>

Так ссылки прописал. Вроде заработало. Спасибо огроменное !

Если нервы мотал, извиняюсь.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.