Выводим несколько блоков Sape-ссылок на WordPress-сайте

20 октября 2007 г.

По известным причинам рекомендуется разделять блок ссылок, размещенных на сайте через систему SAPE, на несколько частей. Также желательно не помещать их в самом конце кода страницы.

О том, как разумнее организовать вывод сапе-ссылок, написал очень полезную статью Ильшат SAID Саетов - Оформление ссылок в Сапе. За это ему большая благодарность. Лично мне информация очень пригодилась, надеюсь, и Вам она тоже будет полезна.

Я хотел бы дополнить SAID’а, описав его способ вывода ссылок применительно к популярному движку WordPress.

Основная заминка возникает в случае, когда необходимо разделенные блоки поместить в разных файлах шаблона WordPress-сайта, например, в index.php и sidebar.php.

Предположим, что нам нужно разделить ссылки от Sape на 2 блока. Тогда код для первой части будет следующим:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
  define('_SAPE_USER', 'blablablablablablablablablabla');
  require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');

  $o['charset'] = 'UTF-8';
  $sape = new SAPE_client($o);
  unset($o);

  $sape_links = $sape->return_links(3); //указываем количество ссылок в первом блоке

  global $sape_echo;
  $sape_echo = $sape->return_links();

  if (strstr($sape_links, 'href')!==FALSE) //проверка наличия ссылок
  { echo '
  <ul id="sape1">
    <li>'
;
    echo $sape_links; //вывод ссылок (с разделителем)
    echo '
    </li>
  </ul>
  '
;
  }
  else // если ссылок нет
  {
  echo $sape_links; //выводим только "список ссылок", то есть ничего
  }
?>

Код для второй части ссылок:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
  global $sape_echo;
  if (strstr($sape_echo, 'href')!==FALSE) //проверка наличия ссылок
  { echo '
  <ul id="sape2">
    <li>'
;
    echo $sape_echo; //вывод ссылок (с разделителем)
    echo '
    </li>
  </ul>
  '
;
  }
  else // если ссылок нет
  {
  echo $sape_echo; //выводим только "список ссылок", то есть ничего
  }
?>

Вы должны понимать, что порядок вставки указанных php-кодов в шаблон должен соответствовать порядку вывода информации на страницу. Т.е., например, нельзя 1-й код разместить в sidebar.php, а 2-й в index.php, если сначала выводится инфо из index.php, а потом из sidebar.php.

После вставки всего этого чуда в Ваш WordPress-шаблон, можно пошаманить с CSS, чтобы привести получившиеся списки ссылок к благородному виду.

Желаю успехов.

* * *

Лидирующая компания в сфере прозводства офисной техники предлагает приобрести копировальные аппараты KYOCERA на сайте km-line.ru. Имеется полный ассортимент техники “Kyocera Mita”. Возможна доставка как по Москве, так и в города России.

Теги: , , автор: Dimox | рубрика WordPress

