ACFオプションページ管理者

ACFオプションページ管理者 | John A. Huebner II

説明

***追加された新機能:カスタム投稿IDスラッグ***
これは、Advanced Custom Fields(ACF)5 + Options Page Add On(またはACF Pro)用のアドオンプラグインです。
このプラグインは、ACF 5およびオプションページアドオン(またはACF5 Pro)でない限り、機能を提供しません。
インストールされています
このプラグインは、ACFのすべてのオプションを含むACFのオプションページを追加するための管理インターフェイスを提供します
オプションページ。メニューの場所、機能、保存場所など、ほとんどのオプションを選択できます
フィールド値を。
詳細については、を参照してください。
その他の注意事項と
スクリーンショット
Githubリポジトリ
このプラグインはGitHubにもあります
https://github.com/Hube2/acf-options-page-adder
変更機能
オプションページの設定を追加/編集するために必要な機能は「manage_options」です。この機能は、フィルターを追加することで変更できます。
add_filter( ‘acf-options-page-adder / capability’、 ‘my_acf_options_page_adder_cap’);
関数my_acf_options_page_adder_cap($ cap){
$ cap = ‘edit_published_posts’;
$ capを返します。
}

オプションページの投稿に値を保存する
ACF v5.2.7では、オプションページのフィールドを投稿IDに保存する機能が追加されました。このプラグインを使用すると、このプラグインを使用してオプションページを追加するときに作成された投稿と同じ投稿IDにオプションを保存できます。オプションページ自体のフィールドを取得することを心配することなく、get_fields($ options_page_id)を使用することもできます。どうして?オプションページの作成に使用されるすべてのフィールドはアンダースコア_で始まり、get_fields()によって返されるわけではないためです。注意する必要がある唯一のことは、このプラグインで使用されるフィールド名を使用しないことです。これらはすべてacfopで始まるため、非常に簡単です。
カスタム投稿IDスラッグを使用した値の保存
オプションページの値を保存するためにカスタムスラッグを使用することが可能です。たとえば、オプションページの値をユーザーに保存する場合は、opitonsページの$ post_id値として「user_1」を指定できます。これには別の副作用もあります。通常、ACFがオプションテーブルの「options」に値を保存すると、「options_」プレフィックスが付いたフィールドが見つかります。したがって、たとえば、フィールド名が「my_field」の場合、オプションテーブルでオプション名として「options_my_field」が見つかります。このためのカスタムスラッグを指定できます。たとえば、オプションページの投稿ID設定を「my-custom-slug」に設定したとします。これにより、オプションページの同じフィールドに「my-custom-slug_my_field」という名前が付けられます。 2このプラグインに新しいオプションが追加され、投稿IDにオプションページスラッグを使用するか、代わりに使用するカスタムスラッグを指定するかを選択できます。
オプションページの投稿IDを取得する
取得に使用する正しいACF $ post_id値を取得するために、関数とフィルターを使用できます。
オプションページの値。この関数/フィルターは、に保存されているオプションページの「オプション」を返します
オプションまたはオプションが投稿に保存されている場合は、正しい投稿IDを返します。正しいIDが返されます
オプションページの「menu_slug」値に基づきます。
/例1:関数get_options_page_id()

//オプションページのpost_idを取得します
$ post_id = get_options_page_id( ‘my_options_page_slug’);
// $ post_idを使用して値を取得します
$ value = get_field( ‘my_option_field’、$ post_id);

//またはこのように組み合わせることができます
$ value = get_field( ‘my_option_field’、get_options_page_id( ‘my_options_page_slug’));

//例2:フィルターによる
$ default = ‘オプション’、
$ slug = ‘my_options_page_slug’;
$ post_id = apply_filters( ‘get_option_page_id_filter’、$ default、$ slug);
$ value = get_field( ‘my_option_field’、$ post_id);

//またはこのように組み合わせることができます
$ value = get_field( ‘my_option_field’、apply_filters( ‘get_option_page_id_filter’、$ default、$ slug));

