ホームページ  >  記事  >  バックエンド開発  >  discuz でデータテーブルをカスタマイズする方法

discuz でデータテーブルをカスタマイズする方法

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

discuz の公式テンプレートには中国語が表示されないことは誰もが知っています
私はポータル サイトを作りたいし、その公式のコンセプトも守りたいと思っています。呼び出すフィールドがたくさんあるので、とにかく頭が真っ白です
100点あげたいです


ディスカッションへの返信 (解決策)

多言語バージョンは必要なく、要件を変更するときにその言語パックのメカニズムに従う必要もないと思います。テンプレートを変更するときに言語パックを確認する必要があります。これは本当に面倒です


簡単に言うと:
すべてのページをブロックに分割し、各ブロックごとにニュース列に相当する一連のフィールド表示名を定義できます。テーブルを作成してバックグラウンドで管理します。フィールド名テーブルを作成し、ブロック ID + データ テーブル名 + フィールド名を記録します。バックグラウンドで管理するフィールドのフロントエンド表示名をロックできます。
関数をカスタマイズし、ブロック ID、データ テーブル名、フィールド名を渡します。対応するブロック内のフィールドの表示名を返し、フロントエンド テンプレートの関数を通じて呼び出すことができ、便利です。フィールド名はバックグラウンドで編集されます

将来の変更を容易にするために ? 言語パッケージを使用することをお勧めします。

多言語バージョンが必要ない場合は、その言語パックのメカニズムに従う必要はないと思います。要件を変更するときに必要なファイルが多すぎるため、テンプレートを変更するときに言語パックを比較する必要があります。本当に面倒です

簡単に言うと、
すべてのページを変更します ブロックに分割し、各ブロックはニュース列に相当する一連のフィールド表示名を個別に定義できます 各ブロックにはカスタマイズされたブロック名が付けられます。バックグラウンドで
フィールド名テーブルを作成し、ブロック ID + データテーブル名 + フィールド名を記録します。唯一のフィールドのフロントエンド表示名をロックでき、バックグラウンド管理
関数をカスタマイズし、ブロック ID、データを渡しますテーブル名、フィールド名、対応するブロック内のフィールドの表示名を返し、それをフロントエンドテンプレートに渡すことができます 関数を呼び出すことで、バックグラウンドで編集したフィールド名を簡単に表示できます

そうですね。これは 100% 提供されます

しかし、現時点では、テーブルを作成しましたが、このテーブルはコンテンツ ページのフィールド テーブルで十分だと思います。別のフィールド名テーブルを作成し、ブロック ID + データ テーブル名 + フィールド名を記録すると、フロントエンドで唯一のフィールド表示名をロックできます。公式の関数を呼び出すだけで十分なので、必要ありません。理解していますか?
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。