Когда пользователь получает страницу «Отказано в доступе», как вы можете использовать drupal_add_css для загрузки определенной таблицы стилей? Это возможно?Загрузить конкретную таблицу стилей в Access Denied
0
A
ответ
3
Это возможно. Следующий код может добавить файл CSS, когда Drupal возвращает страницу с запретом доступа.
Помните, что когда Drupal возвращает такую ошибку, URL-адрес, отображаемый в браузере, не изменяется; в примере, если я пытаюсь получить доступ к /admin/content
, и мне не разрешено обращаться к этой странице, отображаемый URL-адрес не изменяется. Вам нужно проверить вывод заголовков из Drupal, чтобы проверить, выводит ли он заголовок, запрещенный доступом.
function custom_module_preprocess_page(&$variables) {
if (preg_match('@HTTP/1\.[01]\x20+403[^a-zA-Z0-9]@', drupal_get_headers())) {
$variables['css'] = drupal_add_css($css_file_to_add);
$variables['styles'] = drupal_get_css();
}
}
Эквивалент для Drupal 7 следующий.
function custom_module_preprocess_page(&$variables) {
if (drupal_get_http_header('Status') == '403 Forbidden') {
$variables['css'] = drupal_add_css($css_file_to_add);
$variables['styles'] = drupal_get_css();
}
}
Этот же код можно использовать для функции препроцессора, реализуемой темой.
Смежные вопросы
- 1. Как сделать конкретную таблицу стилей Chrome/Opera?
- 2. AmazonS3Exception: Access Denied S3
- 3. Загрузить внешнюю таблицу стилей в Qt
- 4. Powershell Access Denied Issue
- 5. VB.NET% appdata% access access denied
- 6. WebClient DownloadFile access denied
- 7. дезактивировать конкретную таблицу стилей плагина в Symfony 1.4
- 8. CarrierWave Fog Credentials, Access Denied
- 9. Android AWS S3 Access Denied
- 10. Как правильно загрузить таблицу стилей внутри тела?
- 11. Как загрузить динамическую таблицу стилей XULRunner?
- 12. Как загрузить таблицу стилей при использовании QQmlApplicationEngine
- 13. Как разобрать/загрузить таблицу стилей из HTML
- 14. python open() - access denied
- 15. Process.StartTime Access Denied
- 16. HttpListener Access Denied
- 17. Python pywin32 Access Denied
- 18. MessageDialog Access Denied Exception
- 19. JavaScript возвращает Access Denied
- 20. access denied error - C#
- 21. PostMessage: Access Denied
- 22. SQL Filestream Access Denied
- 23. CruiseControl.rb SVN Access Denied
- 24. SC.exe вызывает Access Denied
- 25. Autoit runas access denied
- 26. Xampp phpMyAdmin Access Denied
- 27. CouchDB Access Denied Перенаправление
- 28. CC.Net Access Denied Error
- 29. ScanDir() access Denied
- 30. Загрузить таблицу стилей CSS на основе ID?
Спасибо, я дам этот снимок. – Kevin
Код, аналогичный тому, который я написал здесь, используется в существующем стороннем модуле; разница в том, что модуль (Nodeewords) добавляет метатеги, но код, чтобы определить, выводит ли Drupal страницу отказа в доступе, является тем же самым, и было предложено от члена группы безопасности Drupal разрешить проблему безопасности, указанную для этот модуль. – kiamlaluno
Работал. Кроме того, я должен был сделать themename_preprocess_page. – Kevin