5

現在、私は Jreviews をインストールしていますが、それを K2 に置き換えて、住所、電話番号、地図、営業時間などの専門店を一覧表示したいと考えています。

K2 では、これらの特定の情報を保持するために追加のカスタム フィールドを定義する必要があると思います。問題ない。

しかし、特定のショップの詳細記事/アイテムにそれらのフィールドが表示されるように設定するにはどうすればよいですか?

どうもありがとう、

チビ。

4

5 に答える 5

6
// In the item template you can skip this first line...
$this->item->extra_fields = K2ModelItem::getItemExtraFields($this->item->extra_fields);

$extraFlds = array();
if ( $this->item->extra_fields ){
  foreach ( $this->item->extra_fields as $key=>$extraField ){
     $extraFlds[ $extraField->name ] = $extraField->value;
  }
}

次に、次のように関連配列の追加フィールドにアクセスできます$extraFlds['my field']

于 2010-12-16T09:00:22.963 に答える
4

ここで何度も試した後、私が使用して機能したもの

<?php 
// if form is empty show default form
$k2obj = new K2ModelItem(); 
$fields = $k2obj->getItemExtraFields($this->item->extra_fields, $this->item); 
//echo $this->item->extraFields->State->name; 
echo $this->item->extraFields->FIELD_ALIAS->value;

?>

これは機能しており、すべてがクラスのインスタンス化に固定されていることに注意してください。

注:これをk2アイテムiバージョン2.6.7 Joomla 2.5.14で使用しています

于 2013-08-13T04:17:30.680 に答える
1

k2テーブルリストにカスタムフィールドを表示したい場合は、次の場所に移動します。

components\com_k2\templates\default\category_item.php

136 行目付近のファイルを次のように編集します。

<?php foreach ($this->item->extra_fields as $key=>$extraField):
            **if(strpos($extraField->name,"/")){**
            ?>
            <li class="<?php echo ($key%2) ? "odd" : "even"; ?> type<?php echo ucfirst($extraField->type); ?> group<?php echo $extraField->group; ?>">
                <span class="catItemExtraFieldsLabel"><?php echo $extraField->name; ?></span>
                <span class="catItemExtraFieldsValue"><?php echo $extraField->value; ?></span>
            </li>
            <?php **}** endforeach; ?>

私は自分のサイトでそれを行います: www.joomir.com

于 2011-05-29T07:21:51.983 に答える
0

K2 では、アイテムがカテゴリ レベルでどのように表示されるかのパラメータを設定します。カテゴリ リストのアイテム ビュー オプションとアイテム ビュー オプションの両方に追加フィールドを表示するオプションがあります。

デフォルトでは、組み込みの K2 テンプレートは、「追加情報」という見出しの下に、フィールド名と値の順序付けられていないリストを含む追加フィールドを表示します。そのテンプレートを上書きして、追加のフィールドを好きなように表示することができます。

于 2010-10-09T03:48:55.970 に答える