2014-03-28 42 views
0

我一直堅持我的項目與這個問題: 我有一個Drupal模塊,將ECHO長的HTML代碼。 (我剛剛開始使用Drupal模塊)。 而我似乎無法找到一種方法來添加CSS到此頁面。我似乎無法找到一種方法來添加CSS到Drupal模塊

這裏是我的模塊:

<?php 
function kartta_help($path, $args) { 
    if ($path == 'admin/help#kartta') { 
    return t("<h1>kartta modulin dokumentaatio</h1> 
    </br>tänne tulee karttamodulin dokumentaatio"); 
    } 
} 
function kartta_menu() { 
    $items = array(); 
    $items['kartta_module/kartta'] = array(
     'title' => 'Karttamodule', 
     'page callback' => 'say_kartta', 
     'access arguments' => array('access content'), 
     'type' => MENU_CALLBACK, 
    ); 
    return $items; 
} 
function say_kartta() { 
echo ' 
<head> 
<meta charset=utf-8> 
<meta name="viewport" content="width=620"> 
<title>maps form</title> 
<link rel="stylesheet" href="form.css"> 
<script src="scripts/form.js"></script> 
</head> 
<div id=header> 
<h1>Form</h1> 
<h2>Upload a new map or choose an existing one.</h2> 
</div> 
<div id=selection> 
<button id=btnNew>New</button> 
<button id=btnEdit>Edit</button> 
</div> 
<div id=new> 
<br /> 
<form name=newMapForm action="scripts/fallback/uploadDeleteImage.php" method=POST enctype="multipart/form-data"> 
Choose a file to upload: <input name="map" id="inputImage" type="file" required/><br /> 
Give the map a name: <input type="text" name="name" id="inputName" required/> <br /> 
<input type="submit" value="Upload" id="btnUpload" name="upload"/> 
</form> 
<br /> 
</div> 
<div id=edit> 
<br /> 
Choose a file to edit: 
<select id=mapSelect> 
</select> 
<br /> 
<div id=afterSelect> 
<p id="selectedMapName"></p> 
<img alt="map" id="selectedMapImage"/> 
<form name="editMapForm" action="edit.php" method="POST"> 
<input id="hiddenNameEdit" type="hidden" name="name" value=""/> 
<input id="hiddenPathEdit" type="hidden" name="path" value=""/> 
<input type="submit" value="Edit" id="btnEdit" name="edit"/> 
</form> 
<form name="deleteMapForm" action="scripts/fallback/uploadDeleteImage.php" method="POST" id="frmDeleteMap"> 
<input id="hiddenNameDelete" type="hidden" name="name" value=""/> 
<input id="hiddenPathDelete" type="hidden" name="path" value=""/> 
<input type="submit" value="Delete" id="btnDelete" name="delete"/> 
</form> 
</div> 
<br /> 
</div> 
'; 
} 

它不好看觀看或閱讀,但是你通過閱讀只是它的開始明白了吧。 的.info文件:

name = kartta module 
description = test module of map php ward has made 
core = 7.x 
stylesheets[all][] = form.css 
scripts [] = scripts/form.js 
+0

內部功能這不是如何創建在Drupal的頁面。在繼續閱讀[主題指南](https://drupal.org/documentation/theme)之前,或者你要回到自己無法擺脫的角落。 – Clive

+0

我意識到這一點,但我正在做一個模塊,後來添加塊,所以我可以打印到一個頁面內的塊。 atleast至少在這種情況下,我認爲即時通訊做得很好 – J0N3X

+0

不,你不應該把一個完整的HTML頁面像一個字符串那樣傾倒出去。使用模板文件或主題功能。如果你想使用Drupal特有的東西,比如通過.info文件添加CSS,那麼你必須按照Drupal的要求構建你的頁面。試想一下 - 你把一些東西放在.info文件中,然後把一個HTML字符串放到頁面中。你認爲Drupal會怎麼做?對任意字符串執行必要的字符串替換/ DOM操作?它如何知道它的格式? Drupal如何知道攔截你的'print'並停止... – Clive

回答

0

1 /你不必爲 「回聲」 任何東西。改爲使用「返回」。
2 /你不需要所有的「<頭> ... < /頭>」部分;已經有一個處理的那部分你(主題化:https://drupal.org/theme-guide/6-7)模板(html.tpl.php)
3 /您應該使用的形式API(https://api.drupal.org/api/drupal/developer!topics!forms_api_reference.html/7)而不是使用原始形式

要回答原來的問題這裏是介紹如何添加CSS鏈接:http://adaptivethemes.com/how-to-add-css-files-in-drupal-7