it-swarm-ko.tech

블록에 로고를 어떻게 넣습니까?

이 코드를 입력 PHP 코드로 사용자 정의 블록에 넣으려고했습니다.

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

Drupal 7에서는 작동하지 않습니다.

7
Ek Kosmos

theme_get_settings()삭제되었습니다 in Drupal 7. 대신 theme_get_setting() 을 사용하십시오.

<?php

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

?>

theme_get_setting()은 현재 테마의 설정을 가져 오지만 임의의 테마 설정을 원하는 경우 API 문서에 설명 된대로 선택적 두 번째 매개 변수를 사용할 수 있습니다. 덜 취약하게 만들기 위해 theme_image() 을 사용했습니다.

그러나 PHP 필터 사용을 피할 수 있다면 실제로 코드를 사용하여 블록을 만드는 작은 사용자 지정 모듈을 만드는 것이 좋습니다.

11
user7

코드의 한 가지 문제는 if 문에서 ==가 아니라 =를 사용한다는 것입니다.

Blockify 에 대한 작업처럼 들립니다. 그리고이를 위해 "전체 모듈"을 사용하고 싶지 않다면 어떻게 수행되었는지를보고 올바른 스 니펫을 사용할 수 있습니다.

4
tim.plunkett