Комментарии (78): »

  1. Не знаю, учитывает ли особенности, но способ размещения ссылок (автоматом или вручную) вы выбираете сами.

  2. Спасибо за совет. Попробуем.

  3. У меня есть )))

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    define('_SAPE_USER', 'папка');
    require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');

    $opt = array();
    $uri = getenv('REQUEST_URI');
    $pos = strpos($uri, '?');
    if ( $pos ) $uri = substr($uri,0,$pos);
    $opt['request_uri'] = $uri;

    $o['host'] = 'сайт';
    $sape = new SAPE_client($opt);
    unset($o);
     //echo $sape->return_links();
    $tpl->set('{LINKS}', $sape->return_links());

    Это сам код в пхп-файл
    А дальше в шаблоне в нужных местах выводим:

    1
    2
    3
    $tpl->set('{sape_links}', $sape->return_links(2));
    $tpl->set('{sape_links1}', $sape->return_links(2));
    $tpl->set('{sape_links2}', $sape->return_links());

    Цифры в скобках - это количество ссылок в данном блоке

  4. Спасибо за статью, а то давно использовал этот метод вместо плагина специального, а теперь другу помочь надо, а сам забыл, как это делается.

  5. Привет, хотел спросить, сейчас актуально ли эта тема с сапой? - это насчет того, можно ли зарабатывать. и по главней вопрос - не пойму куда именно вставлять коды, в самом верху шаблона или конкретно между какими то тэгами?

    @
  6. Тема актуальна конечно. Код нужно вставлять в том место шаблона, где нужно вывести ссылки.

  7. if (strstr($sape_echo, ‘href’)!==FALSE) …
    if (strstr($sape_links, ‘href’)!==FALSE) …

    как-то не человечно условие написано =) ты писал?

    по-моему след. вариант красивее выглядит( и более правильно с точки зрения… двига xD):
    if (strstr($sape_echo, ‘href’)) …
    if (strstr($sape_links, ‘href’)) …

    условие у обоих примеров одинаковое, но второй вариант все-таки правильнее..

  8. Не я писал. Я в таких штуках не разбираюсь.

  9. Спс за код. Хотя сейчас всё это делает плагин, было интересно понять как же оно там работает.

  10. Всем привет Ребят может кто поможет установить этот блок а то я всё сделал только блок не могу установить вот моя ася 565095131

    @
  11. Привет, не в тему немного. Но как называется плагин этот сбоку левого кнопок социалок? Самому мне не нужны кнопки эти. Просто нужно вывод в блоге важной инфо с помощью такой фигни??

  12. Спасибо за статью. Подскажите еще одно, если можно. Как сделать теперь ссылки отображаемые на сайте маленького размера, ну чисто для эстетичности и незаметности. На джумла я делал так: return_links(1), “UTF-8″, “CP1251″); ?> Перекодировка и уменьшение. Я не шарю в этом, посему попробовал подставить тег span в разных вариантах к вашим кодам не получается. Вобщем как сделать ссылки меньше?

    @
  13. Еще одно. Допустим нужно сделать по одной ссылке в разных частях сайта. Какой будет код для третьей части ссылок?

    @
  14. Там, где в коде указано <ul id=”sape1″> и <ul id=”sape2″>, сделайте так:

    <ul id=”sape1″ style=”font-size: 10px”> и <ul id=”sape2″ style=”font-size: 10px”>.

  15. После строки:

    1
    $sape_links = $sape->return_links(3);

    добавьте:

    1
    $sape_links2 = $sape->return_links(3);

    И в коде для вывода (т.е. в коде 2-й части) замените все $sape_echo на $sape_links2. А для третьего блока, соответственно, останется неизменный код второй части.

  16. Dimox Спасибо вам большое, все работает. Желаю вам больше трафа, высокий ТИЦ и PR, а так же благодать Господа и Бога нашего Иисуса Христа да пребудет с вами!

    @
  17. И вам спасибо за добрые слова!

Присоединяйтесь к обсуждению!

Отправляя кoммeнтapий, вы автоматически принимаете правила кoммeнтиpoвaния на этом блоге.

Правила кoммeнтиpoвaния на блоге dimox.name:

  1. Первый кoммeнтapий всегда проходит премодерацию.
  2. В поле "URL блога" можно указывать только ссылку на главную страницу вашего блога. Ссылки на прочие веб-ресурсы (в том числе блоги/сплоги, созданные не для людей) будут удалены.
  3. Запрещается использовать в качестве имени комментатора слоганы/названия сайтов, рекламные фразы, ключевые и т.п. слова. В случае несоблюдения этого условия имя изменяется по усмотрению владельца блога. Просьба указывать нормальное имя или ник.
  4. Весьма вероятно, что короткий и неинформативный кoммeнтapий вида "Спасибо!", "Интересная статья", будет удален. Исключение составляют знакомые автору блога комментаторы.
  5. Комментарии не по теме удаляются.

Подписаться, не комментируя
  • Похожие статьи
  • Предыдущие из рубрики