Форум SAPE.RU

Форум SAPE.RU (http://forum.sape.ru/index.php)
-   Контекстные ссылки и все, что с ними связано (http://forum.sape.ru/forumdisplay.php?f=28)
-   -   Ссылки в разных местах на ssi (http://forum.sape.ru/showthread.php?t=9729)

homa 04.03.2008 12:38

Ссылки в разных местах на ssi
 
Сайт собирается из четырёх частей на ssi: сама страница, левая часть, верхняя часть и "подвал". Поставил код в файл sape1.php, а на страницах везде в нужном месте <!--#include virtual="/sape1.php"--> Всё работает, но ссылки одним блоком, конечно.

А реально ли сделать, чтобы ссылки отображались в разных местах, но так: в левой части 3 штуки, в подвале 3, на самой странице 2. Уже всё перепробовал - не получается. Может, что-то не так делаю?

Т. е. можно ли на shtml-страницах разместить ссылки по разным местам? Подскажите, пожалуйста.

Wink 04.03.2008 14:45

Подсказываю. Можно, если изменить функцию return_links() и использовать не один файл с кодом а три.

homa 04.03.2008 14:56

Цитата:

Сообщение от Wink (Сообщение 96424)
Подсказываю. Можно, если изменить функцию return_links() и использовать не один файл с кодом а три.

:D Спасибо, конечно, но мне нужно, чтобы ссылки показывались в разных местах сайта, а не чтобы я только знал, что это сделать можно. :)

В FAQ про это ни слова. Может, кто-нибудь воплощал в жизнь эту фичу и подскажет, как конкретно это сделать?

zhegloff 04.03.2008 15:18

Цитата:

Сообщение от homa (Сообщение 96429)
:D Спасибо, конечно, но мне нужно, чтобы ссылки показывались в разных местах сайта, а не чтобы я только знал, что это сделать можно. :)

В FAQ про это ни слова. Может, кто-нибудь воплощал в жизнь эту фичу и подскажет, как конкретно это сделать?

На ssi насколько я понимаю это можно седлать только тремя последовательными вызовами кода.

То есть в одном месте вызывается код выводим sape1.php, в котором что то типа этого:

Цитата:

<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', '');
}
require_once(
$_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client();
echo $sape->return_links(2);
?>
Во втором выводим sape2.php, в котором что то типа этого:

Цитата:

<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', '');
}
require_once(
$_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client();
$sape->return_links(2);
echo $sape->return_links(2);
?>
И в третьем выводим sape3.php, в котором что то типа этого:

Цитата:

<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', '');
}
require_once(
$_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client();
$sape->return_links(4);
echo $sape->return_links();
?>
Криво конечно и иногда могут быть показаны две одинаковые ссылки (когда линкс обновляется где то между вызовами кодов на одной странице).

homa 04.03.2008 18:23

Попробовал. Загрузил 3 файла: sape1.php, sape2.php, sape3.php

В каждый вписал код с указанием нужного количества выводимых ссылок. В 3 блока, из которых собирается сайт с помощью ssi, вписал соответственно <!--#include virtual="/sape1.php"-->, <!--#include virtual="/sape2.php"-->, <!--#include virtual="/sape3.php"-->

Результат - ноль. Т. е. не выводится ничего - ни ссылки, ни даже какой-либо код. Получается, что <!--#include virtual="/sape.php"--> работает только в основном блоке сайта (как у меня сделано сейчас), к которому с помощью SSI собираются другие части. Т. е. в основном блоке сайта уже и так стоят инклюды на другие собирающиеся куски <!--#include virtual="ssi/prava_down.html"--> и т. д. А я ещё в эти куски пробую вставить инклюд на файл sape.php. И выходит, что такой двойной инклюд не работает.

Хотя, может, я что-то не так делаю.... Не знаю.

irikut 08.04.2008 14:32

У вас просто вложенная директива <!--#include virtual...> не обрабатывается сервером. Это в настройках вашего сервера надо менять.
У меня была такая проблема тоже - админу объяснил суть - он что-то поправил - теперь все работает, делится на сколько нужно блоков как описано в инструкции по настройке.


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

Работает на vBulletin® версия 3.8.7.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
SAPE.RU — система купли-продажи ссылок с главных и внутренних страниц сайтов.