Làm cách nào để đặt logo vào một khối?


7

Tôi đã cố gắng đặt mã này trong khối tùy chỉnh với đầu vào được tạo thành mã PHP:

$settings = theme_get_settings('my theme');
if (!$settings[toogle_logo] = 0) {
  print '<img src="' . base_path() . $settings['logo_path'] . '" alt="my logo" />'; 
}

Nó không hoạt động trong Drupal 7.


1
Kiểm tra mô-đun khối delta
chrisjlee

Câu trả lời:


11

theme_get_settings() đã được gỡ bỏ trong Drupal 7. Thay vào đó, sử dụng theme_get_setting(). Những công việc này:

<?php

if (theme_get_setting('toggle_logo')) {
  $image = array(
    'path' => theme_get_setting('logo'),
    'alt' => 'my logo',
  );
  print theme('image', $image); 
}

?>

theme_get_setting()sẽ nhận được cài đặt của chủ đề hiện tại, nhưng nếu bạn muốn cài đặt của chủ đề tùy ý, bạn có thể sử dụng tham số thứ hai tùy chọn như được mô tả trong tài liệu API. Tôi đã từng theme_image()làm cho nó bớt mong manh.

Nhưng nếu bạn có thể tránh sử dụng bộ lọc PHP, bạn thực sự nên: xem xét việc tạo một mô-đun tùy chỉnh nhỏ để tạo một khối với mã thay thế.


4

Một vấn đề với mã của bạn là bạn sử dụng =, không == trong câu lệnh if của bạn.

Âm thanh như một công việc cho Blockify . Và nếu bạn không muốn sử dụng "toàn bộ mô-đun" cho điều đó, bạn có thể xem cách thực hiện và sử dụng đoạn mã chính xác.


Vâng, đây là một trong những vấn đề.
Ek Kosmos
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.