Skriptsprachen (PHP, Javascript, etc.) - Forum

Derzeit sind Sie als Gast in unserem Forum aktiv. Für das Schreiben registrieren Sie sich bitte. Unser Forum ist eine Austauschplattform für Webworker zum Kommunizieren, Helfen, Informieren und Hilfe finden. Auf der rechten Seiten finden Sie eine Forenübersicht über alle Bereiche des Webmaster-Forums. Unterhalb finden Sie alle aktuellen Themen.

Diskutieren Sie hier über die serverseitige Skriptsprachen PHP und Python und über dynamische Webseitenerstellung mit Javascript und Ajax.


meggs
Beiträge: 2070

PN schreiben
Profil ansehen
User ist offline

PHP innerhalb von PHP, qTranslate und Meta-Box (Wordpress)

Link zur Antwort auf "PHP innerhalb von PHP, qTranslate und Meta-Box (Wordpress)" von meggs meggs, am Samstag den 30.01.2016 um 10:37:32

Hallo,

für eine Website auf Wordpress benutze ich um Daten anzugeben das bekannte Plugin Meta-Box und um die Website sowohl in DE als auch in EN anzubieten das bekannte qTranslate.

Deutsche und englische Datumsformate sind ja verschieden: dd.mm.y (31.12.16) deutsch, mm/dd/y (12/31/16) englisch. Deshalb muss ich diese beiden Plugins irgendwie zusammenbringen.

So wird das einfache Datum ausgegeben (als Nur-Deutsch-Website):

 
PHP
1
<?php echo rwmb_meta( 'exhibition_meta_beginn' ); ?>

Wird auf der Website – außerhalb der 'Post'- oder 'Page'-Inhalte – übersetzter Text (also der je nach Sprache bzw. Klick auf den Language-Switch wechseln soll) angezeigt (z.B. Navigationselemente), geschieht das so:

 
PHP
1
<?php _e("[:en]Current[:de]Aktuell[:]"); ?>

Meine Frage ist nun, wie ich das zusammenbringen könnte. Ich wäre bereit, das exhibition_meta_beginn in exhibition_meta_beginn_DE und exhibition_meta_beginn_EN aufzusplitten, was bei jedem neuen angelegten Post bedeuten würde, dass ich jedes Datum zweimal, auf DE und auf EN, angeben müsste, falls es nicht anders geht.

Es scheint weder eine Anleitung von Meta-Box dafür zu geben, auch wenn es ab und an erwähnt wird, noch irgendwo sonst eine brauchbare oder funktionierende Lösung zu finden zu sein.

Die Eingabefelder für die Meta-Angaben (die im ersten Code oben ausgegeben werden), werden in einem separaten PHP File definiert:

 
PHP
1
2
3
4
5
6
array(
            'name'      => 'Beginn der Ausstellung',
            'id'        => $prefix . 'beginn',
            'type'      => 'date',
            'format'    => 'dd.mm.y'
        ),

Es hat weder funktioniert, in diesem 'format' Wert gleich die Zweisprachigkeit festzulegen, noch so etwas (aber ich hab da keine Ahnung von, nur meine 'Versuche'):

 
PHP
1
<?php __("[:en] echo rwmb_meta( 'exhibition_meta_beginn_EN' )[:de]echo rwmb_meta( 'exhibition_meta_beginn_DE' )[:]"); ?>

meggs
Beiträge: 2070

PN schreiben
Profil ansehen
User ist offline
Link zur Antwort auf "PHP innerhalb von PHP, qTranslate und Meta-Box (Wordpress)" von meggs meggs, am Sonntag den 31.01.2016 um 13:16:48

Ich bin der Lösung irgendwie näher gekommen, nur funktioniert dieser Code aus irgendwelchen Gründen nicht:

 
PHP
1
2
3
4
5
6
7
<?php 

$entered_start = rwmb_meta( "exhibition_meta_beginn" );

_e("[:en]".date_i18n("F m/d/y",strtotime($entered_start))."[:de]".date_i18n("F d.m.y",strtotime($entered_start))."[:]");

?>

date_i18n gibt nicht das eingegebene Datum von $entered_start wieder, sondern das jetzige Datum (vom Server?).


David Danier
Beiträge: 1709

PN schreiben
Profil ansehen
User ist offline
Link zur Antwort auf "PHP innerhalb von PHP, qTranslate und Meta-Box (Wordpress)" von David Danier David Danier, am Freitag den 19.02.2016 um 16:24:38

Eine Lösung hab ich leider auch nicht für dich. Allerdings ein Hinweis:

Nach vielen Problemen mit Spam ist das Forum inzwischen Read-only. Bedeutet es können nur noch Moderatoren posten, das schließt dich mit ein. Eine Antwort ist leider jedoch nicht mehr wirklich zu erwarten.


Moritz Kern
Beiträge: 1678

PN schreiben
Profil ansehen
Homepage besuchen
User ist offline
Link zur Antwort auf "PHP innerhalb von PHP, qTranslate und Meta-Box (Wordpress)" von Moritz Kern Moritz Kern, am Mittwoch den 02.03.2016 um 15:16:51

Ich würde auf qTranslate verzichten und stattdessen WPML nutzen ;)

WPML speichert für jede Sprache einen eigenen Post und verknüpft diese...

Nicht so n Spachenmischmasch in einem Post wie bei qTranslate.