Ich versuche, einen benutzerdefinierten RSS-Feed zu erstellen, der Informationen aus einer benutzerdefinierten Tabelle auflistet und anzeigt, die ich an anderer Stelle meiner WP-Site verwendet habe. Der Tisch und alles funktioniert gut.
Auch wenn ich versuche, eine einfache RSS-Vorlage zu verwenden (die eingerichtet und durchsucht werden kann):
<?php /* Template Name: Custom RSS Template - beforeAfters */ header('Content-Type: '.feed_content_type('rss-http').'; charset='.get_option('blog_charset'), true); echo ''; ?> get_row('SELECT * FROM wp_before_after WHERE `gallery_display` = 1'); foreach($beforeAfter as $imageSet) { ?> ID); ?>
Ich bekomme diesen Fehler:
Diese Seite enthält die folgenden Fehler: Fehler in Zeile 11 in Spalte 51: Entität ‘Handel’ nicht definiert. Unten ist ein Rendering der Seite bis zum ersten Fehler dargestellt.
Eine leere Seite wird angezeigt (weil nichts gerendert wird). Wenn ich jedoch die Zeile $beforeAfter
, in der $beforeAfter
gesetzt ist, verschwindet der Fehler und ich beginne die Ausgabe des RSS-Feeds in einem Browser zu sehen (obwohl es Fehler anzeigt, dass die foreach
Zeile ungültig ist …).
Aber meine Frage ist, warum ist der $wpdb
Aufruf, der die Fehlermeldung verursacht, und wie bekomme ich die Variable, um die databasezeile zu arbeiten, damit ich die Variablen innerhalb der RSS Vorlage verwenden kann?
** DUMP von $ beforeAfter **
C:\wamp64\www\bellavou\wp-content\themes\bellavou\rss-beforeAfters.php:17: object ( stdClass )[ 4196 ] public 'id' => string '1' (length=1) public 'created' => null public 'before_date' => null public 'after_date' => null public 'patientID' => string '2137' (length=4) public 'procedureID' => string '238' (length=3) public 'patient_display' => string '1' (length=1) public 'procedure_display' => string '1' (length=1) public 'gallery_display' => string '1' (length=1) public 'before_img' => string 'face-lift_1_b.jpg' (length=17) public 'after_img' => string 'face-lift_1_a.jpg' (length=17) public 'period_taken' => string '1week' (length=5) public 'notes' => string '' (length=0)Solutions Collecting From Web of "WPDB kann nicht innerhalb der RSS-Vorlage aufgerufen werden"
- $ wpdb Abfrage Ergebnis kommt nicht, aber in phpmyadmin funktioniert es
- Wordpress einfügen NOW () in TIMESTAMP Spalte gibt alle Nullen zurück
- Was ist die Verwendung von $ wpdb -> $ table?
- Bekommen Sie alle klebrigen Beiträge von einem Benutzer über die Benutzer-ID
- $ wpdb-> get_results (...) gibt trotz korrekter Abfrage ein leeres Array zurück
- Benutzerdefinierte SQL-Abfrage ORDER BY term_order
- Konvertieren der Zeichenfolge_content in ein Array?
- Echo gibt mir nur den ersten Teil der Saite
Nach der Erörterung haben wir festgestellt, dass das Problem nicht direkt beim Aufruf von $ wpdb-> get_row liegt, sondern eine Diskrepanz zwischen den Daten, die es zurückgibt, und der Verarbeitung in der foreach-Schleife ist.
Für eine einzelne Datenzeile ersetzen Sie …
foreach($beforeAfter as $imageSet) { ?>
- < ?php }
< ?php echo get_the_title($imageSet->ID); ?> ... mit ...
< ?php echo get_the_title($imageSet->ID); ?> ... stoppt den Vorschuberrors.
Oder für mehrere Zeilen könnten Sie Ihre Abfrage anpassen.