Вернуться   Форум SAPE.RU > Система SAPE.ru > Вопросы по работе системы

-->
Ответ
 
Опции темы
Старый 19.11.2007, 06:13   #1
Новичок
 
Регистрация: 19.11.2007
Сообщений: 23
Вес репутации: 0
cesq на пути к лучшему
По умолчанию Распределение ссылок по разным местам страницы для блогов..

Для блога на WordPress код вызывающий ссылки такой:

PHP код:
<?php 
 define
('_SAPE_USER''22222222222222222222222'); 
 require_once(
$_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'); 
 
$o['charset'] = 'UTF-8';
 
$sape = new SAPE_client($o);
 unset(
$o);
?>
далее ссылки вызываются по одной.... так вот
PHP код:
<? echo $sape->return_links(1); ?>
НО, вставляя ссылку <? echo $sape->return_links(1); ?> в другой php файл, она выдаёт ошибку..

а если вставить в другой файл ВЕСЬ код целиком, то покажет все ссылки разом

Помогите, пожалуйста, что делать??
cesq вне форума   Ответить с цитированием
Старый 19.11.2007, 09:58   #2
Мастер
 
Регистрация: 20.07.2007
Адрес: Нижний Новгород
Сообщений: 867
Вес репутации: 227
leszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личность
По умолчанию

Допустим хотим разместить ссылки первый блок в сайдбаре - остальные в футере. В сайдбаре пишем
Цитата:
<?php
define('_SAPE_USER', 'ххххххх');
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client();
echo $sape->return_links(2);
global $sape_echo;
$sape_echo = $sape->return_links();
?>
при таком раскладе выведет 2 ссылки в сайдбаре.
в футере просто дописываем
Цитата:
<? global $sape_echo;
echo $sape_echo; ?>
Не забываем дописать по необходимости кодировку ЮТФ (если она используется)
leszkin вне форума   Ответить с цитированием
Старый 19.11.2007, 15:00   #3
Новичок
 
Регистрация: 19.11.2007
Сообщений: 23
Вес репутации: 0
cesq на пути к лучшему
По умолчанию

Супер.. Спасибо огромное..

Ещё вопросик.. Можно ли тиу часть, что в сайдбаре вывести отдельными ссылками, что их в тег списка заключить..

Цитата:
<?php
define('_SAPE_USER', 'xxx');
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$o['charset'] = 'UTF-8';
$sape = new SAPE_client($o);
unset($o);
echo $sape->return_links(1);

global $sape_echo;
$sape_echo = $sape->return_links();
?>
а отдельно

Цитата:
<? echo $sape->return_links(1); ?>
Ну чтобы каждая ссылка под
Цитата:
<li>
была
cesq вне форума   Ответить с цитированием
Старый 19.11.2007, 15:14   #4
Мастер
 
Регистрация: 20.07.2007
Адрес: Нижний Новгород
Сообщений: 867
Вес репутации: 227
leszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личность
По умолчанию

так в админке сапы поставьте просто разделитель ссылок <li> и все..
leszkin вне форума   Ответить с цитированием
Старый 19.11.2007, 16:33   #5
Новичок
 
Регистрация: 19.11.2007
Сообщений: 23
Вес репутации: 0
cesq на пути к лучшему
По умолчанию

Мерси
cesq вне форума   Ответить с цитированием
Старый 19.11.2007, 20:44   #6
Новичок
 
Аватар для Stutzer
 
Регистрация: 26.10.2007
Сообщений: 50
Вес репутации: 201
Stutzer на пути к лучшему
Отправить сообщение для Stutzer с помощью ICQ
По умолчанию

Не думаю ,что открыл америку, но я после некоторых мытарств пришел вот к такому решению:

В настройках сапы в качестве разделителя ссылок ставим что-нибудь вроде "<split/>"

далее в коде инициализации sape_client-a делаете примерно следующее:
PHP код:
define('_SAPE_USER''******************************'); 
require_once(
$_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
// если используем mod_rewrite:
if (isset($_SERVER['REDIRECT_URL'])){
  
$o['request_uri'] = $_SERVER['REDIRECT_URL'];
}

$sape = new SAPE_client($o);
$links $sape->return_links();
// разделитель ссылок
$links_split '<split/>';

// разбиваем строку, содержащую ссылки в массив
if ( substr($links,0,4) != '<!--' ) {
  
$sapelinks['checkcode'] = '<!--none-->';
  
$sapelinks['links'] = explode($links_split$links);
} else {
  
$sapelinks['checkcode'] = $links;
  
$sapelinks['links'] = array();
}

// А далее можно извращаться как вам угодно:
// передать массив в Smarty переменную
// или прям здесь сформировать нужные блоки
// В моем случае формируются два блока, по которым ссылки распределяются равномерно

for ($i=0$i<count($sapelinks['links']); $i++) {
  if (
$i == 0) {
    
$sapelinks['block1'][] = $sapelinks['links'][$i];
  } else {
    
$sapelinks['block2'][] = $sapelinks['links'][$i];
  }
}
$sapelinks['block1'] = implode('<br/>'$sapelinks['block1']);
$sapelinks['block2'] = implode('<br/>'$sapelinks['block2']);

$GLOBALS['sapelinks'] = $sapelinks

Надеюсь, кому-нибудь пригодится
Stutzer вне форума   Ответить с цитированием
Старый 19.11.2007, 21:07   #7
Администратор
 
Аватар для Ank
 
Регистрация: 05.02.2007
Сообщений: 18,405
Вес репутации: 714
Ank - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущееAnk - прекрасное будущее
По умолчанию

на выходе что будем иметь? Лень было вникать в код. Но если будем иметь подмененный разделитель - будут ерроры.
__________________
Начать зарабатывать на своих сайтах. Консультирую своих рефов по аське

Читаем ФАК
Ank вне форума   Ответить с цитированием
Старый 19.11.2007, 21:18   #8
Новичок
 
Аватар для Stutzer
 
Регистрация: 26.10.2007
Сообщений: 50
Вес репутации: 201
Stutzer на пути к лучшему
Отправить сообщение для Stutzer с помощью ICQ
По умолчанию

на выходе будем иметь массив оригинальных ссылок. или готовые блоки с ссылками.
Проверено на 2х сайтах. На одном пришлось так сделать, т.к. хотелось вывести ссылки в виде списка
<li>ссылка</li>
...
на втором не получалось разбить на блоки стандартным средством - решил использовать этот же трюк.

А суть вкратце такая:
сапа возвращает ссылки в виде:
СсылкаРаделительСсылкаРазделительСсылка

с помошью функции explode(разделитель, строка) формируем из того, что нам возвращает $sape->links массив и выводим ссылки как душе угодно. Сами ссылки и околоссылочные тексты при этом не изменяются.

Последний раз редактировалось Stutzer; 19.11.2007 в 21:20.
Stutzer вне форума   Ответить с цитированием
Старый 20.11.2007, 08:37   #9
Злой модератор
 
Аватар для Wink
 
Регистрация: 25.03.2007
Адрес: Deep forest
Сообщений: 5,343
Вес репутации: 502
Wink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущееWink - прекрасное будущее
По умолчанию

Цитата:
Сообщение от Ank Посмотреть сообщение
Но если будем иметь подмененный разделитель - будут ерроры.
Не будут. У меня разделитель, установленный в панели вебмастера, вообще на картинку меняется и всё в порядке. Разделители не проверяются.
Wink вне форума   Ответить с цитированием
Старый 20.11.2007, 09:20   #10
Мастер
 
Регистрация: 20.07.2007
Адрес: Нижний Новгород
Сообщений: 867
Вес репутации: 227
leszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личностьleszkin - просто великолепная личность
По умолчанию

Цитата:
Сообщение от Ank Посмотреть сообщение
Но если будем иметь подмененный разделитель - будут ерроры.
не, точно не будут. у меня на одной площадке в 2-х блоках выводятся с резделителем <li>, а вот в футере этот разделитель меняется на |
leszkin вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Распределение страниц при продаже ссылок shadx Ошибки при работе с системой 5 26.06.2008 16:06
Категории ссылок с разным количеством символов spaider Пожелания пользователей системы 1 20.03.2008 10:56
Даёшь равномерное распределение ссылок по местам! stanbert Пожелания пользователей системы 1 10.12.2007 20:09
Cайт написан на HTML. Как распределить ссылки по разным местам страницы? pskov Вопросы по работе системы 4 05.12.2007 20:10
Распределение ссылок на движках Manager Вопросы по работе системы 11 03.10.2007 15:54


Часовой пояс GMT +3, время: 18:12.