मैंने अभी ४.२ से ०.४ तक अपग्रेड किया है और अब मेरी टैक्सोनॉमी क्वेरी खाली लौटती है। यह उन्नयन से पहले ठीक काम कर रहा है।
मैंने एक कस्टम टैक्सोनॉमी पंजीकृत की है 'title'
, जिसका उपयोग मेरे कस्टम पोस्ट प्रकार द्वारा किया जाता है 'sg-publications'
। WP टेम्प्लेट पदानुक्रम के बाद मैंने एक टेम्प्लेट बनाया, taxonomy-title.php
जो डिफ़ॉल्ट क्वेरी आर्ग का उपयोग करता है, और अब तक प्रत्येक प्रकाशन को शीर्षक के साथ सही ढंग से दिखाया गया है।
यहाँ उस टेम्पलेट में $ queried_object और $ wp_query-> अनुरोध का आउटपुट दिया गया है:
[queried_object] => WP_Term Object
(
[term_id] => 1256
[name] => Stroupe Scoop
[slug] => stroupe-scoop
[term_group] => 0
[term_taxonomy_id] => 1374
[taxonomy] => title
[description] =>
[parent] => 0
[count] => 30
[filter] => raw
)
[queried_object_id] => 1256
[request] =>
SELECT wp_posts.*
FROM wp_posts
INNER JOIN wp_term_relationships
ON (wp_posts.ID = wp_term_relationships.object_id)
WHERE 1=1
AND wp_posts.post_title = 'stroupe-scoop'
AND (
wp_term_relationships.term_taxonomy_id
IN (1374)
)
AND wp_posts.post_type = 'sg-publications'
AND (wp_posts.post_status = 'publish'
OR wp_posts.post_status = 'private'
)
GROUP BY wp_posts.ID
ORDER BY wp_posts.post_date
DESC
उपरोक्त क्वेरी में मुझे जो समस्या दिखाई दे रही है, वह सही है WHERE 1=1
, किसी कारण से इसे खोज रही है post_title = 'stroupe-scoop'
। यह सही नहीं है - यह टैक्सोनॉमी शब्द स्लग है, पोस्ट का शीर्षक नहीं है। वास्तव में, जब मैं उस लाइन पर टिप्पणी करता हूं और इसे डेटाबेस के खिलाफ चलाता हूं तो मुझे उचित रिटर्न मिलता है। तो क्या WP उस स्थिति को जोड़ने का कारण बन रहा है, जब (मुझे लगता है) यह 4.4 में अपग्रेड होने से पहले इसे नहीं जोड़ रहा था?
यहाँ वर्गीकरण-शीर्षक है। एफपी:
<?php
/**
* @package WordPress
* @subpackage Chocolate
*/
global $wp_query;
$quer_object = get_queried_object();
$tax_desc = $quer_object->description;
$tax_name = $quer_object->name;
$tax_slug = $quer_object->slug;
get_header();
get_sidebar();
$title = get_the_title( $ID );
$args = array(
'menu' => 'new-publications',
'container' => 'div',
'container_id' => $tax_slug . '-menu',
'menu_class' => 'menu-top-style nav nav-tab',
'menu_id' => '',
'echo' => true,
'fallback_cb' => false,
'before' => '',
'after' => '',
'link_before' => '<i class="fa fa-chevron-circle-right fa-fw fa-2x"></i>',
'link_after' => '',
'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s</ul>',
'depth' => 0,
'walker' => ''
);
?>
<div id="page-title">
<h1><?php _e( 'Publications - ' . $tax_name, LANGUAGE_ZONE ); ?></h1>
<p><?php _e( 'View our monthly newsletter and stay informed on the latest real estate news.', LANGUAGE_ZONE ); ?></p>
<?php wp_nav_menu($args); ?>
</div>
<div id="multicol">
<?php
if ( have_posts() ) : while ( have_posts() ) : the_post();
get_template_part( 'loop' , 'title' );
endwhile;
endif;
?>
</div><!-- end #multicol -->
<section class="page-text well"><?php _e( $tax_desc, LANGUAGE_ZONE ); ?></section>
<?php
get_footer();
और function.php में मेरे पास यह क्वेरी फ़िल्टर है:
// use pre_get_posts to remove pagination from publications
function gd_publications_pagination( $query ) {
if ( is_admin() || ! $query->is_main_query() )
return;
if ( is_tax('title') ) {
// Display all posts for the taxonomy called 'title'
$query->set( 'posts_per_page', -1 );
return;
}
}
add_action( 'pre_get_posts', 'gd_publications_pagination', 1 );
taxonomy-title.php
? क्या आपने functions.php
मुख्य क्वेरी पर कोई फ़िल्टर हैं या नहीं यह जांचने के लिए थीम को देखा ?