web-dev-qa-db-ja.com

親ページに特定のテンプレートがあるかどうかを確認してください

あるページに特定のページテンプレートが添付された親があるかどうかを確認したいです。

どのスクリプトをロードするかどうかを決定できることがわかっていれば。
通常、私は単にページテンプレートを取得し、それが一致する場合は必要なスクリプトをロードしますが、今度は自分のfunctions.phpファイルにそのスクリプトがあるため、$page->IDを確認できません。

私はこれをどうやって解決するのか本当に知りません。私のfunctions.phpで:

require_once('js/my_script.php');  

my_script.php

add_filter( 'admin_post_thumbnail_html', 'function_name');
function functions_name( $myhtml ) {
    //do stuff
};

これは既存の関数にフックします。ステートメントが偽の場合、それは完全な機能を無効にするので、私は関数内をチェックすることはできません。

3
Interactive

この質問は以前にStack Overflowで答えられています: https://stackoverflow.com/a/14626254/844732

add_action( 'admin_head', 'check_page_template' );
function check_page_template() {
    global $post;
    if ( 'page-homepage.php' == get_post_meta( $post->ID, '_wp_page_template', true ) ) {
        // The current page has the foobar template assigned
        // do something

    }
}
1
Jan Beck