Модифікатори «var_mode» або «var_profile» застосовуються шляхом додання коду ?var_mode=...
(наприклад: titre-de-rubrique-?var_mode=...
) або &var_mode=...
(наприклад: spip.php?article3&var_mode=...
) в кінець URL-адреси сторінки, яка викликається.
Їх застосування буде працювати, тільки якщо ви увійшли на сайт як один з адміністраторів.
var_mode=calcul
і
var_mode=recalcul
Виклик сторінки з «var_mode=calcul» оновлює HTML код (викликає вже скомпільований код) і освіжає кеш (створює HTML-файли, які потрібно буде просто прочитати, коли відбудеться наступний виклик цієї сторінки).
Виклик сторінки з «var_mode=recalcul» відновлює код PHP (виконує нову компіляцію шаблону), а також регенерує HTML код (запускає виконання коду, який тільки що був скомпільований), а потім освіжає кеш (створює HTML файли, які будуть читатися при наступному виклику цієї сторінки).
recalcul також відновлює стислий CSS і скрипти JavaScript.
recalcul не застосовується до зображень (віньєтки / мініатюри, текстові зображення, ...).
Будь-який з цих двох викликів може бути виконаний за допомогою натискання на одну з кнопок управління, які показуються на загальнодоступній сторінці, коли ви увійшли в систему в якості адміністратора;
перше клацання викликає «var_mode=calcul» (якщо назва цієї кнопки супроводжується зірочкою, це означає, що відображається сторінка, яку було прочитано з кешу);
друге клацання викликає оновлення з «var_mode=recalcul».
Увага: у вас може виникнути спокуса використовуватиvar_mode=recalcul
для посилань усередині ваших шаблонів (наприклад, щоб примусово оновити CSS або JavaScript зміст). Це дуже погана практика, яку ви повинні уникати, оскільки це споживає значні ресурси сервера (викликає постійне повторне складання шаблону).
var_mode=inclure
Виклик сторінки з «var_mode=inclure» відображає ім’я і шлях кожного суб-компонента (inclure/include код або SPIP модель), який є на сторінці.
Це дозволяє перевірити, що саме насправді включає шаблон сторінки, чи дійсно це ті елементи, які були вказані, показуючи повний шлях до кожного включеного файлу. Це особливо важливо, якщо ви перевантажуєте (тобто замінюєте своїми) будь-які стандартні або створені плагінами моделі,
var_profile=1
Виклик сторінки з «var_profile=1» відображає деталі всіх SQL запитів і час розрахунку, пов’язаний з кожним з них. Запити упорядковано від найбільш трудомістких до менш затратних.
Ця функція особливо корисна, щоб знайти причини, які можуть уповільнювати відображення сторінок.
Це дозволяє переглядати запити SQL, згенеровані кожним цикломв шаблоні (у тому числі будь-яких включених шаблонів або моделей), а також будь-яким з циклів запитів (позначених як «Uncompiled»), сгенерованих SPIP.
Це покаже:
- для кожного циклу
- скільки разів цикл (і, отже, SQL запит) був виконаний,
- час (у секундах), використаний циклом (тобто час, потрібний на виконання відповідного запиту, помножений на кількість виконань циклу),
- список (в хронологічному порядку всіх запитів, що генеруються сторінкою) всіх виконаннь запитів (який забезпечує зв’язок з докладною інформацією про кожний запит).
- uncompiled запити
- загальний час, витрачений на всі запити на сторінці
- деталі кожного виконання запиту з
- статистичною таблицею, що показує план виконання запиту,
- назвою запиту.
Увага: не забудьте обчислити сторінку з&var_profile=1&var_mode=calcul
, щоб уникнути читання її з кешу, що може викликати відображення помилкових результатів.
var_mode=preview
Виклик сторінки з «var_mode=preview» з адміністративної частини використовується для перегляду статті, яку було «запропоновано для публікації», без фактичної публікації її на загальнодоступному сайті.
var_mode=urls
Виклик сторінки з «var_mode=urls» примусово оновлює всі URL-адреси на цій сторінці.
var_mode=debug
Виклик сторінки з «var_mode=debug» деталізує генерацію сторінки (SPIP цикли - SQL запити - PHP код - статистика запитів SQL).
Ця сторінка показує інформацію для головного файлу шаблону, а також для будь-яких включених файлів шаблонів:
- список значень контекстних змінних оточення (#ENV), прийнятих {} викликає шаблонуthe list of values of the environment context variables (#ENV) passed by the calling template,
- список циклів.
Різні посилання можуть бути використані для доступу:
- шаблон
текст коду шаблону (тим самим зникає необхідність мати прямий доступ до .html файлу, щоб прочитати його вміст),- результати
код, сгенерований шаблоном (усі можливі включення), який одразу, як тільки evaluated, повертає HTML в браузер, - код
код PHP сгенерований компілятором (аналіз, призначений здебільшого для розробників основного коду), який при виконанні, буде генерувати результати (див. вище) - розрахунки
деталі SQL запитів і для кожного з них час виконання (див. вищеvar_profile
).
- результати
- boucle (цикл)
текст коду всього циклу (від<B_abc>
до<//B_abc>
),- results (результати)
SQL-запити, сгенеровані даним циклом,
список перших результатів, які повертаються цим запитом [1], - code (код)
код PHP (генерується компілятором) для конкретної функції, пов’язаної з цим циклом (аналіз в основному зарезервований для експертів - розробників основного коду), - calcul (розрахунки)
деталі і час розрахунків для запиту SQL, пов’язаного з цим циклом (див. вищеvar_profile
).
- results (результати)
Отримання ще більшої інформації для налагодження
- Відключіть кеш SPIP, додавши такий рядок в файл config/mes_options.php:
define('_NO_CACHE', -1);
- Активуйте PHP повідомлення про помилки, додавши цей код в config/mes_options.php:
error_reporting(E_ALL^E_NOTICE);
ini_set ("display_errors", "On");
define('SPIP_ERREUR_REPORT', E_ALL^E_NOTICE);
define('SPIP_ERREUR_REPORT_INCLUDE_PLUGINS', E_ALL^E_NOTICE);