Hallo zusammen!
Ich versuche gerade, für Wordpress-Artikel eine Funktion zu basteln, die wenn ein benutzerdefiniertes Feld einen Wert enthält, einen Hinweistext ausgibt, das der Artikel geändert wurde. enthält das Feld keinen Wert, soll entsprechend ein anderer Text ausgegeben werden.
Der Text, der bei einer Änderung ausgegeben werden soll hat Variablen aus einer Abfrage, die das Änderungsdatum anzeigt.
Nur leider bekomme ich es absolut nicht hin.
Denn er zeigt auch Artikel an, die zwar geändert bzw. aktualisiert wurden, die aber das benutzerdefinierte Feld nicht besitzen.
Ich habe schon verschiedene Varianten mit XOR, OR oder || ausprobiert, leider ohne Erfolg. Auch mit der Variante
Woran liegt es, das trotz des fehlenden Feldes - und somit des fehlenden Wertes was ausgegeben wird?
Ich versuche gerade, für Wordpress-Artikel eine Funktion zu basteln, die wenn ein benutzerdefiniertes Feld einen Wert enthält, einen Hinweistext ausgibt, das der Artikel geändert wurde. enthält das Feld keinen Wert, soll entsprechend ein anderer Text ausgegeben werden.
Der Text, der bei einer Änderung ausgegeben werden soll hat Variablen aus einer Abfrage, die das Änderungsdatum anzeigt.
PHP-Code:
function updated_article() {
global $wpdb;
$Aenderungsdatum = get_post_meta($post->ID, 'Ãnderungsdatum', true);
$upd_query = "SELECT post_date, post_status, post_type, post_modified, DATE_FORMAT(post_modified, '%d.%m.%Y, um %H:%i:%s') AS post_modified_ger, post_title AS posttitle, post_name AS postname, guid AS postid FROM $wpdb->posts
WHERE post_status = 'publish'
AND post_type= 'post'
AND post_modified >= post_date + INTERVAL 5 DAY
AND post_modified >= CURDATE() - INTERVAL 2 MONTH
ORDER BY post_modified DESC
LIMIT 3";
$upd_result = $wpdb->get_results($upd_query);
if ( empty($upd_result) or( $Aenderungsdatum != "")) {
echo '<small>... keine aktualisierten Artikel</small>';
}
else
{
foreach ($upd_result as $updat) :
$post_modified_ger = $updat->post_modified_ger;
$posttitle = $updat->posttitle;
$postname = $updat->postname;
$postid = $updat->postid;
echo '<ol>';
echo '<li style="list-style-type:none"><div class="akt-titel"><a href="'.$updat->postname.'" title="'.$updat->posttitle.'">'.$updat->posttitle.'</a></div><h6 class="aktualisiert1">Aktualisiert am: '.$updat->post_modified_ger.'</h6></li>';
echo '</ol>';
endforeach;
}
}
Denn er zeigt auch Artikel an, die zwar geändert bzw. aktualisiert wurden, die aber das benutzerdefinierte Feld nicht besitzen.
Ich habe schon verschiedene Varianten mit XOR, OR oder || ausprobiert, leider ohne Erfolg. Auch mit der Variante
PHP-Code:
if ($Aenderungsdatum != "")
Kommentar