Changeset 3629
- Timestamp:
- 11/24/2011 11:30:21 AM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/plugin/bbp-includes/bbp-core-compatibility.php
r3623 r3629 96 96 function bbp_theme_compat_enqueue_css() { 97 97 98 // Bail if current theme has this under control 99 if ( current_theme_supports( 'bbpress' ) ) 100 return; 101 98 102 // Version of CSS 99 103 $version = bbp_get_theme_compat_version(); … … 181 185 182 186 return $located; 187 } 188 189 /** 190 * Retrieve path to a template 191 * 192 * Used to quickly retrieve the path of a template without including the file 193 * extension. It will also check the parent theme and theme-compat theme with 194 * the use of {@link bbp_locate_template()}. Allows for more generic template 195 * locations without the use of the other get_*_template() functions. 196 * 197 * @since bbPress (r3629) 198 * 199 * @param string $type Filename without extension. 200 * @param array $templates An optional list of template candidates 201 * @uses bbp_set_theme_compat_templates() 202 * @uses bbp_locate_template() 203 * @uses bbp_set_theme_compat_template() 204 * @return string Full path to file. 205 */ 206 function bbp_get_query_template( $type, $templates = array() ) { 207 $type = preg_replace( '|[^a-z0-9-]+|', '', $type ); 208 209 if ( empty( $templates ) ) 210 $templates = array( "{$type}.php" ); 211 212 $templates = apply_filters( "bbp_get_{$type}_template", $templates ); 213 $templates = bbp_set_theme_compat_templates( $templates ); 214 $template = bbp_locate_template( $templates ); 215 $template = bbp_set_theme_compat_template( $template ); 216 217 return apply_filters( "bbp_{$type}_template", $template ); 183 218 } 184 219 … … 410 445 $wp_query->is_tax = $dummy['is_tax']; 411 446 412 413 447 // If we are resetting a post, we are in theme compat 414 448 bbp_set_theme_compat_active(); … … 423 457 * 424 458 * @uses bbp_get_displayed_user_id() 425 * @uses bbp_locate_template() 426 * @uses apply_filters() 427 * 428 * @return array 459 * @uses bbp_get_query_template() 460 * @return string Path to template file 429 461 */ 430 462 function bbp_get_single_user_template() { … … 455 487 ); 456 488 457 $templates = apply_filters( 'bbp_get_profile_template', $templates ); 458 $templates = bbp_set_theme_compat_templates( $templates ); 459 460 $template = bbp_locate_template( $templates, false, false ); 461 $template = bbp_set_theme_compat_template( $template ); 462 463 return $template; 489 return bbp_get_query_template( 'profile', $templates ); 464 490 } 465 491 … … 470 496 * 471 497 * @uses bbp_get_displayed_user_id() 472 * @uses bbp_locate_template() 473 * @uses apply_filters() 474 * 475 * @return array 498 * @uses bbp_get_query_template() 499 * @return string Path to template file 476 500 */ 477 501 function bbp_get_single_user_edit_template() { … … 507 531 ); 508 532 509 $templates = apply_filters( 'bbp_get_profile_edit_template', $templates ); 510 $templates = bbp_set_theme_compat_templates( $templates ); 511 512 $template = bbp_locate_template( $templates, false, false ); 513 $template = bbp_set_theme_compat_template( $template ); 514 515 return $template; 533 return bbp_get_query_template( 'profile_edit', $templates ); 516 534 } 517 535 … … 522 540 * 523 541 * @uses bbp_get_view_id() 524 * @uses bbp_locate_template() 525 * @uses apply_filters() 526 * 527 * @return array 542 * @uses bbp_get_query_template() 543 * @return string Path to template file 528 544 */ 529 545 function bbp_get_single_view_template() { … … 553 569 ); 554 570 555 $templates = apply_filters( 'bbp_get_single_view_template', $templates ); 556 $templates = bbp_set_theme_compat_templates( $templates ); 557 558 $template = bbp_locate_template( $templates, false, false ); 559 $template = bbp_set_theme_compat_template( $template ); 560 561 return $template; 571 return bbp_get_query_template( 'single_view', $templates ); 562 572 } 563 573 … … 568 578 * 569 579 * @uses bbp_get_topic_post_type() 570 * @uses bbp_locate_template() 571 * @uses apply_filters() 572 * 573 * @return array 580 * @uses bbp_get_query_template() 581 * @return string Path to template file 574 582 */ 575 583 function bbp_get_forum_edit_template() { … … 589 597 ); 590 598 591 $templates = apply_filters( 'bbp_get_forum_edit_template', $templates ); 592 $templates = bbp_set_theme_compat_templates( $templates ); 593 594 $template = bbp_locate_template( $templates, false, false ); 595 $template = bbp_set_theme_compat_template( $template ); 596 597 return $template; 599 return bbp_get_query_template( 'forum_edit', $templates ); 598 600 } 599 601 … … 604 606 * 605 607 * @uses bbp_get_topic_post_type() 606 * @uses bbp_locate_template() 607 * @uses apply_filters() 608 * 609 * @return array 608 * @uses bbp_get_query_template() 609 * @return string Path to template file 610 610 */ 611 611 function bbp_get_topic_edit_template() { … … 625 625 ); 626 626 627 $templates = apply_filters( 'bbp_get_topic_edit_template', $templates ); 628 $templates = bbp_set_theme_compat_templates( $templates ); 629 630 $template = bbp_locate_template( $templates, false, false ); 631 $template = bbp_set_theme_compat_template( $template ); 632 633 return $template; 627 return bbp_get_query_template( 'topic_edit', $templates ); 634 628 } 635 629 … … 640 634 * 641 635 * @uses bbp_get_topic_post_type() 642 * @uses bbp_locate_template() 643 * @uses apply_filters() 644 * 645 * @return array 636 * @uses bbp_get_query_template() 637 * @return string Path to template file 646 638 */ 647 639 function bbp_get_topic_split_template() { … … 656 648 ); 657 649 658 $templates = apply_filters( 'bbp_get_topic_split_template', $templates ); 659 $templates = bbp_set_theme_compat_templates( $templates ); 660 661 $template = bbp_locate_template( $templates, false, false ); 662 $template = bbp_set_theme_compat_template( $template ); 663 664 return $template; 650 return bbp_get_query_template( 'topic_split', $templates ); 665 651 } 666 652 … … 671 657 * 672 658 * @uses bbp_get_topic_post_type() 673 * @uses bbp_locate_template() 674 * @uses apply_filters() 675 * 676 * @return array 659 * @uses bbp_get_query_template() 660 * @return string Path to template file 677 661 */ 678 662 function bbp_get_topic_merge_template() { … … 687 671 ); 688 672 689 $templates = apply_filters( 'bbp_get_topic_merge_template', $templates ); 690 $templates = bbp_set_theme_compat_templates( $templates ); 691 692 $template = bbp_locate_template( $templates, false, false ); 693 $template = bbp_set_theme_compat_template( $template ); 694 695 return $template; 673 return bbp_get_query_template( 'topic_merge', $templates ); 696 674 } 697 675 … … 702 680 * 703 681 * @uses bbp_get_reply_post_type() 704 * @uses bbp_locate_template() 705 * @uses apply_filters() 706 * 707 * @return array 682 * @uses bbp_get_query_template() 683 * @return string Path to template file 708 684 */ 709 685 function bbp_get_reply_edit_template() { … … 723 699 ); 724 700 725 $templates = apply_filters( 'bbp_get_reply_edit_template', $templates ); 726 $templates = bbp_set_theme_compat_templates( $templates ); 727 728 $template = bbp_locate_template( $templates, false, false ); 729 $template = bbp_set_theme_compat_template( $template ); 730 731 return $template; 701 return bbp_get_query_template( 'reply_edit', $templates ); 732 702 } 733 703 … … 738 708 * 739 709 * @uses bbp_get_topic_tag_tax_id() 740 * @uses bbp_locate_template() 741 * @uses apply_filters() 742 * 743 * @return array 710 * @uses bbp_get_query_template() 711 * @return string Path to template file 744 712 */ 745 713 function bbp_get_topic_tag_template() { … … 759 727 ); 760 728 761 $templates = apply_filters( 'bbp_get_topic_tag_template', $templates ); 762 $templates = bbp_set_theme_compat_templates( $templates ); 763 764 $template = bbp_locate_template( $templates, false, false ); 765 $template = bbp_set_theme_compat_template( $template ); 766 767 return $template; 729 return bbp_get_query_template( 'topic_tag', $templates ); 768 730 } 769 731 … … 774 736 * 775 737 * @uses bbp_get_topic_tag_tax_id() 776 * @uses bbp_locate_template() 777 * @uses apply_filters() 778 * 779 * @return array 738 * @uses bbp_get_query_template() 739 * @return string Path to template file 780 740 */ 781 741 function bbp_get_topic_tag_edit_template() { … … 804 764 ); 805 765 806 $templates = apply_filters( 'bbp_get_topic_tag_edit_template', $templates ); 807 $templates = bbp_set_theme_compat_templates( $templates ); 808 809 $template = bbp_locate_template( $templates, false, false ); 810 $template = bbp_set_theme_compat_template( $template ); 811 812 return $template; 766 return bbp_get_query_template( 'topic_tag_edit', $templates ); 813 767 } 814 768 … … 820 774 * @uses apply_filters() 821 775 * @uses bbp_set_theme_compat_templates() 822 * @uses bbp_locate_template() 823 * 824 * @return type 776 * @uses bbp_get_query_template() 777 * @return string Path to template file 825 778 */ 826 779 function bbp_get_theme_compat_templates() { … … 834 787 ); 835 788 836 $templates = apply_filters( 'bbp_get_theme_compat_templates', $templates ); 837 $templates = bbp_set_theme_compat_templates( $templates ); 838 839 $template = bbp_locate_template( $templates, false, false ); 840 $template = bbp_set_theme_compat_template( $template ); 841 842 return $template; 789 return bbp_get_query_template( 'bbpress', $templates ); 843 790 } 844 791 … … 1087 1034 * correct results. 1088 1035 * 1089 * We default to using page.php, since it's most likely to exist and1036 * Use bbp_get_theme_compat_templates() to provide a fall-back that 1090 1037 * should be coded to work without superfluous elements and logic, like 1091 1038 * prev/next navigation, comments, date/time, etc... You can hook into
Note: See TracChangeset
for help on using the changeset viewer.