ホームページ >バックエンド開発 >PHPチュートリアル >ディスカステンプレートを作成する上で失敗しないように、問題点を教えてください。

ディスカステンプレートを作成する上で失敗しないように、問題点を教えてください。

WBOY
WBOYオリジナル
2016-06-23 13:43:04973ブラウズ

いくつかのテンプレートを作成する予定です:

ヘッダー フッターとページの本文を変更する必要があるため、複数のテンプレートを使用する必要があり、デフォルトのテンプレートは変更されないため、従来とは異なる方法を採用する必要があります。

手順:
ステップ 1: 複数のテンプレートの HTML ページを作成します
ステップ 2: 画像を common に、js を static/js に、css を common に配置し、extend_common.css の名前を変更します
ステップ 3: ヘッダーとフッターのコピーをいくつかコピーしますheader_1.htm などの名前を付けて、css や js を導入し、修正します。
ステップ 4: ページ本文を変更し、先頭と末尾で対応するファイルを参照し、中間本文を変更し、list_*.htm として保存し、チャネルを追加した後に呼び出します。


これらはすべて想像であり、検証されたものではありません、間違っていたら返すのが面倒になると思います。したがって、専門家は問題を検討してください。


メインページの変更については 2 つの方法があります。1 つはすべてを空白のままにし、DIY する方法です。問題は、各ブロックをテンプレート化し、フレームをカスタマイズできるように DIY CSS を変更する必要があることです。 1:1 2:2 だけではなく、独自の幅です。しかし、非常に直感的であるため、間違うことは困難です。

1 つは、HTML を直接変更する方法です。これには、それぞれの {} 置換がタイトルまたは記事に対応する必要があります。この方法の方がはるかに高速で、必要なコードも少なくなる可能性があります。ただし、欠けているのはデータ ソースのコードです (データ ソースを直接選択できる DIY とは異なります)。


質問: これを行うと副作用はありますか?右?
メイン ページを変更する 2 番目の方法を選択した場合、データ ソースをどのように記述しますか?


ディスカッション (解決策) に返信します

たとえば、トピック リスト ページで次のようにします。
sourcemoduleforumforumforum_forumdisplay.php の最後に、テンプレートに include template('forum/name of your template'); を追加します。 .htmで終わる
私はテンプレートを作ったことがないので、適当なアドバイスはしませんが、このままではうまく書けないと思うので、discuzのテンプレートチュートリアルを見てください


例: テーマ リスト ページ:
sourcemoduleforumforumforum_forumdisplay.php の最後に、 include template ('forum/the name of your template') を追加します。 テンプレートは .htm で終わる必要があります。
テンプレートを作成したことがないので、勝ちました。適当なアドバイスはできませんが、discuzのテンプレートチュートリアルを見てください。このようには書けない気がします

これは解決できない問題のはずです

に従ってテンプレートを作成すると、公式のものなので、テンプレートを使用すると、すべてがこのスタイルになります。彼は、それぞれにスタイルがある複数のチャンネルに対応できませんでした。

もちろん、私は discuz についてあまり知りませんし、まだ 1 週間ほどしか触れていません。

discuz のすべてのセクションを DIY することはできないのですか? チャンネルが何なのかさえ知りません...
本当にうまくいかなかったので、自分で書かなければなりませんでした

はは、私はそう思います私も当時この問題を勉強しましたが、諦めました。これは、いわゆる企業 Web サイト、またはポータル内のコラムであり、この種のシステムでは、各コラムが次のことを行う必要があります。 Discuz の cms 機能は非常に貧弱で、カテゴリを結合するなどの変更が加えられるため、Web サイトが巨大になります。その後諦めて、Discuz の CMS の機能強化も提案しましたが、Discuz はフォーラムの機能をすべてカバーするのは不可能です

チャンネルが何なのかさえ知りません...
それは本当にできないので、自分で書く必要があります


それでは、テンプレートでチャンネル列とそのサブセクションをループアウトするにはどうすればよいですか?

メイン列のみループアウトできますが、サブ列はループアウトできません。

テンプレートを使って と書くだけです
通常のメソッドや DB メソッドは適していません

$cat がどのページから取得されているかわかりません
$ 内cat upid フィールドがあるはずです。0 より大きい場合は、サブ列の親列です。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。