From a3e04357d9deceb3e497d8eadbec95759c7a8b74 Mon Sep 17 00:00:00 2001 From: Anthony Talarico Date: Fri, 19 May 2017 09:04:14 -0400 Subject: [PATCH] removing forced template structure wp 4.7 doesn't support the pseudo template structure, need to use actual template files for the update --- capstone-team.php | 5 ++ full-width.php | 5 ++ functions.php | 120 ++++++++++++++++++------------------- members-only.php | 5 ++ partners-blocks.php | 5 ++ sections/interior-page.php | 10 ++-- 6 files changed, 85 insertions(+), 65 deletions(-) create mode 100644 capstone-team.php create mode 100644 full-width.php create mode 100644 members-only.php create mode 100644 partners-blocks.php diff --git a/capstone-team.php b/capstone-team.php new file mode 100644 index 0000000..e6145e9 --- /dev/null +++ b/capstone-team.php @@ -0,0 +1,5 @@ + $templates = get_option( 'custom_page_templates' ); - // maybe by conf file? --> $templates = include 'custom_page_templates.php'; - return apply_filters( 'custom_page_templates', $templates ); -} -add_action( 'edit_form_after_editor', 'custom_page_templates_init' ); -add_action( 'load-post.php', 'custom_page_templates_init_post' ); -add_action( 'load-post-new.php', 'custom_page_templates_init_post' ); - -function custom_page_templates_init() { - remove_action( current_filter(), __FUNCTION__ ); - if ( is_admin() && get_current_screen()->post_type === 'page' ) { - $templates = get_custom_page_templates(); // the function above - if ( ! empty( $templates ) ) { - set_custom_page_templates( $templates ); - } - } -} -function custom_page_templates_init_post() { - remove_action( current_filter(), __FUNCTION__ ); - $method = filter_input( INPUT_SERVER, 'REQUEST_METHOD', FILTER_SANITIZE_STRING ); - if ( empty( $method ) || strtoupper( $method ) !== 'POST' ) return; - if ( get_current_screen()->post_type === 'page' ) { - custom_page_templates_init(); - } -} -function set_custom_page_templates( $templates = array() ) { - if ( ! is_array( $templates ) || empty( $templates ) ) return; - $core = array_flip( (array) get_page_templates() ); // templates defined by file - $data = array_filter( array_merge( $core, $templates ) ); - ksort( $data ); - $stylesheet = get_stylesheet(); - $hash = md5( get_theme_root( $stylesheet ) . '/' . $stylesheet ); - $persistently = apply_filters( 'wp_cache_themes_persistently', false, 'WP_Theme' ); - $exp = is_int( $persistently ) ? $persistently : 1800; - wp_cache_set( 'page_templates-' . $hash, $data, 'themes', $exp ); -} -add_filter( 'custom_page_templates', function( $now_templates ) { - // Any slug->name pairs down here will be selectable in the admin side of - // a page. You do not need to create a new template file. You can refer to - // this template by its slug in our index.php using get_page_template_slug - // Below are some commented examples of custom quasi-templates. - $templates = array( - 'partners-blocks' => 'Partners Page Blocks', - 'members-only' => 'Members Only', - 'capstone-team' => 'Capstone Team', - 'full-width' => 'Full Width' - // 'any-template-slug' => 'Sample Template' , - ); - - return array_merge( $now_templates, $templates ); -} ); +//add_filter( 'template_include', 'glm_force_template', 99 ); +//function glm_force_template( $template ) { +// if ($template != locate_template("woocommerce.php")) { +// $template = locate_template( "index.php" ); +// } +// return $template; +//} +//function get_custom_page_templates() { +// $templates = array(); +// // maybe by options? --> $templates = get_option( 'custom_page_templates' ); +// // maybe by conf file? --> $templates = include 'custom_page_templates.php'; +// return apply_filters( 'custom_page_templates', $templates ); +//} +//add_action( 'edit_form_after_editor', 'custom_page_templates_init' ); +//add_action( 'load-post.php', 'custom_page_templates_init_post' ); +//add_action( 'load-post-new.php', 'custom_page_templates_init_post' ); +// +//function custom_page_templates_init() { +// remove_action( current_filter(), __FUNCTION__ ); +// if ( is_admin() && get_current_screen()->post_type === 'page' ) { +// $templates = get_custom_page_templates(); // the function above +// if ( ! empty( $templates ) ) { +// set_custom_page_templates( $templates ); +// } +// } +//} +//function custom_page_templates_init_post() { +// remove_action( current_filter(), __FUNCTION__ ); +// $method = filter_input( INPUT_SERVER, 'REQUEST_METHOD', FILTER_SANITIZE_STRING ); +// if ( empty( $method ) || strtoupper( $method ) !== 'POST' ) return; +// if ( get_current_screen()->post_type === 'page' ) { +// custom_page_templates_init(); +// } +//} +//function set_custom_page_templates( $templates = array() ) { +// if ( ! is_array( $templates ) || empty( $templates ) ) return; +// $core = array_flip( (array) get_page_templates() ); // templates defined by file +// $data = array_filter( array_merge( $core, $templates ) ); +// ksort( $data ); +// $stylesheet = get_stylesheet(); +// $hash = md5( get_theme_root( $stylesheet ) . '/' . $stylesheet ); +// $persistently = apply_filters( 'wp_cache_themes_persistently', false, 'WP_Theme' ); +// $exp = is_int( $persistently ) ? $persistently : 1800; +// wp_cache_set( 'page_templates-' . $hash, $data, 'themes', $exp ); +//} +//add_filter( 'custom_page_templates', function( $now_templates ) { +// // Any slug->name pairs down here will be selectable in the admin side of +// // a page. You do not need to create a new template file. You can refer to +// // this template by its slug in our index.php using get_page_template_slug +// // Below are some commented examples of custom quasi-templates. +// $templates = array( +// 'partners-blocks' => 'Partners Page Blocks', +// 'members-only' => 'Members Only', +// 'capstone-team' => 'Capstone Team', +// 'full-width' => 'Full Width' +// // 'any-template-slug' => 'Sample Template' , +// ); +// +// return array_merge( $now_templates, $templates ); +//} ); // END FORCE TEMPLATE FUNCTIONS diff --git a/members-only.php b/members-only.php new file mode 100644 index 0000000..59ae62c --- /dev/null +++ b/members-only.php @@ -0,0 +1,5 @@ + - ID ) == "partners-blocks") { ?> + ID ) == "partners-blocks.php") { ?>
@@ -16,7 +16,7 @@ ID); ?>
- ID ) == "partners-blocks") { ?> + ID ) == "partners-blocks.php") { ?> post_content) ; ?> @@ -26,7 +26,7 @@ - ID ) == "members-only") { ?> + ID ) == "members-only.php") { ?>
@@ -40,11 +40,11 @@ post_content) ; ?>
- ID ) == "full-width") { ?> + ID ) == "full-width.php") { ?>
post_content) ; ?>
- ID ) == "capstone-team") { ?> + ID ) == "capstone-team.php") { ?>
post_content) ; ?> -- 2.17.1