FeinCMS Newswall集成模块到Leonardo(支持Django 1.8+)
leonardo-newswall的Python项目详细描述
集成https://github.com/matthiask/django-newswall到列奥纳多CMS。
这个模块使用这个forkhttps://github.com/michaelkuty/django-newswall.git#egg=newswall 新闻墙wich的py与django 1.7<;1.9兼容
Installation
pip install leonardo-newswall
或作为Leonardo Bundle
pip install django-leonardo["newswall"]
可以选择使用leonardo-celery进行定期更新,也可以根据需要调用update_newswall。
将新模板加载到数据库
python manage.py sync_all -f
Providers
newswall有几个捆绑的提供商,它们是:
Elephantblog
在上的ElephantBlog安装中为每个活动项添加新闻项 同一个网站。无需(或可能)额外配置。添加 遵循json配置到Source条目:
{"provider": "newswall.providers.elephantblog"}
Facebook Graph Feed
此提供商为Facebook页面上的每个墙贴添加新闻条目。这个 墙柱是通过图形api访问的;您需要一个python的副本 你的python路径上的facebook sdk。你需要一个访问令牌 offline_access此提供程序的权限。所需配置 如下:
{"provider": "newswall.providers.fb_graph_feed", "object": "FEINHEIT", // used to construct the Graph request URL "from_id": "239846135569", // used to filter stories created by the // object referenced above, ignores stories // sent by others "access_token": "..." }
我们建议使用app access令牌来查询facebook页面提要,因为它们不会过期。 要获取应用程序访问令牌,只需在 填写所需字段(所有大写字母):
https://graph.facebook.com/oauth/access_token?client_id=YOUR_APP_ID&client_secret=YOUR_APP_SECRET&grant_type=client_credentials
更多有关app access tokens的信息,请参见Facebook官方文档: <;https://developers.facebook.com/docs/opengraph/using-app-tokens/>;
要获取“from_id”配置参数,可以查询facebook open图 浏览器的API后端:
https://graph.facebook.com/OBJECT
F.E.: <;https://graph.facebook.com/FEINHEIT>;
RSS Feed
rss提要提供程序可以获取任何rss或atom提要(实际上,任何可解析的 通过feedparser并将故事转换为新闻条目:
{ "provider": "newswall.providers.feed", "source": "http://twitter.com/statuses/user_timeline/unsocialrider.rss" }
Twitter API Feed
必需:Tweepy:
pip install leonardo-newswall[twitter]
用法:
创建一个Twitter应用程序。 您可以在详细信息页上找到消费者密钥/秘密。 因为这是一个只读应用程序,所以可以创建 您的oauth_令牌/机密直接位于应用程序详细信息页的底部。
所需的配置键:
{ "provider": "newswall.providers.twitter", "user": "feinheit", "consumer_key": "...", "consumer_secret": "...", "oauth_token": "...", "oauth_secret": "..." }