2013-05-05 15 views
6

DocPadは他の静的サイト生成プログラムに匹敵するものとして記述されていますが、「静的サイト生成に限定されない」とも言われています。docpadシステムの静的コンテンツと動的コンテンツ - 動的コンテンツの作成方法

私はDocPadのウェブサイトやその他の文書を閲覧してきたし、まだ動的なコンテンツを組み込む方法を説明しているようだ何かを見つけることができていない、と制限の種類が関与している可能性がありますか?

初心者であれば誰でも、動的コンテンツがDocPadに組み込まれるという方法論を理解する助けになるだろうか?例えばAJAX、および特定のタグをクリックしたときに動的にWebページへのFlickrから写真を読み込むようなものを行うための動的なサーバーサイドスクリプト...

感謝。

答えて

12

はそうそこDocPadは動的なコンテンツを容易にいくつかの方法があります:regenerateEveryconfiguration option経由

  1. 。これにより、頻繁に指定するたびにウェブサイトが再生成されます。これは、feedrのようなプラグインと組み合わせて、最新のソーシャルアクティビティのようなリモートフィードソースからデータを取得することができます。repoclonerはクローンアウトし、プロジェクト内でgitリポジトリを最新の状態に保ちます。このオプションの利点は、それが本当に簡単で、動的なウェブサイトの錯覚を提供することです。たとえば、Benjamin Lupton Websiteはこの方法を適用して、ホームページの統計情報とサイドバーのソーシャルデータを最新の状態に保ちます。 1時間ごとに最新の情報で再生されます。それを速くする、そして幻想的に動かす。 dynamicmeta-data property経由

  2. trueに設定すると、これはDocPadサーバーに、一度ではなく、各要求でその文書を再レンダリングする必要があることを通知します。これは、search pagesmisc formsについては、Kitchensink Skeletonの内部でうまくいきます。この方法は、PHP開発に最もよく似ています。 serverExtendevent経由

  3. 。このイベントを使用すると、DocPadサーバーに接続して拡張することができるため、余分なサーバー側のロジックや処理などを追加することができます。サーバーに追加のルーティングを追加してルートエイリアスを処理し、連絡先フォームを作成したり、Backbone.jsアプリケーション用のRESTfulなインターフェイスを追加することができます。 DocPad Websiteはこれをadd extra routing and a regenerate post-receive hook for the documentationに使用します。 NodeChat Skeletonはこれをadd the Socket.io server-side logicに使用します。

  4. API。この方法は最も関与していますが、DocPadを既存のnode.jsアプリケーションの小さな部分にしたい場合には、非常に有益です。これにより、コード内にDocPadインスタンスを作成し、それと対話できます。 grunt-docsイサキタスクはこれを利用し:)

関連する問題