Помощь Вставка PHP кода через CKeditor

Тема в разделе "Opencart", создана пользователем GopStop, 18 май 2015.

Информация :
Внимание форумчане! При создании тем, или выкладывании какой-либо информации проверьте в какой ветке форума вы находитесь! Не путайте Opencart и Opencart2. При несоблюдении данного условия выносится соответствующее наказание! И потом не говорите что вас НЕ ПРЕДУПРЕЖДАЛИ! По возможности используйте обменники mail, yandex, google, dropbox, rghost Дабы избежать просьб перезалить и проблем с рекламой!
Модераторы: ZiX
  1. GopStop

    GopStop :nulled:

    Регистр.:
    20 ноя 2007
    Сообщения:
    140
    Симпатии:
    100
    Требуется возможность вставки PHP кода через CKeditor, для вывода плюшек в статьях и целевых страницах.
     
  2. Dj-Tiesto

    Dj-Tiesto Стероид

    Регистр.:
    19 авг 2010
    Сообщения:
    271
    Симпатии:
    88
     
  3. GopStop

    GopStop :nulled:

    Регистр.:
    20 ноя 2007
    Сообщения:
    140
    Симпатии:
    100
    Оно тоже не справилось. Возможно кто-то знает способ вставки пхп кода в статью, не обязательно через ЦКэдитор?
     
  4. bezzubtsev

    bezzubtsev

    Регистр.:
    14 май 2015
    Сообщения:
    256
    Симпатии:
    75
    В статье пишите код как обычно, только начальный и закрывающий теги меняете на эти:
    Код:
    <phpcode> echo time(); </phpcode>
    Вместо echo time(); - ваш код.
    Не правильно писать так:
    Код:
    <phpcode><?php echo time(); ?></phpcode>
    Далее, идём в tpl файл, который отвечает за вывод статьи - обычно это тут:
    catalog/view/theme/default/template/information/information.tpl

    Вместо этого:
    Код:
    <?php echo $description; ?>
    Вставляем что-то по типу такого:
    Код:
    echo run_php($text_from_db);
    Плюс надо прописать скрипт
    Код:
    function run_php($description)
    {
       $pattern = '#<phpcode>(.*)</phpcode>#i';
       preg_match($pattern, $description, $matches, PREG_OFFSET_CAPTURE, 3);
       $code=$matches[1][0];
       ob_start();
       eval($code);
       $replacement .= ob_get_clean();
       return  preg_replace($pattern, $replacement, $description);
    }
    Логика такая - ваш код не будет резаться редактором, а на сайте скрипт сделает своё дело и выполнить PHP код.
     
    Vasyanya нравится это.
  5. GopStop

    GopStop :nulled:

    Регистр.:
    20 ноя 2007
    Сообщения:
    140
    Симпатии:
    100
    А куда нужно прописать этот скрипт?
     
  6. GopStop

    GopStop :nulled:

    Регистр.:
    20 ноя 2007
    Сообщения:
    140
    Симпатии:
    100
    Очень нуждаюсь в помощи по данному вопросу.
     
  7. Arnina

    Arnina Писатель

    Регистр.:
    13 ноя 2015
    Сообщения:
    3
    Симпатии:
    0
    редактор движка UMI автоматом заменяет <phpcode> на <p> и соответственно </phpcode> на </p>....