Перейти к публикации

Рекомендованные сообщения

Доброго дня. Вопрос к спецам. Перкопал интернет, но внятного ответа так и не нашел. Возможно ли вставить пхп в тело новости(подчеркну - не в шаблон и не статические страницы!), или инклюдить его. Скрипт элементарный - выводит текстовую фразу, которая по задумке должна располагаться в нужном месте новости. Перепробовал кучу вариантов- не пашут, может от версии зависит...Выручайте, не знаю что делать :(

Ссылка на сообщение
Поделиться на других сайтах

Скрипт элементарный - выводит текстовую фразу

Такую ерунду лучше тогда сразу сформировать в php, а в шаб готовый результат вывести, зачем дыры открывать? :lol:

Самый простой вариант:

1. Вариант.

Открыть /index.php, найти:

$tpl->compile('main');
Выше добавить:
$tpl->set('{bla-bla}','бла-бла');

В main.tpl в любое место вставить: {bla-bla}

2. Вариант.

Залить файл bla-bla.php в папку /engine/modules/

В main.tpl в любое место вставить: {include file="engine/modules/bla-bla.php}

Изменено пользователем zgr
Ссылка на сообщение
Поделиться на других сайтах

Как я уже написал выше(в скобках), фразу нужно вывести в тексте(!) новости - не в шаблоне, даже если для этого использовать fullstory.tpl - тоже не выход, т.к. текст будет всегда выводиться в одном месте, но он нужен не во всех новостях. <news_text><?php...?><continue_news_text/>

Ссылка на сообщение
Поделиться на других сайтах

А... понял, ну, можно и внутри новости, в самом теле вытащить текст.

Укажите ссылку на сайт, если Целсофт одобрит, я вам напишу, как это можно сделать.

Ссылка на сообщение
Поделиться на других сайтах

Ссылку дать не могу, т.к. ковыряю демку на денвере, никогда с DLE не работал, а функция эта нужна принципиально, без нее нет смысла дальше что-то делать. Вообще-то мне ближе wordpress, где эта проблема решается простой установкой плагина, но DLE больше подходит для решения задачи, и если данный материал находится в режиме строгой секретности B) , буду копать дальше сам.

Я, правда, нашел один способ запуска пхп в любом месте, посредством java, но чесно гря, через *опу. В main.tpl вставляется вот енто чудо:


<script>

function clientSideInclude(id, url) {

    var req = false;

    if (window.XMLHttpRequest) 

    {

        try 

        {

            req = new XMLHttpRequest();

        }

        catch (e) 

        {

            req = false;

        }

    }

    else if (window.ActiveXObject) 

    {

        try

        {

            req = new ActiveXObject("Msxml2.XMLHTTP");

        }

        catch (e) 

        {

            try 

            {

                req = new ActiveXObject("Microsoft.XMLHTTP");

            }

            catch (e)

            {

                req = false;

            }

        }

    }

    var element = document.getElementById(id);

    if (!element)

    {

        alert("Bad id " + id + "passed to clientSideInclude. You need a div or span element with this id in your page.");

        return;

    }

    if (req)

    {

        req.open('GET', url, false);

        req.send(null);

        element.parentNode.innerHTML = req.responseText;

    }

    else

    {

        element.innerHTML ="Sorry, your browser does not support XMLHTTPRequest objects. 

This page requires Internet Explorer 5 or better for Windows, or Firefox for any system, or Safari. 

Other compatible browsers may also exist.";

    }

}

</script>

Затем тег <body> меняем, и указываем путь к файлу

<body onload="clientSideInclude('file', '/file.php');">

И вуаля, вставляем <span id="file"></span> в любом месте страницы или новости.

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

Ссылка на сообщение
Поделиться на других сайтах

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

в демоверсии исходный код скрипта закрыт, и сделать это невозможно, т.к. невозможно редактировать код скрипта

Ссылка на сообщение
Поделиться на других сайтах

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

Для этого нужно как минимум купить скрипт. :P

Ссылка на сообщение
Поделиться на других сайтах

Как я понимаю, намек, покупай, тогда расскажем? Судя по тому, что я перерыл кучи инфы в нете, нет намека на решение, подозреваю, что я увижу не то, что ожидаю. Кота в мешке как-то не хочется.

Ссылка на сообщение
Поделиться на других сайтах

Как я понимаю, намек, покупай, тогда расскажем?

Нет. Это констатация фактов, что на демоверсии этого сделать нельзя впринципе, т.к. код закрыт, а на платной вам придеться переписывать скрипт, уничтожив всю его систему безопасности. А вовсе не намек на то чтобы вы покупали и вам расскажут как удалить всю систему безопасности скрипта. Добавление PHP в новостях, а это абсолютная угроза всему сайту.

Ссылка на сообщение
Поделиться на других сайтах

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

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...