Внедрение одного скрипта в другой (в дизайн)

Статус
В этой теме нельзя размещать новые ответы.

o_nix

Хранитель порядка
Регистрация
7 Ноя 2007
Сообщения
1.070
Реакции
1.063
Долго искал движок удовлетворяющий моим запросам
но не нашёл такой. Зато нашёл два отдельных движка в каждом из которых есть отлично работающая нужная мне часть.

В общих чертах это скрипт портала который установлен в корне домена и скрипт каталога который установлен во вложенную директорию тогоже домена.

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

Шаблоны портала поддерживают вставки php кода

пока единственное что хоть както работает это вставка в нужное место шаблона портала
PHP:
<?php
$homepage = file_get_contents('http://sete.ru/catalog/index.php');
echo $homepage;
?>
Получается я сам себя парсю и потом вывожу :D
но при этом вероятно придётся переработать весь скрипт каталога тк он выдаёт пути site.ru/script.php а должен выдавать site.ru/catalog/script.php

<? include ("./catalog/index.php"); ?> - не срабатывает, скрипт каталога если его запускать в cgi режиме без апача выдаёт пустоту (500 ошибку)

iframe не подходит

Повторять полностью дизайн портала приминительно к каталогу трудоёмкая задача, не уверен что она правильная тк сделать динамику меню портала наверняка не получится.

В общем делаю подобное впервые, подскажите пожалуйста самый правильный и цивилизованный способ внедрить каталог в портал ...
 
возможно, в вашем случае сможет помочь RSS - при условии что каталог умеет отдавать фиды...
 
нет rss тоже не подойдёт
каталог интерактивен для пользоватей сортировка поиск и всё такое
Вероятно это через попу но пока додумался сделать только вот так :D
PHP:
<?php 
$homepage = file_get_contents('http://sete.ru/catalog/index.php');
$homepage = str_replace('href="', 'href="catalog/', $homepage); 
echo $homepage; 
?>

но опятьтаки нет внедрения в дизайн, при переходе по любой ссылке каталога - попадаеш в каталог а надо в каталог "обрамлённый" меню шапкой и подвалом портала

приходят мысли сделать тоже самое парсинг уже портала замена лишнего и всавка контента каталога.
ужас какойто :D

Цивилизованние чтонибудь может быть ??
 
Ну а как ты хотел?) тут в любом случае через жопу получится.
ну можно сделать например переменную, которая будет отвечать за url который послыается к каталогу.

то есть пишем на портале ?catalog=page1/
и портал загружается не главную странцу каталога а урл_каталога/page1/

также заменяем на эту херовину все ссылки каталога, чтобы они сначала перевеодили человека на портал, который загружал нужную страницу

теперь есть проблема с POST запросами. решаем ее:
при формировании урлу к каталогу делаем скрипт который либо:
а. отправляет пост запрос каталогу(через headers)
б. либо собирает пост запрос в строку(через serialize например), передает через get запрос каталогу, который снова делает из гета пост(можно в главном скрипте каталога это вначале кода сделать)
 
Цивилизованние чтонибудь может быть ??
Цивилизованно можно сделать 2-мя способами-
1) дописать каталог, чтобы просто использовал одну базу, но жил в отдельно
2) сделать мост, который разными методами получит информацию о нужной странице и загонит в новый дизайн. способ реализации моста зависит от реализации каталога- можно через file_get_contents, если вывод страницы идёт в разнобой, если используется шаблонизатор- можно через него все переменные вывести через мост в новый диз (или попытаться хотябы)
 
TheGp
header имеется ввиду это ?
PHP:
<?php 
header("Location: http://site.ru/catalog");
exit; 
?>
я так понимаю это управление браузером без возможности для пользователя что либо сделать?? Как к этому боты поисковиков отнесуться ?? И будут ли индексировать это?

KillDead
1) ну в принципе чтобы всё жило отдельно в одной базе ничего даже переписывать не придётся. Названия таблиц разные - уже думаю не морочить себе голову а оставить каталог во вложенной папке либо поставить его на поддомен. Скопировать статику портала по минимуму и перелинковать.
Минус динамики совсем нестанет :(

б, оноже 2, и оноже то что я "наделал" как я понимаю :D

В движке каталога шаблоны смарти, в движке портала непойму что - переменные в шаблоне выглядят как *phone*
как объеденить эти два вывода абсолютно разных шаблонизаторов в единое цело чесно говоря не понимаю.

Вариант с file_get_contents мне хотябы полностью понятен. Плюс в том что останется динамика портала от имени незарегистрированного пользователя.

В общем пробую мучать file_get_contents, неполучится поставлю на поддомен.

Если у когото будут ещё какието хорошие мысли по сабжу пишите :D
 
Если у когото будут ещё какието хорошие мысли по сабжу пишите
в принципе, кроме интеграции и прочего, нужно так и делать -
в каталоге, убрать весь дизайн (всякие css, шапку и прочее), чтобы он отдавал только блок, который нужно от него. Там же и поменять урл сайта на нужный. Можно это даже сделать через ajax, но поисковики не будут рады.
 
ajax - это былобы самым гибким вариантом но его я сразу отмёл,
индексация очень нужна.

делаю сейчас какраз так с обрезанием всего лишнего и пристройкой нужного :D

проблема вот только index.php файл каталога неработает без htaacces из корня, тоесть получается что мне нужно работать только с этим index.php нельзя сделать его урезаный клон для вывода нужных блоков.

такчто получается что крамсать нужно дважды
1. парсим портал из скрипта каталога лепим нужное всё выводим
2. скрипт портала парсит вывод каталога (с уже прилепленным дизайном портала) после чего от него отрезается портал и встраивается в текущий диз и динамику портала :D

есть ощущение что уже при 10-15 пользователях онлайн такой подход убьёт впэску :(
а уж если боты гугла налетят то темболее.

проблемму решилабы возможность юзать скрипт каталога в cgi, сделать из него просто модуль портала тогда можно - но вероятно это просто невозможно там завязка с апачем
 
есть ощущение что уже при 10-15 пользователях онлайн такой подход убьёт впэску :(
а уж если боты гугла налетят то темболее.
Зависит от способа реализации этой самой Кромсалки (сомневаюсь, что данных будет очень много, так что скрипт, если нет явных ошибок, быстро сгенерится и не нагрузит серв) и самих скриптов- тут получается что мы запускаем весма нагруженный сайт. Получается что-то типа джумлы или друпала, в жёствком исполнении.
Как хороший вариант- кешировать данные от каталога.
проблемму решилабы возможность юзать скрипт каталога в cgi, сделать из него просто модуль портала тогда можно - но вероятно это просто невозможно там завязка с апачем
я хз что там за адская связка с апачем) если ошибка 500- это ещё ничего не значит, мож он просто не в ASCII залит
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху