私を悩ませている疑いがあります。Wordpress バックエンドにオプション ページを追加しました。今、私は疑問に思っています、彼らのパラメータをフロントエンドに渡す最良の方法は何ですか?
たとえば、バックエンドにカラー フィールドがあり、その値を mysql に保存するとします。そのような色を div に割り当てたい場合は、mysql から値を取得し、それを php ファイルの変数としてエコーすることができます。
echo '<div style="color: ' . $mycolor . ';">';
しかし、それは良い習慣と考えられていますか? オプションページを保存するたびにすべての変数を静的cssファイルにエクスポートするなど、他のよりきれいでパフォーマンスの良い代替手段が必要だと思います。
提案を聞きたいです!
編集。これを元の質問に追加して、他の人が私が求めていることを理解できるようにします。
こんにちは!私のリクエストはおそらく明確ではありませんでした。管理者側のオプション ページを作成する方法は既に知っています (実際、提案されたフレームワークに基づく Redux を使用しています)。フロントエンドで変数を取得する方法も知っています:
$options = get_option('theme_name');
$single_option_value = $options['unique_id_of_the_admin_option_form'];
私が知らないのは、それらを実装する正しい方法です。
例を挙げます。ユーザーがセクションのカスタム背景を設定できるようにしたいとします。管理者側には、メディア アップローダー フォームがあります (一意の ID: div_background_url )。
現在、フロントエンドでは、次のようにオプションを取得しています。
<?php
$options = get_option('my_theme');
$section_background_url = $options['div_background_url'];
?>
次に、セクションがエコーされ、スタイル タグのカスタム背景が表示されます。
<?php echo '<section style="background-image: url(\'' . $section_background_url . '\');"></section>';
しかし、この方法では膨大な数のサーバー要求が生成される可能性があると思います。管理者がオプションを変更するたびにすべてのオプションを css ファイルに保存し、このファイルをフロントエンドの Web サイトにロードした方がよいのではないでしょうか?
私は英語のネイティブ スピーカーではないので、複雑なことを説明するのは難しい場合があります。