プロジェクトに分類されたブレッドクラム パスを追加したかったのですが、oneThink フロントエンドではそのような機能が提供されていなかったので、自分で作成しました。これが皆さんに役立つことを願っています。
Web サイトを構築するとき、通常、この種のナビゲーションは複数レベルの分類に基づいており、oneThink では、リスト ページであっても記事ページであっても、レベルごとにプッシュされます。現在のカテゴリの変数 $category が定義されているため、この変数の ID を使用して、フロントエンド モジュールの関数呼び出しを使用して現在のパスを生成できます。
さっそく、HOME モジュールの関数内に get_category_info(); という関数を作成しましょう。この関数は、カテゴリの指定されたフィールドの内容を検索するために使用されます。これは、pid フィールドとallow_publish フィールド/* をクエリすることを目的としています。 *指定されたカテゴリ内の指定されたフィールドのコンテンツを検索します<br>
* @param $id<br>
* @param string $field<br>
* @return 混合|文字列<br>
*/<br>
function get_category_info($id,$field=""){<br>
<br>
If(!$フィールド){<br>
return '検索フィールドが指定されていません';<br>
}その他{<br>
$map = array(<br>
'id'=>array('eq',$id),<br>
'status'=>array('eq',1)<br>
);<br>
$re = M('category')->where($map)->getField($field);<br>
リターン$リ<br>
}<br>
}
次に get_bread() 関数を作成します/**<br>
* パンくずリストを取得します <br>
* 分類に基づいて分類されたパンくずリストを生成します<br>
* @param $id 現在のカテゴリーID<br>
*/<br>
関数 get_bread($id){<br>
//pid をクエリ<br>
$pid = get_category_info($id,'pid');<br>
//現在のカテゴリでコンテンツの公開が許可されているかどうかに基づいて、インデックス テンプレートとリスト テンプレートのどちらを使用するかを決定します<br>
$temp = get_category_info($id,'allow_publish')?'リスト':'インデックス';<br>
<br>
$str = $pid?<br>
get_bread($pid):<br>
'<a href="'.U('ホーム/インデックス/インデックス'). '" alt="ホーム" >ホーム</a>';<br>
<br>
$str .= ' > a href="'.U('Home/Article/'.$temp,array('category'=>$id)).'" alt="'.get_category_title($) id).'">'.get_category_title($id).'</a>';<br>
<br>
$str;<br>を返します
}
最後に、フロントエンド タグは関数 get_bread() を呼び出します{:get_bread($category['id'])}
{:get_bread($category['id'])}