it-swarm-eu.dev

Přepsat výstup pole CCK bez použití šablon

Modul Pohledy má možnost Nice přepsat výstup pole. To umožňuje přizpůsobit výstup polí CCK pomocí tokenů bez nutnosti vytvářet šablonu pro toto zobrazení.

Existuje modul, který by umožnil podobnou funkčnost pro kartu „Zobrazovací pole“ typu obsahu? Potřebuji mírně upravit výstup pole pro hlavolam a tělo, ale nechci vytvářet úplnou šablonu.

V současné době na to používám Contemplate, ale to je komplikovanější, než potřebuji, a zbytečně obtížné, pokud nejste obeznámeni s Drupal PHP API). Je také nepříjemné, že musím upravit šablonu pokaždé, když k typu obsahu přidám další pole, opravdu musím přepsat několik polí, nikoli celé tělo nebo upoutávku.

Chtěl bych tedy mít jednoduchý způsob, jak přepsat každý výstup pole CCK pomocí jakéhokoli tokenu dostupného pro tento typ obsahu. Existuje něco takového?

8
Mad Scientist

Zní to, jako byste hledali modul Vlastní formátovače , velmi podobný Kontemplate, ale konkrétně pro vytváření formátů polí, které budou použity prostřednictvím stránky Nastavení zobrazení nebo Pohledy.

Vlastní formátovače mohou být vytvořeny jak s tokeny, tak s čistým PHP kódem).

Kromě toho lze vlastní formáty exportovat jako nativní Drupal háčky nebo ve exportovatelném formátu vlastních funkcí).

5
Decipher

Pokud se jen díváte na vylepšení označení, sémantický CCK stojí za vyzkoušení.

Sémantický CCK byl vytvořen, aby uživatelům poskytl prostředky pro přizpůsobení HTML výstupu polí CCK. To bylo částečně inspirováno vysoce doporučeným modulem Semantic Views, který poskytuje stejné funkce pro pohledy.

Drupal 7

A Drupal 7 verze sémantického CCK je v současné době ve vývoji: sémantická pole .

4
tim.plunkett

Použití modulu Contemplate se nedoporučuje, protože do databáze vkládá kód PHP=), který je obecně považován za chybu zabezpečení a neúčinnou.

Můžete zvážit definování vlastních formátovačů polí pomocí hook_field_formatter_info () . To vám umožní definovat vlastní zpětná volání, která zvládnou každé pole. Zde je jednoduchý návod jak to funguje pro Drupal 6).

Prohlédněte si implementaci hook_field_formatter_info () ostatních modulů a podívejte se, jak to funguje. V Drupal 6 se naváže přímo na hook_theme (), zatímco Drupal 7 používá hook_field_formatter_view () .

2
c4rl

Modul Token Field umožňuje kombinovat pole pomocí jejich tokenů.

0
keva

Použil bych modul Token Filter k určení hodnot tokenů v CCK polích pomocí vstupních filtrů. Zde je výňatek ze stránky projektu modulu:

... velmi jednoduchý modul, který zpřístupňuje hodnoty tokenů jako vstupní filtr.

0
bkildow

Možná hledáte modul Display Suite , který vám poskytne největší kontrolu nad formátováním v D6. Zde je demonstrační video .

0
Adam S

S tímto stejným problémem bojuji už nějakou dobu.

Nemůžu/nechci použít ...

  1. Rozjímání z důvodů průměrné architektury.
  2. Display Suite, což je úžasné, ale nadměrné a ve skutečnosti neumožňuje jednoduché změny polí.
  3. Vlastní formátovače, protože to opět končí PHP v databázi pro více hodnotových polí).
  4. Šablona pole, protože k položce právě přidávám řádek textu.
  5. Sémantický CCK, protože to mění pouze prvky a třídy.
  6. hook_preprocess nebo jiná řešení založená na kódu, protože je potřebuji konfigurovat.

Je to skutečný čmelák, když vše, co musím udělat, je přidat popis pole CCK pro zobrazení výstupu. To by ve skutečnosti mělo být docela jednoduché.

Zní to, jako byste potřebovali Vlastní formátovače.

0
doublejosh

Toto je velmi rychlé a jasné vysvětlení vlastních formátovačů pro D6:

http://manueg.okkernoot.net/blog/200907/how-create-cck-formatter

0
lazysoundsystem