Забыли пароль?
Запросите новый здесь.

Автор темы: Vveb--ws
ID темы: 2994
Информация:
Тема содержит 10 сообщения, была просмотрена 16845 раз.
Просмотр темы
PHP-Fusion Russia » Поддержка 7 версии » Пожелания и предложения
 Распечатать тему
Если есть ошибка в теме или панели PHP-Fusion то мы часто видим белый экран
Vveb--ws
В php fusion есть такой гемор что если есть ошибка в теме или панели то мы часто видим белый экран.
выводимые данные вносятся в переменные и в кеш,

например в /themes/templates/panels.php дифайнятся блоки панелей
define("U_CENTER", ob_get_contents() );
ob_end_clean();

в /themes/templates/footer.php дифайнится CONTENT
define("CONTENT", ob_get_contents());
ob_end_clean();



а из него в /themes/templates/footer.php выводятся все сразу.

$output = ob_get_contents();
ob_end_clean();
echo handle_output($output);


очень хотелось бы сделать чтобы данные выводились по кускам. то есть было бы видно хоть что-то что работает. хотя бы шапка head



в основных файлах CMS (типа articles.php) можно сделать add_to_head() и add_to_title() до
require_once THEMES."templates/header.php";

чтобы в /themes/templates/header.php
после инклюда
require_once INCLUDES."output_handling_include.php";
require_once INCLUDES."header_includes.php";
require_once THEME."theme.php";

можно тбыло вывести <head> отдельно.

но проблема в том что по всему PHP-Fusion разбросаны функции add_to_head() которыми добавляются кастомные css и js, а кое где есть ещё add_to_meta(), add_to_title(), set_title()

то есть надо выводить в /themes/templates/header.php
минимум после
require_once THEMES."templates/panels.php";

то есть в самом конце

но ещё в /themes/templates/footer.php есть функция
render_page(false);

и в файлах тем тоже есть add_to_meta(), add_to_title(), set_title()
а это самый конец вывода. хотелось бы вывести что-то раньше

какие есть мысли ?
Изменил(а) Vveb--ws, 02.08.2018 19:13

PHP-Fusion 7 Bogatyr - бесплатная мультиязычная CMS для блога, форума, фотогалереи

vk.com/phpfusion
Создаю интернет-магазины и блоги, лендинги, форумы. Telegram: t.me/Vova_Kazakov
 
Web
Polarfox
если ошибка когда отлаживаешь - включай вывод ошибок, если нет - так лучше.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Vveb--ws
если б люди знали где включать то включали бы.

я вот не знаю.

PHP-Fusion 7 Bogatyr - бесплатная мультиязычная CMS для блога, форума, фотогалереи

vk.com/phpfusion
Создаю интернет-магазины и блоги, лендинги, форумы. Telegram: t.me/Vova_Kazakov
 
Web
jikaka
Vveb--ws написал:

если б люди знали где включать то включали бы.

я вот не знаю.


Включение вывода всех ошибок и предупреждений в файле .htaccess
php_value display_errors 1
php_value display_startup_errors 1
php_value error_reporting E_ALL
x1
 
Web
Polarfox
Оффтопик извиняй это оффтоп, но как ты делаешь свою суперкмс если не имеешь представления как ловить фатальные ошибки?

Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Vveb--ws
Polarfox а *** толку что ты всё знаешь но неделаешь нужный сборник ?
предупреждение за мат, мы люди вежливые, если помнишь, тебе теперь придется тоже быть вежливым.

Изменил(а) Polarfox, 10.08.2018 17:17

PHP-Fusion 7 Bogatyr - бесплатная мультиязычная CMS для блога, форума, фотогалереи

vk.com/phpfusion
Создаю интернет-магазины и блоги, лендинги, форумы. Telegram: t.me/Vova_Kazakov
 
Web
Polarfox
Потому что сборник это когда много хлама, а я предоставляю выбор, да и людям вообще хлам не нужен (сюрприз!).

Людям нужно решение их конкретных задач, которые ОЧЕНЬ сильно отличаются от неких "общих" задач.

Попробуй побольше внимания уделять ошибкам (ну и обучению, чтоб знать как из белых экранов сделать фатальные исключения, еще и со всеми вызовами например php.net/manual/ru...ktrace.php )
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Vveb--ws
людям нужен совершенный дефолтный вариант без поиска нужных модов и плагинов и правки старых версий.

чтобы установил и можно было СРАЗУ наполнять блог или форум.

PHP-Fusion 7 Bogatyr - бесплатная мультиязычная CMS для блога, форума, фотогалереи

vk.com/phpfusion
Создаю интернет-магазины и блоги, лендинги, форумы. Telegram: t.me/Vova_Kazakov
 
Web
Polarfox
в 7 блога нет по дефу, в 9 есть, так что выбор очевиден.
опять же смотря какой блог - вп чистый блог, а какой нить зенфоро чистый форум, каждый берет то что подходит, еще раз напомню.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Vveb--ws
jikaka написал:

Включение вывода всех ошибок и предупреждений в файле .htaccess
php_value display_errors 1
php_value display_startup_errors 1
php_value error_reporting E_ALL


прикол в том что вкючать и выключать вывод ошибок на хостинге в CPANEL или в HTACCESS неудобно так как ошибки должны быть видны всегда и только админу.
Скачать исходники  Код
if (iADMIN) {
...
}




нужен код на PHP чтобы проверять админ ли это и только тогда выводить ошибки CMS
https://www.php.net/manual/ru/function.error-reporting.php
Примеры использования error_reporting()
Скачать исходники  Код
// Выключение протоколирования ошибок
error_reporting(0);

// Включать в отчет простые описания ошибок
error_reporting(E_ERROR | E_WARNING | E_PARSE);

// Включать в отчет E_NOTICE сообщения (добавятся сообщения о
// непроинициализированных переменных или ошибках в именах переменных)
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

// Добавлять сообщения обо всех ошибках, кроме E_NOTICE
error_reporting(E_ALL & ~E_NOTICE);

// Добавлять в отчет все ошибки PHP (см. список изменений)
error_reporting(E_ALL);

// Добавлять в отчет все ошибки PHP
error_reporting(-1);

// То же, что и error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);




посоветуйте как вы пишите обычно и как лучше вписать в CMS по дефолту


допустим в wp-config.php так
Скачать исходники  Код
/**
 * Для разработчиков: Режим отладки WordPress.
 *
 * Измените это значение на true, чтобы включить отображение уведомлений при разработке.
 * Разработчикам плагинов и тем настоятельно рекомендуется использовать WP_DEBUG
 * в своём рабочем окружении.
 */
define('WP_DEBUG', false);



но я не знаю как там работает и только ли для админа. может вы знаете

Объединено 21.10.2019 12:29:
может быть даже сделать SUPERADMIN_IP в config.php чтобы показывать ошибки сайта админу без необходимости входить на сайт
Изменил(а) Vveb--ws, 21.10.2019 09:29

PHP-Fusion 7 Bogatyr - бесплатная мультиязычная CMS для блога, форума, фотогалереи

vk.com/phpfusion
Создаю интернет-магазины и блоги, лендинги, форумы. Telegram: t.me/Vova_Kazakov
 
Web

Поделиться этой темой
Социальные закладки: Vkontakte Odnoklassniki Mail.ru Facebook Google Tweet This
URL:
BBcode:
HTML:

Перейти на форум: