Wie integriere ich get_post_time in die Funktion date_i18n?

7

Ich habe ein Datumsformat und möchte in eine andere Sprache mit date_i18nFunktion übersetzen. Wie kann ich mich in get_post_time integrieren? Hier ist mein Code:

$time = get_post_time('F j, Y', true,$newspost['ID']);
Decneo
quelle

Antworten:

9

Verwenden Sie den vierten Parameter für get_post_time():

$time = get_post_time(
    'F j, Y',      // format
    TRUE,          // GMT
    get_the_ID(),  // Post ID
    TRUE           // translate, use date_i18n()
);

get_post_time()ruft mysql2date()intern auf und leitet das $translateArgument weiter. In mysql2date()finden wir dies:

if ( $translate )
    return date_i18n( $format, $i );

Alles was Sie brauchen ist eine einzige TRUE.

Versuchen Sie für einen Test Folgendes:

add_filter( 'the_content', 'wpse_100266_i18n_time' );

/**
 * Prepend the post content with translated post time.
 *
 * @wp-hook the_content
 * @param   string $content
 * @return  string
 */
function wpse_100266_i18n_time( $content )
{
    $time = get_post_time(
        'F j, Y',      // format
        TRUE,          // GMT
        get_the_ID(),  // Post ID
        TRUE           // translate, use date_i18n()
    );

    return "<p>$time</p>$content";
}

Installieren Sie dann mindestens eine andere Sprache und das Plugin WCM User Language Switcher . Wenn wir uns das Frontend ansehen, erhalten wir unterschiedliche Monatsnamen, wenn wir jetzt die Sprache wechseln.

get_post_modified_time() arbeitet mit den gleichen Argumenten.

Fuxia
quelle
Hallo, es funktioniert gut .. "$ time = get_post_time ('j M Y', wahr, $ Zeitungen-> ID, wahr);" Vielen Dank 5 Sterne
Decneo