2009-10-08 6 views
5

いくつかのテキスト書式を表示できるようにノードタイトルが必要です。DrupalのノードタイトルのHTML リッチテキスト?

私が理解する限り、Drupalのタイトルフィールドはプレーンテキストです。HTMLまたは他の入力フォーマットは許可されていません。本当?これをオーバーライドする方法はありますか?私は、あなたはかなり簡単にあなたのテーマでこれを行うことができますDrupalの6

答えて

6

で働いています

、と関係する別の方法があります。最も簡単なのは、おそらく機能で何が起こる

/* this function generates the variables that are available in your node.tpl, 
* you should already have this in your template.php, but if not create it 
*/ 
function mytheme_preprocess_node(&$vars) { 
    // It's important to run some kind of filter on the title so users can't 
    // use fx script tags to inject js or do nasty things. 
    $vars['title'] = filter_xss($vars['node']->title); 
} 

はそれがタイトルのために使用される変数を保持しているnode.tplに$タイトルのデフォルト値を上書きすることで、あなたのtemplate.phpでそれを行うにします。通常、h1タグまたはh2タグ内に配置されるため、注意する必要があります。 filter_xssは、基本的なhtmlタグのみを許可するために使用されますので、サイトを保護してください。その機能はhereです。それはcheck_markupやfilter_xss_adminのような他のフィルタ関数ですが、filter_xssの2番目のパラメータは許可されたタグの配列なので、デフォルトでは十分ではない場合は、必要に応じて変更することができます。

0

D7に使用してください。 wiifmが言及したモジュールを拡張

-1

は、D7のためにも、今そこにある:https://drupal.org/project/html_title_trash

これは、複数のタグを可能にし、また、ブロックのタイトルだけではなく、ノードのタイトルのために動作します。

+0

これは質問に対する答えを提供しません。批評をしたり、著者の説明を求めるには、投稿の下にコメントを残してください。 – PutzKipa

+0

私は申し訳ありませんが、私はdisagee。これは質問に答えて答えます。質問は「私はいくつかのテキスト書式を表示するにはノードのタイトルが必要です。わかっている限り、Drupalのタイトルフィールドは単なるテキストですが、HTMLやその他の入力フォーマットは許されません。答えは:はいDrupalコアはノードタイトルのHTMLを許可していませんが、上記のモジュールを使用する場合はそうです。 – fris

+0

OPは彼が彼のポストの終わりにDrupal 6で働いていると言います。また、そこには "drupal-6"というタグがあります。 Drupal 7ではhtml title trashモジュールが導入されました。あなたの投稿はwiifmの答えに対するコメントとして作成されているはずです。それは素晴らしい補完ですが、直接的な答えではないからです。 – PutzKipa

関連する問題