うーん、これは簡単なことかもしれませんが、複雑なものかもしれません。私はDjangoフレームワーク内でSEOのフレンドリーなTwitterフィードを設定することに問題があります。次のように重い物を持ち上げるのほとんどは、テンプレートタグblog_tags.py
ファイルとして行われます:テキストをHTMLに構文解析する
@register.inclusion_tag('blog/frame/twitter.html')
def show_latest_tweets():
tweets = []
try:
"""The import error is here to catch any server migrations were the tweepy package not to be found in site_packages"""
import tweepy
except:
tweets.append({'status': 'There was a problem referencing our tweets. Please inform our webmaster.', 'relative_date': 'Just now'})
raise ImportError
# OAuth process, using the keys and tokens
auth = tweepy.OAuthHandler(settings.EOS_TWITTER_FEED['EOS_FEED_TWITTER_KEY'], settings.EOS_TWITTER_FEED['EOS_FEED_TWITTER_SECRET'])
auth.set_access_token(settings.EOS_TWITTER_FEED['EOS_FEED_TWITTER_ACCESS_TOKEN'], settings.EOS_TWITTER_FEED['EOS_FEED_TWITTER_ACCESS_TOKEN_SECRET'])
# Creation of the actual interface, using authentication
api = tweepy.API(auth)
user = 'FFXVEN'
avatar_url = api.get_user(screen_name='@'+user).profile_image_url
i = 0
for tweet in tweepy.Cursor(api.user_timeline, screen_name='@'+user).items():
if 'RT' not in tweet.text:
if i <= 4:
status = tweet.text
hashtags = [word for word in status.split() if word[0] == "#"]
#Find hashtags in tweet and create a string to contain <a href="https://twitter.com/search?q=" + hashtag>#hashtag</a>
for hashtag in hashtags:
if hashtag.endswith((',',';','.')):
hashtag = hashtag[:-1]
status = status.replace(hashtag, '<a href="https://twitter.com/search?q={}">{}</a>'.format(hashtag[1:], hashtag))
relative_date = tweet.created_at
tweets.append({'user': user, 'avatar_url': avatar_url, 'status': html.unescape(status), 'relative_date': relative_date})
i += 1
else:
break
else:
continue
return { "tweets": tweets }
すべてがうまく機能 - それは私が望むすべてを返し、現在はそれがハッシュタグを取り除き、Twitterの友好ハッシュタグに置き換えます。しかし、このクライアント側は何が表示されます。
私はそれは、クライアント側のHTML要素はHTML要素としてレンダリングされ、テキストを事前にフォーマットされていないことをどのように動作するかにこだわっていますか?
安全なテンプレートフィルタを試してみてくださいあなたは
タグに表示{{tweet.status}}変数でつぶやきループでつぶやきため – Exprator標準を表示しているテンプレートを示しています。 –