Heim >Backend-Entwicklung >PHP-Tutorial >Zwei Möglichkeiten zum Schreiben und Aufrufen von Widget-Erweiterungen in ThinkPHP
In diesem Artikel werden hauptsächlich die beiden Möglichkeiten zum Schreiben und Aufrufen von Widget-Erweiterungen in ThinkPHP vorgestellt und die Schreibmethoden und entsprechenden Aufruftechniken von Widget-Erweiterungen detailliert analysiert.
Allgemeine Verwendung von Widget Erweiterungen Zur Erweiterung von Seitenkomponenten können je nach Bedarf unterschiedliche Inhalte auf der Seite ausgegeben werden. Hier gibt es zwei Möglichkeiten, Widget in ThinkPHP zu schreiben und aufzurufen
Schreibmethode eins:
ArticlWidget.class.php-Datei:
class ArticleWidget extends Widget { /** * * @param array $data * @return type * 调用方法:{:W('ArticleList',array('cid'=>25,'limit'=>5))} * cid为分类id,limit为调用数量 */ public function render($data) { $Article = M('Article'); $articleMap["cid"] = $data["cid"]; $data["articleList"] = $Article->where($articleMap)->order('id desc')->limit($data["limit"])->select(); foreach ($articleList as $key => $value) { if ($value["thumbnail"] == "") { $data["articleList"][$key]["thumbnail"] = '/Public/Img/Common/noThumbnail.jpg'; } } return $this->renderFile('articleList', $data); } }
Die Vorlagendatei ArticleList.html befindet sich in der Lib/Widget /Artikelverzeichnis
<volist name="articleList" id="articleList_vo"> <li> <a href="__APP__/Channel/articleDetail/code/article/id/{$articleList_vo.id}" rel="external nofollow" title="{$articleList_vo.title}">{$articleList_vo.title}</a> </li> </volist>
Schreibmethode zwei:
class ArticleWidget extends Action { /** * * @param array $data * @return type * 调用方法:{:R('Article/articleList',array('cid'=>25,'limit'=>5),'Widget')} * cid为分类id,limit为调用数量 */ public function articleList($cid, $limit) { $Article = M('Article'); $articleMap["cid"] = $cid; $data = $Article->where($articleMap)->order('id desc')->limit($limit)->select(); foreach ($data as $key => $value) { if ($value["thumbnail"] == "") { $data[$key]["thumbnail"] = '/Public/Img/Common/noThumbnail.jpg'; } } $this->assign('articleList', $data); $this->display('Widget:articleList'); } }
Vorlage Die Datei ArticleList.html hat den gleichen Inhalt, wird jedoch im Verzeichnis Tpl/style name/Widget/ abgelegt.
Wenn die Vorlagendatei im Ordner Article im Verzeichnis abgelegt wird Wo sich die Datei ArticleWiget.class.php befindet, lautet die Schreibmethode wie folgt:
$this->display(dirname(__FILE__) . '/Article/articleList.html');
PHP9 vordefinierte Variablen Detaillierte Erklärung der Super-Global-Array-Nutzung_php-Grundlagen
PHP Zufallszahl C erweiterter Zufall Zahl
PHP-Abhängigkeitsinjektion und Inversion von control_php-Fähigkeiten verstehen
Das obige ist der detaillierte Inhalt vonZwei Möglichkeiten zum Schreiben und Aufrufen von Widget-Erweiterungen in ThinkPHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!