मेरे पास दो कस्टम पोस्ट प्रकार (जैसे post_type_1 और post_type_2) हैं जो मैं अपने प्रदर्शन को संभालने के लिए स्वतंत्र टेम्प्लेट (एकल- post_type_1.php और सिंगल-पोस्ट_type_2.php) पर पुनर्निर्देशित करना चाहूंगा। मैं थीम फ़ोल्डर में डिस्प्ले टेम्प्लेट नहीं रखना चाहता क्योंकि मैं उन्हें अपने संबंधित प्लगइन फ़ोल्डर में आत्म-निहित चाहता हूं।
मैं उनमें से प्रत्येक को दूसरे को प्रभावित किए बिना एक template_redirect हुक कैसे पंजीकृत कर सकता हूं? या मुझे एक अलग तकनीक का उपयोग करना चाहिए?
वर्तमान में, मैं प्लगइन 1 में यह कर रहा हूं:
add_action( 'template_redirect', 'template_redirect_1' );
function template_redirect_1() {
global $wp_query;
global $wp;
if ( $wp_query->query_vars['post_type'] === 'post_type_1' ) {
if ( have_posts() )
{
include( PATH_TO_PLUGIN_1 . '/views/single-post_type_1.php' );
die();
}
else
{
$wp_query->is_404 = true;
}
}
}
और यह प्लगइन 2 में:
add_action( 'template_redirect', 'template_redirect_2' );
function template_redirect_2() {
global $wp_query;
global $wp;
if ( $wp_query->query_vars['post_type'] === 'post_type_2' ) {
if ( have_posts() )
{
include( PATH_TO_PLUGIN_2 . '/views/single-post_type_2.php' );
die();
}
else
{
$wp_query->is_404 = true;
}
}
}
एक बार जब मैं प्लगइन 2 के टेम्पलेट_रेड्री हुक को पंजीकृत करता हूं, तो प्लगइन 1 अब काम नहीं करता है।
क्या मैं कुछ भूल रहा हूँ?
इसे करने का बेहतरीन तरीका क्या है?