Versuch, die Eigenschaft der Nicht-Objekt-WordPress-Fehlermeldung zu erhalten

Ich betreibe die wirklich simple-facebook-twitter-share-Buttons. Ich habe den folgenden Code auf meiner Website platziert, wie das Plug-In empfiehlt:

 

Dieses Plugin funktioniert auf meiner gesamten Site, außer dass ich eine benutzerdefinierte Taxonomieseite habe, die den folgenden Fehler mit dem Plugin verursacht:

Hinweis: Versuch, die Eigenschaft von non-object in /home3/answr/public_html/wp-includes/post-template.php in Zeile 29 zu erhalten

Ich habe Zeile 29 gelesen und hier ist, was ich denke, geschieht.

Meine Taxonomieseite enthält zwei benutzerdefinierte Hauptabfragen und zwei WordPress-Schleifen. Diese Abfragen ändern die WordPress-Hauptabfrage für die Seite.

Es scheint, wenn die erste Abfrage keine Ergebnisse zurückgibt, dann verursacht es den obigen Fehler, wenn das Plugin aktiv ist.

Wenn die erste Abfrage jedoch Ergebnisse zurückgibt, gibt es keinen Fehler und das Plugin funktioniert auch dann einwandfrei, wenn die zweite Abfrage Ergebnisse zurückgibt.

Und wenn das Plugin nicht aktiv ist, bekomme ich keinen Fehler, ob die erste Abfrage Ergebnisse liefert oder nicht.

Hier ist mein Code als Referenz. Ich habe versucht, das für einige Zeit zu lösen, und ich habe keine Ideen mehr. Hat jemand Ideen, was diese Probleme verursachen könnte oder was ich versuchen sollte, es zu lösen? Vielen Dank!

    ID, 'wpcf-street_address', TRUE); $city=get_post_meta($post->ID, 'wpcf-city', TRUE); $state=get_post_meta($post->ID, 'wpcf-state_abbreviation', TRUE); $zip=get_post_meta($post->ID, 'wpcf-zip_code', TRUE); $phone=get_post_meta($post->ID, 'wpcf-phone_number', TRUE); $paid=get_post_meta($post->ID, 'wpcf-paid', TRUE); $post_id=get_the_ID(); get_each_dealer_brand($post_id);?> <?php echo "
    "; if($paid==1) { echo "
  • ";the_title();echo "

  • "; echo "
  • $address | $city, $state $zip

  • "; echo "
  • P: $phone

  • "; echo "
  • $brands_list

  • "; } echo "
"; ?> ID, 'wpcf-street_address', TRUE); $city=get_post_meta($post->ID, 'wpcf-city', TRUE); $state=get_post_meta($post->ID, 'wpcf-state_abbreviation', TRUE); $zip=get_post_meta($post->ID, 'wpcf-zip_code', TRUE); $phone=get_post_meta($post->ID, 'wpcf-phone_number', TRUE); $paid=get_post_meta($post->ID, 'wpcf-paid', TRUE); $post_id=get_the_ID(); get_each_dealer_brand($post_id); ?> <?php echo "
    "; if($paid==0){ echo "
  • ";the_title();echo "

  • "; echo "
  • $address | $city, $state $zip

  • "; echo "
  • P: $phone

  • "; echo "
  • $brands_list

  • "; } echo "
"; ?> <?php /*If there were no paid dealer and no non-paid dealers we must show a 404 error*/ if ($paidnull=="true") { echo "

There Are No Dealers Found for your Search

"; echo "

Use the search below to search a different area

"; echo "
"; }?>

Solutions Collecting From Web of "Versuch, die Eigenschaft der Nicht-Objekt-WordPress-Fehlermeldung zu erhalten"

Da die Seite funktioniert, wenn Sie die ursprüngliche Abfrage in Ruhe lassen, ist Ihre Lösung ziemlich einfach. Lassen Sie die ursprüngliche Abfrage in Ruhe. Sie müssen diese Abfrage nicht überschreiben, um sekundäre Schleifen zu erstellen. An Stelle von:

 query_single('dealers', 'publish', '1', $taxtype, $value); if (have_posts()) : while (have_posts()) : the_post(); 

Sie wollen:

 $myq = new WP_Query($args); if ($myq->have_posts()) : while ($myq->have_posts()) : $myq->the_post(); 

Sie können das so oft wie Sie wollen auf der Seite tun und nicht die Hauptfrage überlisten. Der Haken ist, dass ich nicht weiß, was single_query ist und daher weiß ich nicht genau, wie $args aussehen soll. Angesichts der Art, wie der Code funktioniert, vermute ich, dass single_query query_posts , von dem dringend abgeraten wird. Es könnte ebenso einfach ein neues WP_Query Objekt zurückgeben, das Sie verwenden können, wenn Sie es optimiert haben.

Referenz

http://codex.wordpress.org/Class_Reference/WP_Query