ホームページ > 記事 > CMS チュートリアル > dede記事ページに著者のアバターを表示する方法
dede 記事ページに著者のアバターを表示するにはどうすればよいですか?
dede は記事ページに著者名を表示するだけでユーザー名を表示しますが、dede をよりソーシャルな Web サイトに変えたい場合は著者のアバターを表示する必要があると思いますが、公式では対応しないテンプレートタグです。
推奨調査: 梦Weavercms
インターネットで見たこの問題の解決策は、基本的にテンプレート ページで runphp プログラム セグメントを直接呼び出すことです。方法 それは機能します。
しかし、多くの場合、微分された関数が必要になり、毎回このように PHP コードを混在させるのは面倒に見えるため、私はこれを行う傾向はありません。
記事テンプレートがいくつかの新しいタグを呼び出せるように、php ファイル内で直接変更しました。
/include/arc.archives.class.php ファイルを見つけます
「$this->addTableRow = $this->dsql->GetOne($query);」を検索します。 "、154 行目あたりに移動し、else{ $this->Fields['templet'] = $this->Fields['redirecturl'] = '';}:
の下に次のコードを追加します。コードは次のとおりです。
/*HEJIE_MODIFY文章作者信息 @www.68cpu.com*/ $query = "SELECT * FROM jcode_member WHERE `mid` = ".$this->Fields['mid']; $authorInfo = $this->dsql->GetOne($query); $this->Fields['authoranme']=$authorInfo['uname']; $this->Fields['authorface']=$authorInfo['face']; if(empty($this->Fields['authorface'])) { $this->Fields['authorface']=($this->authorInfo['sex']=='女')? '../member/templets/images/dfgirl.png' : '../member/templets/images/dfboy.png'; } $this->Fields['authorface']="<a href='".$GLOBALS['cfg_basehost']."/member/index.php?uid=".$authorInfo['userid']."'><img width='32' height='32' src='".$this->Fields['authorface']."' /></a>"; $this->Fields['authoremail']=$authorInfo['email'];
このコードの機能は、記事の著者 ID に基づいて著者情報をクエリすることです (もちろんアバターも含まれます)。
今後のバックアップのために、アバターのメールアドレスとユーザー名という 3 種類の情報を提供しました。
ユーザーのアバターのタグにいくつかの処理を加えて、テンプレートで呼び出されたときに、作成者のスペースを指すリンクを直接生成できるようにしました。
記事テンプレートで著者のアバターを呼び出すステートメントは次のとおりです:
コードは次のとおりです:
{dede:field.authorface/}
このタグに対応する php コードは、実際には上記の $ です。 this->Fields[ 'authorface'] と同様に、作成者の電子メール情報をクエリしたいのですが、実際には PHP コードの $this->Fields['authoremail'] にあり、対応するテンプレート タグは {dede:field.著者メールアドレス/}
以上がdede記事ページに著者のアバターを表示する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。