インストールプロファイルを作成しています。カスタムテーマを正常にダウンロードして、デフォルトで有効にすることができます。私が遭遇している問題は、フレッシュインストールで[コンテンツを編集または作成するときに管理テーマを使用する]設定が無効になっていて、常に有効にしたいということです。
更新: this API記事apiドキュメントが、どのフィールドをターゲットにするかを判断するのに役立つことがわかりました。
設定は次のように簡単です:
_variable_set('node_admin_theme', 1);
_
Drupal=)で使用されるほとんど(すべてではない)の構成設定は、基本的に要素の配列キーを取る system_settings_form()
を使用して管理されますその形式で使用され、変数として保存されます。
したがって、テーマ設定フォームの要約版は次のようになります
_function some_form($form, &$form_state) {
$form['node_admin_theme'] = array(
'#title' => t('Use the administration theme when editing or creating content'),
'#type' => 'checkbox',
'#default_value' => variable_get('node_admin_theme', 0),
);
return system_settings_form($form);
}
_
Drupalがそのフォームを処理するとき、_node_admin_theme
_という変数が適切な値で作成/更新されます。
フォームがsystem_settings_form()
を使用していることが確かな場合、関連する変数の名前を見つけるのは、要素自体を調べて 'name'パラメータを調べるのと同じくらい簡単です。
不明な場合は、フォームを定義する関数を検索して確認してください。 system_settings_form()
を使用している場合はすばらしいですが、そうでない場合は、フォームが実際にデータを管理する方法についての洞察を得ます。
私はしばらくの間あなたの質問に費やしました1.そして私はこの解決策を見つけました: "node.settings.yml"という名前のファイルを作成し、あなたのプロファイルのconfig> installフォルダーに置きます。これをファイルに書き込むだけです:
use_admin_theme: true
編集:この解決策はdrupal 8.用です。