2010-02-04 3 views

답변

2

그냥 모듈의 폴더에 styles.php라는 파일을 추가합니다

function print_header_simple($title='', $heading='', $navigation='', $focus='', $meta='', $cache=true, $button=' ', $menu='', $usexml=false, $bodytags='', $return=false) { 

이것은 아마도 모듈에 다음과 같은 일을 할 것을 의미한다. 파일을 구문 분석 할 때 파일에 CSS 코드가 출력되어야합니다.

무들은 각 모듈의 폴더에 들어가서 페이지의 CSS 레이아웃이 구성 될 때 그 파일을 찾습니다.

일부 테마는 여기

$THEME->modsheets = true; 

/// When this is enabled, then this theme will search for 
/// files named "styles.php" inside all Activity modules and 
/// include them. This allows modules to provide some basic 
/// layouts so they work out of the box. 
/// It is HIGHLY recommended to leave this enabled. 

styles.php 파일의 내용이 될 수 있는지에 대한 간단한 샘플입니다 테마의 config.php 파일에 특별한 설정을 사용하여 이러한 파일을 무시할 수 있습니다 :

/* simple CSS code */ 
.left { float:left; } 

/* php that generate CSS code */ 
< ?php if (right_to_left()) {echo ".right:text-align:left;"} 
else {echo ".right:text-align:right;"} ?> 
+3

감사합니다. 스타일을위한 .php 파일을 가지고있는 것은 나에게 이단과 같은 소리가 들린다. 그러나 그것은 무들이 그것을하는 방식이고 우리는 그것과 함께 살 필요가있다. –

+0

글쎄, 그것은 PHP 프로그래머를위한 CSS 코드를 생성하기 쉽습니다. 다른 언어 (RTL 또는 LTR)에 대해 다른 CSS 코드를 출력 할 수 있습니다. 결국 모든 파일은 하나의 파일로 모아지고 mime 유형은 "text/css"로 설정됩니다. 브라우저는 원래 PHP 파일이라는 것을 모릅니다. 나는 다소 멋지다고 생각합니다 :-) – nadavkav

+0

블록의/module 디렉토리에 style.css를 포함시킬 수도 있습니다. Moodle은이를 감지하여 가져올 수 있어야합니다. – rlorenzo

0

아마도 에 정의 된 function print_header_simple()을 살펴볼 수 있습니다.

모듈 특정 페이지를 생성하는 모듈을 작성하고 정상적인 무들의 라이브러리를 사용하는 경우 페이지가 생성되는 동안 <head> 섹션에 추가 할 내용을 $meta에 붙입니다. lib/weblib.php에서

는 :

$extra_css = $CFG->wwwroot.'/theme/SUPA4/supa_report.css'; 
$extra_css_meta = '<link rel="stylesheet" type="text/css" href="'.$extra_css.'" />'; 
print_header_simple($mytitle, "", $navigation, "", "", true, "", navmenu($course), '', $extra_css_meta); 
+0

이 내용을 확인해 보겠습니다. 감사. –

관련 문제