1

新しいページを作成するときに、1つではなく2つのデフォルトチャンクを使用したいと思います。

その理由は、私のメインテンプレートが2つのセクションに分割されており、2つのチャンクから始めたいからです。

私がやりたいのは、ページモジュールを編集して、ユーザーが新しいページを作成するたびに、名前を付けて定義した2つのチャンクで常に開始するようにすることです。

これを達成するために何を変更する必要がありますか?

注:いくつかのカスタムフィールドを追加するために、ページモジュールとデータベースをすでに変更しました。これは同じ取引だと思いますが、最初のチャンクが作成されている場所が見つかりません...

4

2 に答える 2

2

ページ モジュールの管理コントローラの 340 行目あたりを見ると、プロパティに配列が作成されてい$pages->chunksます。別の配列/オブジェクトを追加して、これを以下のように修正しました。これにより、「default」と「default2」という 2 つのチャンクを持つページが作成されます。

$page->chunks = array((object) array(
    'id' => 'NEW',
    'slug' => 'default',
    'body' => '',
    'type' => 'wysiwyg-advanced',
),
(object) array(
        'id' => 'NEW2',
        'slug' => 'default2',
        'body' => '',
        'type' => 'wysiwyg-advanced',
    ),
);

正直なところ、ID が何をするものなのかわかりませんが、ID が一意であることを確認するのが最善でしょう。

于 2012-11-08T18:46:50.413 に答える
1

@nick-pyett に感謝します。これが私のために働いたコードです。

これは最終的なコードです:

$page->chunks = array(array(
'id' => 'NEW',
'slug' => 'default',
'class' => '',
'body' => '',
'type' => 'wysiwyg-advanced',
),
array(
'id' => 'NEW2',
'slug' => 'default2',
'class' => '',
'body' => '',
'type' => 'wysiwyg-advanced',
),
);

私はIDがどこで終わるかを見ました。各要素の名前に追加されるようです。そのようです:

チャンクスラッグ[NEW2]

実際のスラッグは、チャンクの最初の入力に入ります。これは、ページでそれを呼び出すために使用するスラッグです。

{{ pages:chunk id="{{ page:id }}" name="default2" }}

于 2012-11-08T20:11:51.107 に答える