Искать  
 
   
1 из 2
1
php в статье веблога
Отправлено: 26 Май 2009 12:44 P.M.   [ Игнорировать ]
Новичок
Rank
Всего сообщений:  44
Зарегистрирован  2009-05-25

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

Профиль
 
 
Отправлено: 26 Май 2009 12:53 P.M.   [ Игнорировать ]   [ # 1 ]
Sr. Member
RankRankRankRank
Всего сообщений:  987
Зарегистрирован  2008-09-27

Расширение такое есть точно. Где-то видел, но помню где.

Профиль
 
 
Отправлено: 26 Май 2009 01:06 P.M.   [ Игнорировать ]   [ # 2 ]
Администратор
RankRankRankRank
Всего сообщений:  1354
Зарегистрирован  2008-01-02

я не пробовал, но, по идеи, если поставить в шаблоне где выводятся  записи, выполнение php на out, то должно выполняться и без расширений. При oute сначала отрабатываются все теги EE, а потом уже смотрится на php.

 Подпись 

booooring…

Профиль
 
 
Отправлено: 26 Май 2009 01:17 P.M.   [ Игнорировать ]   [ # 3 ]
Новичок
Rank
Всего сообщений:  44
Зарегистрирован  2009-05-25
Calm - 26 Май 2009 01:06 P.M.

я не пробовал, но, по идеи, если поставить в шаблоне где выводятся  записи, выполнение php на out, то должно выполняться и без расширений. При oute сначала отрабатываются все теги EE, а потом уже смотрится на php.

попробовал - не получается.
php код добавляю в поле статьи веблога, например в {body}, но на сайте вываливается код скрипта в виде текста

Профиль
 
 
Отправлено: 26 Май 2009 01:31 P.M.   [ Игнорировать ]   [ # 4 ]
Администратор
RankRankRankRank
Всего сообщений:  1354
Зарегистрирован  2008-01-02

а в каком виде вываливается вы смотрели? Возможно он просто преобразуется в процессе публикации - проверти что стоит в допустимых символах для публикаций.

 Подпись 

booooring…

Профиль
 
 
Отправлено: 26 Май 2009 01:37 P.M.   [ Игнорировать ]   [ # 5 ]
Новичок
Rank
Всего сообщений:  44
Зарегистрирован  2009-05-25
Calm - 26 Май 2009 01:31 P.M.

а в каком виде вываливается вы смотрели? Возможно он просто преобразуется в процессе публикации - проверти что стоит в допустимых символах для публикаций.

вываливается в таком же виде как сам листинг
<?php
......

?>

что стоит в допустимых символах для публикаций - подскажите пожалуйста где это

Профиль
 
 
Отправлено: 26 Май 2009 01:43 P.M.   [ Игнорировать ]   [ # 6 ]
Администратор
RankRankRankRank
Всего сообщений:  1354
Зарегистрирован  2008-01-02

то есть, прям так и отображается когда вы смотрите html код?
Главная  ›  Админ.  ›  Администрирование блогов  ›  Управление блогами  ›  Редактировать настройки блога  ›  Настройки публикаций в блоге  ›  HTML-форматирование в записях блога по умолчанию

 Подпись 

booooring…

Профиль
 
 
Отправлено: 26 Май 2009 01:49 P.M.   [ Игнорировать ]   [ # 7 ]
Новичок
Rank
Всего сообщений:  44
Зарегистрирован  2009-05-25
Calm - 26 Май 2009 01:43 P.M.

то есть, прям так и отображается когда вы смотрите html код?

упс ошибся в коде для примера вот что

<p><?<br />
// считываем текущее время</p>

<p>$start_time microtime();</p>

<
p>// разделяем секунды и миллисекунды (становятся значениями начальных ключей массива-списка)</p>

<p>$start_array explode(&#8221; &#8220;,$start_time);</p>

<p>// это и есть стартовое время</p>

<p>$start_time $start_array[1] $start_array[0];</p

upd скопировал сюда код, но тут он нормально отображается

Calm - 26 Май 2009 01:43 P.M.

Главная  ›  Админ.  ›  Администрирование блогов  ›  Управление блогами  ›  Редактировать настройки блога  ›  Настройки публикаций в блоге  ›  HTML-форматирование в записях блога по умолчанию

там стоит allow all html

Профиль
 
 
Отправлено: 26 Май 2009 01:50 P.M.   [ Игнорировать ]   [ # 8 ]
Администратор
RankRankRankRank
Всего сообщений:  1354
Зарегистрирован  2008-01-02

А так-то код работает, если вы его в том виде в котором пишете в поле, впишите в шаблон???

 Подпись 

booooring…

Профиль
 
 
Отправлено: 26 Май 2009 01:56 P.M.   [ Игнорировать ]   [ # 9 ]
Новичок
Rank
Всего сообщений:  44
Зарегистрирован  2009-05-25
Calm - 26 Май 2009 01:50 P.M.

А так-то код работает, если вы его в том виде в котором пишете в поле, впишите в шаблон???

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

Профиль
 
 
Отправлено: 26 Май 2009 02:01 P.M.   [ Игнорировать ]   [ # 10 ]
Администратор
RankRankRankRank
Всего сообщений:  1354
Зарегистрирован  2008-01-02

пользуйтесь тегом code для того что бы можно было сразу понять smile

Так, теперь хотя бы понятно, почему не работает. Версия EE какая?

 Подпись 

booooring…

Профиль
 
 
Отправлено: 26 Май 2009 02:12 P.M.   [ Игнорировать ]   [ # 11 ]
Новичок
Rank
Всего сообщений:  44
Зарегистрирован  2009-05-25
Calm - 26 Май 2009 02:01 P.M.

пользуйтесь тегом code для того что бы можно было сразу понять smile


Так, теперь хотя бы понятно, почему не работает. Версия EE какая?

Спасибо smile Обновил все странички в сооветствием с разными типами форматирования полей. вот что вышло:
Это то что выдаёт с xhtml форматированием

<p><?<br />
// считываем текущее время</p>

<p>$start_time microtime();</p>

<
p>// разделяем секунды и миллисекунды (становятся значениями начальных ключей массива-списка)</p>

<p>$start_array explode(&#8221; &#8220;,$start_time);</p>

<p>// это и есть стартовое время</p>

<p>$start_time $start_array[1] $start_array[0];</p>

<
p>?> </p>

<
p><br />
<?<br /> 

это то что выдаёт без xhtml форматирования

<?
// считываем текущее время

$start_time microtime();

// разделяем секунды и миллисекунды (становятся значениями начальных ключей массива-списка)

$start_array explode(" ",$start_time);

// это и есть стартовое время

$start_time $start_array[1] $start_array[0];

?> 


<? 

только без форматирования вместо < выдаёт

.... не получается даже с тегом code .... в общем значок амперсандlt
и вместо вместо > выдаёт  амперсандgt
версия 1.6.7

Профиль
 
 
Отправлено: 26 Май 2009 02:52 P.M.   [ Игнорировать ]   [ # 12 ]
Администратор
RankRankRankRank
Всего сообщений:  1354
Зарегистрирован  2008-01-02

попробуйте необходимое поле включить в следующие теги:

{exp:xml_encode}
{your_field}
{
/exp:xml_encode} 
 Подпись 

booooring…

Профиль
 
 
Отправлено: 26 Май 2009 03:14 P.M.   [ Игнорировать ]   [ # 13 ]
Администратор
RankRankRankRank
Всего сообщений:  1354
Зарегистрирован  2008-01-02

причем, если не получиться так, тогда еще попробуйте вместо {your_field} весь блок  {exp:weblog}{/exp:weblog} туда поставить

 Подпись 

booooring…

Профиль
 
 
Отправлено: 26 Май 2009 04:19 P.M.   [ Игнорировать ]   [ # 14 ]
Новичок
Rank
Всего сообщений:  44
Зарегистрирован  2009-05-25
Calm - 26 Май 2009 03:14 P.M.

причем, если не получиться так, тогда еще попробуйте вместо {your_field} весь блок  {exp:weblog}{/exp:weblog} туда поставить

к сожалению не получается :(

Профиль
 
 
Отправлено: 26 Май 2009 06:08 P.M.   [ Игнорировать ]   [ # 15 ]
Администратор
RankRankRankRank
Всего сообщений:  1354
Зарегистрирован  2008-01-02

можно еще попробовать:
1. в сonfig.php добавить

$conf['protect_javascript''n'

2. взять плагин search&replace; и сделать замену ascii кода на >
3.  дальше уже только хакать ядро типографики.
У них это политика из-за политики безопасности(
Conditional Global Variable) и сложно с этим поспорить - разрешение подобных конструкций, это менее защищенная система. Вы уверены что ваши задачи нельзя решить другим способом?

то расширение, про которое говорил maximus007, это скорей всего preparse.

p.s. на всякий случай - у вас точно стоит в Главная  ›  Админ.  ›  Администрирование блогов  ›  Управление блогами  ›  Редактировать настройки блога  ›  Настройки публикаций в блоге  ›  HTML-форматирование в записях блога по умолчанию “разрешить весь html”?

 Подпись 

booooring…

Профиль
 
 
   
1 из 2
1