it-swarm-vi.com

Làm cách nào để có đường dẫn logo trong Drupal 7?

Tôi có một logo tùy chỉnh và tôi đã cố gắng đi theo con đường của anh ấy theo cách này theme_get_setting('logo_path'), nhưng không có kết quả như mong đợi.

Tôi đang sử dụng mã trong một khối tùy chỉnh, trong PHP đầu vào.

7
Ek Kosmos

logo_path Dường như chỉ được đặt nếu bạn ghi đè logo mặc định của chủ đề thông qua cài đặt chủ đề. Để lấy logo mặc định, sử dụng theme_get_setting('logo').

7
user7
global $base_url;
drupal_theme_initialize();

if (!$logo = theme_get_setting('logo_path')) {
    $logo = theme_get_setting('logo');
}

if (!empty($logo)) {
  // [1]
  // Remove the base URL from the result returned by theme_get_setting('logo').
  // If you don't need the relative path, you can remove this code.
  if (strpos($logo, $base_url) === 0) {
    $logo = drupal_substr($logo, drupal_strlen($base_url));
  }
  // [1]
  // …
}

Cuộc gọi tới drupal_theme_initialize () là không thực sự cần thiết và nó không làm gì nếu biến toàn cục $theme Đã được khởi tạo.
[.__.] Mã đang xóa URL cơ sở vì giá trị được báo cáo từ theme_get_setting('logo') là một đường dẫn tuyệt đối; nếu bạn không cần một đường dẫn tương đối để truy cập tệp, thì phần giữa // [1] có thể bị xóa.

Khi logo đã bị tắt trong cài đặt chủ đề, theme_get_setting('logo') sẽ không trả lại bất cứ điều gì.

4
kiamlaluno