source codeをpelican
にする必要があります。私は良い方法がないと思う。
たとえば、興味のある信号を検索します。 article_generator_write_article
:https://github.com/getpelican/pelican/search?utf8=%E2%9C%93&q=article_generator_write_article
次に、検索結果を調べます。 generators.py
をクリックし、信号が入っている回線番号をクリックします。もちろん、クローンを作成してローカルに行うこともできます。これはあなたの仕事の仕方によって異なります。
周辺のコードは:あなたが見ることができるように
def generate_articles(self, write):
"""Generate the articles."""
for article in chain(self.translations, self.articles):
signals.article_generator_write_article.send(self, content=article)
write(article.save_as, self.get_template(article.template),
self.context, article=article, category=article.category,
override_output=hasattr(article, 'override_save_as'), blog=True)
、信号の呼び出しはarticle
オブジェクトを提供します。今度は、1)ソースコードを見て、このオブジェクトのそれぞれのpythonクラスを見つけて内部の動作、メソッド、属性を調べるか、2)ハッキーパスに行き、単純にオブジェクトのメンバーprint(article.__dict__)
を印刷します。
article
には、ソースファイルから生成されたHTMLコードを含むcontent
という属性があります。これが目的の変更が入る場所です。
を処理する前にソースコードを変更したい場合、これは簡単ではありません。私はちょうどこれを行うことができる少しpluginを書いた。
実際のシグナルAPIもご覧になれます。あなたは単にconnect
に、目的の信号に対するハンドラ機能を持たなければなりません。
私はこれが助けてくれることを願っています:)