間違った投稿IDを取得する条件があります。この条件は、最初のサブオプションページにリダイレクトするように設定されたトップレベルのリダイレクトページを持つことによって作成されます。サブオプションページが存在しない場合は、トップレベルオプションページの値が返されます。後でサブオプションページを作成すると、サブオプションページから新しい値が返されます。これが、リダイレクトのデフォルト値がfalseになっている理由です。トップレベルページをリダイレクトする場合は、サブオプションページを作成していないと、後で問題が発生する可能性があることに注意する必要があります。また、サブオプションページの順序を具体的に設定して、将来のある時点でこれらが変更されないようにする必要があります。これは、既存のトップレベルページと同じ順序で新しいオプションページを追加すると、新しいオプションの保存場所と取得場所が変更されるためです。ページ。これについて私ができることに注意してください、それはそれが機能する方法です。オプションではなく投稿に保存するようにACFオプションページを設定する場合は、オプションページの引数をより正確に指定する必要があります。
Font Awesome Support
このプラグインは、サイトの管理者にFontAwswsomeをエンキューまたは含めないことに注意してください。
管理者にFontAwsomeを含めると、のアイコンにFontAwesomeアイコンを使用できます。
トップレベルのオプションページ。たとえば、アドレス帳アイコンを使用したい場合は、fafa-address-bookを追加するだけです。
オプションページを追加または編集するときに、[アイコン]フィールドに入力します。
フィルタオプションページヘッダー/フッター/コンテンツ
このプラグインのバージョン3.8.0では、ヘッダーとフッターのコンテンツを追加して、ACFオプションページをカスタマイズする機能が追加されました。オプションページの管理エディターに追加されたWYSIWYGフィールドに加えて、フィルターを使用してこれらのセクションまたはオプションページ全体をカスタマイズすることもできます。
このプラグインのバージョン3.8.2は、この機能を有効にするためのトグルを追加します。この機能により、
多数のフィールドがあるオプションページでのメモリの致命的なエラー。トグルをオンにする前にコンテンツがこのフィールドに入力された場合、トグルは自動的にオンになります。それ以外の場合、このオプションのデフォルトはオフになります。
ヘッダーコンテンツ
add_filter( ‘acf-options-page-adder / page-header’、 ‘my_custom_options_page_header’、10、2);

関数my_custom_options_page_header($ content、$ hook){
// $ content = content、デフォルトでは ”またはWYSIWYGエディターの値
// $ hook =呼び出されている現在のオプションページフック
$ content = ‘

カスタムヘッダーコンテンツ $ contentを返します。
}

フッターコンテンツ
add_filter( ‘acf-options-page-adder / page-footer’、 ‘my_custom_options_page_footer’、10、2);

関数my_custom_options_page_footer($ content、$ hook){
// $ content = content、デフォルトでは ”またはWYSIWYGエディターの値
// $ hook =呼び出されている現在のオプションページフック
$ content = ‘

マイカスタムフッターコンテンツ $ contentを返します。
}

オプションページ全体をフィルタリング
add_filter( ‘acf-options-page-adder / page-content’、 ‘my_custom_options_page_filter’、10、2);

関数my_custom_options_page_filter($ content、$ hook){
// $ content =すべてのACFフィールドを含むコンテンツまたはオプションページ全体
// $ hook =呼び出されている現在のオプションページフック
//ページのコンテンツを変更するときは注意が必要です
$ contentを返します。
}

ナグを削除します
一部の管理ページに表示される私の小さなナグを削除したい場合は、functions.phpファイルに以下を追加してください
add_filter( ‘remove_hube2_nag’、 ‘__ return_true’);

インストール

プラグインフォルダー内のacf-options-page-adderという名前のフォルダー(通常は/ wp-content / plugins / options-page-admin-for-acf /)にファイルを抽出します。
ファイルをアップロードする
プラグインページからアクティブ化します

プラグインの作者

John A. Huebner II

プラグインの公式ウェブサイトアドレス

https://wordpress.org/plugins/options-page-admin-for-acf/
ACFオプションページ管理者プラグインの使用で問題が発生した場合は、以下にコメントしてください。問題の解決に最善を尽くします

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です